课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的企业都引入了微服务架构开发技术,而本文我们就通过案例分析来简单了解一下,小型软件开发公司是否需要微服务。
一:业务发展阶段
业务刚开始探索时期
这个时期重要的目的是加快产品应用上市,验证产品是否匹配市场。这时是一个MVP产品,功能少,适合用单体来快速开发。
高速发展时期
产品验证取得了初步成功,进入业务快速迭代阶段。这个阶段一般也是用单体架构,快速开发功能。
产品稳定时期
业务功能迭代没有那么快,这时可以思考架构的问题,并寻找解决方法。微服务也只是一种比较好的选择。
二:业务复杂度
业务功能多,流程错综复杂,只有少数人能看懂,功能交付变长。这时可以利用改造微服务的机会,来梳理业务流程,理清彼此之间关系。
如果是相对简单业务,那么没必要使用微服务。
三:开发人员
技术熟练度
对微服务技术做了相应的预研,并且做了对应的练习实践,对微服务涉及的技术有一定实践经验。
微服务技术体系本身就是由很多系统组成,技术体系本身就有一定的复杂性。
开发人员质和量
划分微服务后,人员数量是否满足划分后的微服务?还是划分后大家完成需求比较急?
微服务架构涉及到了很多技术系统,对人员技术要求也更高。
四:业务形态
如果你是那种对性能要求很极致的业务,比如金融股票交易系统、游戏里的战斗系统灯光。这种就不适合,因为微服务网络调用相对于单体本地调用的开销肯定更大。
为什么要考虑业务发展阶段呢?
如果是项目刚启动,1点:要快速把项目开发出来,让业务跑起来,给用户使用,看能否对用户产生价值。2点:这时的产品功能不稳定,需求变化快,改动频繁。3点:这时产品功能少,不需要复杂的架构。要防止项目过度设计,影响开发进度。4点:你无法预知未来,什么未来?项目在未来是否会发展起来。
所以一般建议:一开始就用复杂微服务架构来做开始启动的项目,不是一个良好的决策。
如果你能确定未来1,2年内,项目会快速发展起来,那么适当做超前架构设计,是可以的。避免2年后业务起来,架构重构的诸多麻烦。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。