为了实现基于微服务开发的产品,或者说为了将单体应用重构为微服务架构时,将面临着众多技术框架的选择。大公司往往会有专门的部门或团队来负责自主研发自己的框架,以满足产品的需要。但是对于一般的中小型企业,选择合适的开源框架就显得更接地气了。因此在企业进行技术选型时应根据不同的环境以及需求进行相应的选型,应当遵循的原则有以下三点。
(一)保持技术⾯的⼴度和深度
在进行微服务技术选型的过程当中,应当选取具有强大社区支撑的技术,从而保证技术⾯的⼴度和深度。如GitHub上star的数量是一个重要指标,同时参考近年来代码、文档、issues 等更新频率,各大技术博客是否有相关技术分享记录,这些都是能够说明该技术是否活跃、受欢迎程度、使用人群多少等。此类拥有强大社区支持的技术在选型后,倘若使用出现疑问,能够有地方可修复深究探讨,从而方便微服务技术的后续支持与修复。
(二)把握和分析技术选型的优缺点
把握和分析微服务技术选型的过程当中,应当做到各类技术优缺点了然于心,尽量多选择最为熟悉,使用频率相对较高的技术。对于完全不知道、不了解的技术,对企业以及技术开发者而言是无法预估、掌控的。在使用过程中会出现的任何风险,一旦出现问题,短时间内解决不了将会造成严重影响。
(三)紧密结合项⽬和团队的情况
不同业务、不同项目规模,对技术的要求指标都是不同的,因此应当根据项目具体情况进行相应的微服务技术选型。处于初创期的业务,选型的基准是相对灵活,因其业务相对简单,支撑业务只需够用、开发效率足够高就好。