课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
微服务架构开发随着互联网的不断发展而被广泛应用到不同的软件开发项目之中,而本文我们就通过案例分析来简单了解一下,微服务架构收益与实践分析。
1、微服务架构的收益
当从单体应用正确的迁移到微服务架构的时候,可以获得以下收益:
你可以根据自己的意愿选择一门语言开发微服务,按照自己的节奏独立发布它,并独立扩展。
组织中的不同团队可以独立的拥有自己特定的微服务,并且随着并行开发以及重用的增加,产品发布的时间会更快。
可以更好的隔离故障,因为发生在特定微服务中的错误会在对应的服务中被处理掉,因此不会影响到生态系统中的其他服务。
但是,如果在构建微服务时未遵循正确的原则,则终可能会陷入像纠缠在一起的意大利面一样的状态。
2、微服务实践
单一责任原则
就像代码中的类一样,它仅仅在单个原因情况下改变,微服务也是采用类似的方式建模。构建可能会改变一个以上的业务这种臃肿的服务是一个坏的实践。
独立的数据存储
如果你的所有微服务都共享一个数据库,这就违背了使用微服务的目的。对这个数据库的任何的改变或者故障都会影响使用该数据库的所有微服务。根据微服务的需要选择正确的数据库,定制化基础设施以及对应数据的存储,并且让你的服务独占它。理想情况下,任何需要访问该数据的其他微服务只能通过拥有写权限的微服务提供的API来访问。
使用异步通信实现松散耦合
为了避免构建出一个紧密耦合的组件网格(mesh),可以考虑在微服务之间使用异步通信。
一个更好的选择是在微服务通信之间使用事件机制。你的微服务可以发布一个事件消息到消息总线上,可以用来通知一个状态的改变或者一个失败事件,并且任何对该事件感兴趣的微服务都可以获得该消息然后做出相应的处理。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。