
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
微服务架构开发是目前大多数软件开发程序员在开发软件的时候都会采用的一种开发形式,而本文我们就通过案例分析来了解一下,微服务架构开发都有哪些技术优势。
1、故障隔离
由于应用程序由多个服务组成,因此如果其中一个服务宕机或出现问题,则只会影响系统的那个部分。以Netflix为例,当你观看节目时,你并不关心推荐。因此,如果它们有一个服务来处理当前观众,为他们提供视频流;它们有另一个服务来处理个人用户推荐。如果推荐服务宕机,系统中重要的功能(例如观看节目)不会受到影响。故障被隔离了。
2、消除技术锁定
想想单体应用。它是一个巨大的应用程序,有成百上千个API,管理数百个数据库表。这个应用程序是用Java写的,团队花了5年时间开发它。一种奇特的新语言出现了,纸面上带来更好的性能、提供更好的安全性等等。这可能是Go或Rust,团队想试验下该语言及其技术栈。他们如何在一个单体应用中做到这一点呢?他们做不到,因为这是一个单独的部署包。你可以将应用程序的一部分切换到不同的语言,但这并不容易做到。
3、更容易理解
当你有多个服务负责整个功能的一小部分时,这个服务本质上会更小,因此更容易理解。
4、更快的部署
在常规的单体应用系统中,要么完全部署,要么根本不部署。你需要部署一个包,这是一个要么全有要么全无的场景。使用微服务,你有机会独立部署,这意味着,如果你想要部署推荐服务的一次升级(回到Netflix的例子),你可以部署单个服务并节省大量时间。
5、可伸缩性
你可以通过启动多个实例来增加特定功能的容量,从而扩展服务。像前面举的例子,如果人们在Netflix上查看大量推荐,它们可以很容易地启动多个推荐服务的实例来应对负载。在单体应用环境中,你要么扩展应用程序的每一个部分,要么什么都不扩展。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。