简单几步,教你部署一个可扩展微服务系统!
當你構建一個微服務時,你最看重什么?一個完全管理和可擴展的系統(tǒng)?因為托管代碼的選擇有很多,例如EC2,ECS,Elastic Beanstalk,Lambda,所以很多人不知道該如何下手。雖然每個人部署微服務模式都有自己的方式,但是下面這個模式為可擴展微服務架構提供了很好的結構。
Elastic Beanstalk
首先第一個,也是很重要的一部分是Elastic Beanstalk。這是部署自動擴展微服務的好方法,你只需通過命令行工具或管理控制臺將代碼上傳到Elastic Beanstalk即可。一旦進入到Elastic Beanstalk中,部署,容量調配,負載平衡,自動擴展就由AWS處理。
S3
S3也是很重要的一個服務,它是一個用于存儲和檢索數(shù)據(jù)的對象存儲器。S3有很多用途,例如存儲圖像、備份。特殊用例是存儲敏感文件,如私鑰,環(huán)境變量文件,這些文件將被多個實例或服務訪問和使用。最后,將S3用于較不敏感的公共訪問文件,如配置文件,Dockerfiles和鏡像。
Kinesis
Kinesis是一個允許微服務彼此溝通的工具,也可以用于類似Lambda這樣的項目進行溝通。Kinesis通過實時持久的數(shù)據(jù)流來使微服務發(fā)送事件。在持久性和批處理時,數(shù)據(jù)可以持續(xù)長達7天。
RDS
Amazon RDS是一個由AWS完全托管的、優(yōu)秀的關系數(shù)據(jù)庫。在你自己的數(shù)據(jù)庫服務器上使用RDS是有益的,因為AWS會管理一切,設置、操作和擴展關系數(shù)據(jù)庫都會變得非常容易。
LAMBDA
最后,AWS Lambda允許你在不調配或管理服務器的情況下運行代碼。Lambda有很多用途,你甚至可以用它來創(chuàng)建整個API。它在微服務架構中的重要用途是cron jobs和image manipulation。Crons可以使用CloudWatch預定。
結論
這些AWS產(chǎn)品可以創(chuàng)建fully scalable, stateless和相互可通信的微服務。使用Elastic Beanstalk運行微服務,使用S3來存儲文件,使用Kinesis來發(fā)送事件,使用Lambda來訂閱它們并運行其他任務。最后,RDS用于輕松管理和擴展關系數(shù)據(jù)庫。
總結
以上是生活随笔為你收集整理的简单几步,教你部署一个可扩展微服务系统!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Eclipse 运行程序
- 下一篇: Cannot find module '