python微服務框架nameko入門案例

2021-10-10 05:02:21 字數 1746 閱讀 3387

1.安裝註冊中心

nameko採用rabbitmq作為註冊中心,所以使用nameko必須要先安裝rabbitmq

以docker容器的方式執行rabbitmq是最為簡便快捷的方式,兩行命令就搞定了,這裡介紹如何使用docker執行rabbitmq。

第一步:從dockerhub拉取rabbitmq映象

docker pull rabbitmq:management
第二部:執行rabbitmq容器

docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5672:5672 rabbitmq:management
如果需要設定使用者名稱和密碼,則使用這條命令

docker run -d --hostname my-rabbit --name rabbit -e rabbitmq_default_user=user -e rabbitmq_default_pass=password -p 15672:15672 -p 5672:5672 rabbitmq:management
如果不設定直接用 使用者名稱guest,密碼guest登入。 http://localhost:15672/

登入成功介面

2.生產者和消費者

hello_service.py發布服務,服務名稱為「hello_service」

from nameko.rpc import rpc

class

hello_service

: name =

"hello_service"

@rpc

defhello

(self)

:print

("hello world"

)

service.py呼叫服務

from nameko.standalone.rpc import clusterrpcproxy

config =

defcompute()

:with clusterrpcproxy(config)

as rpc:

rpc.hello_service.hello(

)if __name__ ==

'__main__'

: compute(

)

3.啟動微服務

使用nameko框架的run命令啟動微服務

nameko run hello_service --broker amqp:/

/guest:[email protected]

如果現實資訊如下則表示服務成功啟動

執行service.py呼叫服務後在命令列列印出「hello world」,服務被成功呼叫

SpringCloud微服務框架

因為springcloud出現,對微服務技術提供了非常大的幫助,因為springcloud 提供了一套完整的微服務解決方案,不像其他框架只是解決了微服務中某個問題.springcloud是基於springboot基礎之上開發的微服務框架,springcloud是一套目前非常完整的微服務解決方案框架,...

微服務框架dubbo

下面是dubbo框架的架構圖 首先解釋微服務架構中各個元件分別對應到上面這張圖中是如何實現。服務發布與引用 對應實現是圖里的 proxy 服務 層,proxy 根據客戶端和服務端的xml配置檔案中的 介面描述,生成介面對應的客戶端和服務端的 stub 存根 使得客戶端呼叫服務端就像本地調 用一樣。服...

搭建微服務框架

jar包 org.springframework.boot spring boot starter parent 2.3.2.release org.springframework.cloud spring cloud dependencies hoxton.sr8 pomimport com.al...