经过查询资料,我得出如下结论: 1. 开发语言: 对于开发语言,一般没有什么限制,只要能够统一交互协议即可 2. 开发框架: 开发框架需要根据所选择的通信方式来选择,如rest,则只要是使用http的restful风格即可 3. 通讯协议: 建议整个微服务集群中,都使用统一的通讯协议,详细可以参考文章:微服务指南走北(二):微服务架构的进程间通信(IPC) 4. 服务器(Linux /windows/Docker等) 服务器的选择,可以根据实际需要,不过对于是否容器化,倒是有不同的方案 容器化方案 一般使用docker,有些结合kubernetes使用,如果使用原生的docker,则还需要实现服务发现;而使用kubernetes,则对于绝大部分的无状态服务,可以借助kubernetes对无状态服务的支持(负载均衡及服务发现) 非容器化方案一般使用linux比较居多,此种方案其实跟单体应用部署应该相差无几,但是由于各个服务是相互独立的,仍然需要实现服务发现。
经过查询资料,我得出如下结论:
1. 开发语言:
对于开发语言,一般没有什么限制,只要能够统一交互协议即可
2. 开发框架:
开发框架需要根据所选择的通信方式来选择,如rest,则只要是使用http的restful风格即可
3. 通讯协议:
建议整个微服务集群中,都使用统一的通讯协议,详细可以参考文章:微服务指南走北(二):微服务架构的进程间通信(IPC)
4. 服务器(Linux /windows/Docker等)
服务器的选择,可以根据实际需要,不过对于是否容器化,倒是有不同的方案
容器化方案
一般使用docker,有些结合kubernetes使用,如果使用原生的docker,则还需要实现服务发现;而使用kubernetes,则对于绝大部分的无状态服务,可以借助kubernetes对无状态服务的支持(负载均衡及服务发现)
非容器化方案
一般使用linux比较居多,此种方案其实跟单体应用部署应该相差无几,但是由于各个服务是相互独立的,仍然需要实现服务发现。