服务间通信RPC的详细介绍

不言
Freigeben: 2023-04-04 15:52:01
nach vorne
3862 Leute haben es durchsucht

本篇文章给大家带来的内容是关于服务间通信RPC的详细介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

现微服务盛行,服务之间通信大概就两种方式Api和Rpc。

下面两个列子来让你了解Api和Rpc的区别。

列子一 文章的增删改查。

Api 实现:

Router::get('/article/{id}','ArticleController@get'); Router::post('/article','ArticleController@create'); Router::put('/article/{id}','ArticleController@edit'); Router::delete('/article/{id}','ArticleController@delete');
Nach dem Login kopieren

然后在控制器Article调用模型

return Article::find($id)->toArray();
Nach dem Login kopieren

Rpc 实现

RpcServer::add('Article');
Nach dem Login kopieren

没错就一行代码

列子二 计算器

假如机器A上面一个计算器 Counter,以Rpc的方式提供给其他机器使用.

计算器Counter代码

class Counter { private $i = 0; public function __construct($i = 0) { $this->i = $i; } // 加法 public function add($v) { $this->i += $v; return $this; } // 减法 public function sub($v) { $this->i -= $v; return $this; } // 乘法 public function mul($v) { $this->i *= $v; return $this; } // 除法 public function p($v) { $this->i /= $v; return $this; } // 获取结果 public function get() { return $this->i; } }
Nach dem Login kopieren

Rpc 实现

RpcServer::add('Counter');
Nach dem Login kopieren

Rpc客户端调用

$c = new ClientCounter(10); echo $c->add(3)->mul(2)->sub(10)->p(5)->get();
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt von服务间通信RPC的详细介绍. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!