微服务架构应该如何做技术选型

微服务应该如何选择如下方面:

  1. 开发语言

  2. 开发框架

  3. 通讯协议

  4. 服务器(Linux /windows/Docker等)

阅读 4.7k
1 个回答

经过查询资料,我得出如下结论:

1. 开发语言:

对于开发语言,一般没有什么限制,只要能够统一交互协议即可

2. 开发框架:

开发框架需要根据所选择的通信方式来选择,如rest,则只要是使用http的restful风格即可

3. 通讯协议:

建议整个微服务集群中,都使用统一的通讯协议,详细可以参考文章:微服务指南走北(二):微服务架构的进程间通信(IPC)

4. 服务器(Linux /windows/Docker等)

服务器的选择,可以根据实际需要,不过对于是否容器化,倒是有不同的方案

  • 容器化方案
    一般使用docker,有些结合kubernetes使用,如果使用原生的docker,则还需要实现服务发现;而使用kubernetes,则对于绝大部分的无状态服务,可以借助kubernetes对无状态服务的支持(负载均衡及服务发现)

  • 非容器化方案
    一般使用linux比较居多,此种方案其实跟单体应用部署应该相差无几,但是由于各个服务是相互独立的,仍然需要实现服务发现。

推荐问题
宣传栏