一个微服务并不仅包括代码,还包括许多组成部分。
1)编译后的或者未编译的应用代码;
2)应用类库;
3)安装到操作系统中的二进制依赖项
4)辅助进程,如logging或cron;
5)外部依赖,如数据存储、负载均衡器或其他服务。
理想的微服务部署工件允许开发者打包特定版本的已编译代码,指定任何二进制依赖项,并为启动和停止该服务提供标准的操作抽象概念。这应该是与环境无关的:开发者应该能够在本地、测试和生产中运行相同的工件。通过将不同语言在运行时的差异抽取出来,开发者可以降低认知负担,并为管理这些服务提供通用的抽象概念。
摘取自 摩根·布鲁斯和保罗·A.佩雷拉的《微服务实战》
网友评论