java高级培训-微服务架构的理解

2020年11月09日 21:11

64

    微服务的概念大约在2012年开始出现。它由软件作者MartinFowler推广。围绕业务,自动部署,终端智能以及语言和数据的分散控制,有一些常见的新功能。随着云计算技术的发展和服务的增长,微服务架构吸引了越来越多的关注。微服务也是一种用于在云中部署应用程序和服务的新技术。尽管存在许多不同的争议,但是微服务体系结构模型为敏捷部署和复杂企业应用程序的实现提供了很大的帮助。

1.jpg

    一般来说,我们的开发也是模块化的设计逻辑。该程序完成后,将被打包并部署到特定的应用程序中。每种特定的格式取决于相应的应用程序语言和框架。例如,Java应用程序通常以WAR格式打包并部署在Tomcat或Jetty上,而其他Java应用程序将以自包含的JAR格式打包。同样,Rails和Node.js将被打包到分层目录中。这种类型的应用程序开发非常普遍并且易于调试。您只需要简单地运行应用程序并将UI与某些工具链接即可完成端到端测试。打包的应用程序被复制到服务器,并且可以通过在负载平衡器的后端上运行多个副本来轻松实现应用程序扩展。在早期,这种类型的应用程序运行良好,但是随着时间的推移,简单的应用程序将逐渐变大。几年后,这个小而简单的应用程序将成为巨大的怪物。一旦您的应用程序成为一个庞大而复杂的怪物,开发团队一定会感到痛苦。敏捷的开发和部署是困难的。主要问题在于应用程序是如此复杂,以至于任何开发人员都无法理解它。因此,正确修复错误和添加新功能将变得非常困难且耗时。


    当一个应用越大,启动时间就会越长。那么大部分时间就要在等待中渡过,生产效率会受到极大影响。


    另外,一个应用在不同模块发生资源冲突时,扩展将会十分的困难。应用的另外一个问题是可靠性。当所有模块都运行在一个进程中,任何一个模块中的一个bug,比如说,内存泄露,将会有可能弄垮整个进程。除此之外,因为所有应用实例都是唯一的,这个bug将会影响到整个应用的可靠性。


    如果采用微服务处理结构模式则可以很好的解决上述问题。微服务架构的思想不是开发一个复杂巨大的应用,而是将应用分解为若干小的、互相连接的微服务。


   相关推荐:java高级培训-Spring MVC框架的特点


 

更多鲁班学院java高级培训免费课程试听地址https://www.lubanjava.com/course.html

鲁班学院java高级培训课程https://www.lubanjava.com/course/detail/519.html

加群即可领取鲁班学院最新Java高级培训课程资料学习包 群号:700541970




在线咨询
免费试听
领取优惠
加群交流

扫一扫
加群领取架构师资料

售后反馈
返回顶部