
课程咨询: 400-996-5531
投诉建议: 400-111-8989
认真做教育 专心促就业
微服务架构开发是目前大多数软件编程开发程序员都在学习和应用的一种编程开发技术,而本文我们就通过案例分析来简单了解一下,微服务架构开发应用条件分析。
1、天时
在业务运行初期,如果你是单业务系统架构,如果业务量不大且复杂性不高,如果你追求快速响应、开拓服务、节省成本、提高效率,那么你可能真的用不着微服务。比如你如果只是要用CMS做一套公司网站,那真的可能不用微服务这把牛刀。当随着你的业务进入扩展期,你的系统架构开始走向面向服务架构,业务不断扩大,业务系统复杂性不断提高,但效率在不断下降,那么这个时候你可以开始考虑业务拆分、使用微服务了。
2、地利
如果要进行微服务改造,还需要具备一定的资源条件,如物理机资源、网络资源。举个例子:假设一个电商平台,现状如图。如果业务框架不那么复杂则可考虑不用微服务架构。而如果需要进行微服务改造,那么至少需要准备规划好如下资源:
硬件资源:主机/容器、数据库
软件资源:注册中心、拆分的服务、负载均衡、网关、缓存、监控软件
人力资源:至少需要架构师构建微服务、前端、后端、测试,其中运维的角色可以由研发+微服务平台代替。
3、人和
如果要享受微服务带来的优势,就需要接受微服务带来的挑战。比如:
虽然微服务的服务边界限定,每个团队可以独立维护演进自己的服务,但是当服务扩展到几十个甚至上百个后,就需要考虑分布式带来的复杂性。
如果说不同服务可独立部署、独立扩展,那么维护不同版本和版本兼容就是需要面对的挑战。
如果说不同的服务可以采用不同的技术栈,只需按照约定好的通信协议即可完成交互,那么服务之间的认证/鉴权/证书管理,共享数据与分离数据后如何保持一致性等一系列复杂的问题等,就是需要面对的挑战。
……
总之,使用微服务也是需要天时地利人和的,使用的过程也不要一蹴而就,服务治理是巨大的挑战。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。