摘要:現(xiàn)微服務(wù)盛行,服務(wù)之間通信大概就兩種方式和。下面兩個(gè)列子來(lái)讓你了解和的區(qū)別。列子一文章的增刪改查。
現(xiàn)微服務(wù)盛行,服務(wù)之間通信大概就兩種方式Api和Rpc。
下面兩個(gè)列子來(lái)讓你了解Api和Rpc的區(qū)別。
Router::get("/article/{id}","ArticleController@get"); Router::post("/article","ArticleController@create"); Router::put("/article/{id}","ArticleController@edit"); Router::delete("/article/{id}","ArticleController@delete");
然后在控制器Article調(diào)用模型
return Article::find($id)->toArray();Rpc 實(shí)現(xiàn)
RpcServer::add("Article");
沒錯(cuò)就一行代碼
列子二 計(jì)算器假如機(jī)器A上面一個(gè)計(jì)算器 Counter,以Rpc的方式提供給其他機(jī)器使用.
計(jì)算器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 div($v) { $this->i /= $v; return $this; } // 獲取結(jié)果 public function get() { return $this->i; } }Rpc 實(shí)現(xiàn)
RpcServer::add("Counter");
Rpc客戶端調(diào)用
$c = new ClientCounter(10); echo $c->add(3)->mul(2)->sub(10)->div(5)->get();Api 實(shí)現(xiàn):
你覺得 Api 應(yīng)該怎么實(shí)現(xiàn)?
以上代碼是我在設(shè)計(jì) one框架的一些思考?
如你喜歡請(qǐng)star https://github.com/lizhichao/one
如其他觀點(diǎn),歡迎留言討論。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/29830.html
摘要:服務(wù)提供者在啟動(dòng)時(shí),向注冊(cè)中心注冊(cè)自己提供的服務(wù)。注冊(cè)中心返回服務(wù)提供者地址列表給消費(fèi)者,如果有變更,注冊(cè)中心將基于長(zhǎng)連接推送變更數(shù)據(jù)給消費(fèi)者。 先來(lái)了解一下這些年架構(gòu)的變化,下面的故事是我編的。。。。 傳統(tǒng)架構(gòu):很多年前,剛學(xué)完JavaWeb開發(fā)的我憑借一人之力就開發(fā)了一個(gè)網(wǎng)站,網(wǎng)站 所有的功能和應(yīng)用都集中在一起,方便了我的開發(fā)同時(shí)也節(jié)省了成本。但是后來(lái)我的網(wǎng)站訪問流量突然加大,我通...
摘要:又是金三銀四的時(shí)候,我希望這份面試題能夠祝你一臂之力自我和項(xiàng)目相關(guān)自我介紹你覺得自己的優(yōu)點(diǎn)是你覺得自己有啥缺點(diǎn)你有哪些你為什么要離開上家公司你上家公司在,我們公司在,離這么遠(yuǎn)為什么要選擇我們這里上家公司的同事和領(lǐng)導(dǎo)是怎么評(píng)價(jià)你的介紹下你的上 又是金三銀四的時(shí)候,我希望這份面試題能夠祝你一臂之力! 自我和項(xiàng)目相關(guān) 1、自我介紹 2、你覺得自己的優(yōu)點(diǎn)是?你覺得自己有啥缺點(diǎn)? 3、你有哪些 ...
摘要:我沒有能力去控制那些自媒體發(fā)布這些不實(shí)的內(nèi)容,但是在我了解的范圍內(nèi),還是盡力輸出一些我的理解。 之前我發(fā)過一篇《說說我為什么看好Spring Cloud Alibaba》,然后這兩天有網(wǎng)友給我轉(zhuǎn)了這篇文章《坑爹項(xiàng)目spring-cloud-alibaba,我們也來(lái)一個(gè)》,問我的看法是怎么樣的,聊天時(shí)候簡(jiǎn)單說了一下。今天在家休息,抽空整理一下內(nèi)容,逐點(diǎn)說一下我的看法,主要還是覺得這篇文章...
摘要:原文地址帶入及相關(guān)介紹項(xiàng)目地址作為開篇章,將會(huì)介紹相關(guān)的一些知識(shí)。 原文地址:帶入gRPC:gRPC及相關(guān)介紹 項(xiàng)目地址:go-grpc-example 作為開篇章,將會(huì)介紹 gRPC 相關(guān)的一些知識(shí)。簡(jiǎn)單來(lái)講 gRPC 是一個(gè) 基于 HTTP/2 協(xié)議設(shè)計(jì)的 RPC 框架,它采用了 Protobuf 作為 IDL 你是否有過疑惑,它們都是些什么?本文將會(huì)介紹一些常用的知識(shí)和概念,更詳...
摘要:帶入及相關(guān)介紹原文地址帶入及相關(guān)介紹項(xiàng)目地址作為開篇章,將會(huì)介紹相關(guān)的一些知識(shí)。 帶入gRPC:gRPC及相關(guān)介紹 原文地址:帶入gRPC:gRPC及相關(guān)介紹 項(xiàng)目地址:go-grpc-example 作為開篇章,將會(huì)介紹 gRPC 相關(guān)的一些知識(shí)。簡(jiǎn)單來(lái)講 gRPC 是一個(gè) 基于 HTTP/2 協(xié)議設(shè)計(jì)的 RPC 框架,它采用了 Protobuf 作為 IDL 你是否有過疑惑,它們都...
閱讀 4069·2021-09-06 15:00
閱讀 2237·2019-08-30 15:53
閱讀 3352·2019-08-23 16:44
閱讀 1013·2019-08-23 15:19
閱讀 1468·2019-08-23 12:27
閱讀 4268·2019-08-23 11:30
閱讀 668·2019-08-23 10:33
閱讀 436·2019-08-22 16:05