2017-04-18 53 views
1

我對此很陌生,什麼是實現微服務的最佳方法?如何實現微服務[Node.js]?

我發現FW喜歡seneca但它是有點混亂...

是否有任何嘖嘖如何創建JWT權威性,在微服務的MongoDB和其他工作人員?

回答

1

看看Docker。

隨着docker-compose你可以輕鬆地集成幾種服務,而不用擔心連接它們的IP地址。

此外,如果您將nginx添加到您的堆棧,這將是非常容易擴展這些服務,有幾個視頻和教程,您可以查找,以幫助您開始。

我聽說過seneca,但我沒有用過,我想你不應該依賴於特定的框架,因爲微服務背後的一個想法是低耦合。

+0

謝謝,我也想我可以用'docker'和'docker-compose'解決所有問題......你可以給我發這樣的內容嗎?你是否也聽說過'kubernetes.io'它可以提供什麼幫助? – Vladimir

+0

幫助我理解基礎知識的第一個視頻: https://www.youtube.com/watch?v=HJ9bECmuwKo 然後,我發現這個repo使nginx的東西自動化: https:// github .com/jwilder/nginx-proxy 去基本的東西,就像在第一個視頻,這將給你的路要走。 我沒有使用Kubernates,我知道它是微服務編排的「Google方式」,它看起來像一個專門用於監控的高級工具,但最終您需要爲它付費,無論如何,您可以嘗試一下,看看它們更適合您的需求。 – calbertts

+0

謝謝,在這篇文章中的另一個問題:https://www.airpair.com/scalable-architecture-with-docker-consul-and-nginx我發現他使用領事和領事模板的用途? – Vladimir

0

爲了跳進real微服務世界並不是微不足道的。這不是關於管理一些API,而是一個根本性的架構思維變化,一開始會讓你感到有點不舒服(例如,每個服務都有自己的數據庫):)

迄今爲止我讀過的最好的書關於微服務是由塞內卡本人的作者Richard Rodger編寫的The Tao of Microservices。它很好地揭示了從單一和麪向對象的軟件向微服務的轉變。

由於文檔的平均質量(不一致等等),我個人對Seneca有點掙扎。我寧願推薦Hemera,它從Seneca的消息模式方法中獲得了靈感,但有更好的文檔記錄和更多生產就緒

+0

我嘗試過'Seneca',但我不喜歡寫代碼的方式......在'nginx docker-compose'方法中'Seneca'或'Hemera'有什麼好處? – Vladimir

+0

@Vladimir'nginx'和'docker-compose'是應用程序堆棧的_infrastructure_層。當_business domain_複雜時,「Seneca」或「Hemera」適合_business model_層。例如,它們啓用了[Command Query Responsibility Segregation](https://www.martinfowler.com/bliki/CQRS.html)(CQRS)等模式。 –