课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的软件架构模式被程序员掌握,而今天我们就简单来了解一下,单体架构与微服务架构技术应用优劣性分析。
从负责任的角度出发,我不会轻易断言大家该用单体式架构、还是微服务架构。
我的个人看法是,这个艰难的选择无法回避、必须在项目起步阶段就预先设定完成。我觉得大概四分之三的新项目都可以无脑选择单体式架构,再配合适当的模块化设计保证后续有必要时能比较轻松地转化成微服务架构。那什么叫“有必要”呢?就是转化的工作量低于继续维护原有单体式架构的工作量时。
剩下的四分之一可能天然更适合微服务架构,但还是要先整理出明确的理由。总之,如果不假思索地盲选,我个人肯定是先单体、后微服务。
架构判断绝非易事,我们需要对产品做出未来一到两年的发展预期、估算未来会有多少人/什么样的人参与到项目中来,会有哪些基础设施限制,我们的预算、产品功能路线等等。综合各项因素,后得出的才是安全可靠的架构决断。
如果你的产品只是一款普通的终端消费级Web应用程序,例如网上商店,日活用户5000左右,前五年月均订单量100份上下,那就完全没必要选择微服务。另外,如果你的初始团队是一位老手带多位新手,那微服务同样不太适用。后,如果项目预算有限,同样记得远离微服务——它带来的很可能是一套没人愿意维护的混乱系统。
微服务这个概念属于听起来简单,做起来却极为困难。相信我,没人天生就能编写出完美的微服务项目,我们都需要不断摸索和学习、围绕新概念打磨自己的业务水平。虽然开发顶尖单体式应用程序的难度也不低,但它的结构特性更符合我们的思维本能。而单体式架构中难学习的正是模块化、可测试性、关注点分离等要素,也就是那些跟微服务架构相似的部分。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。