最新公告
  • 欢迎您光临欧资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • Java应用服务器遭遇前所未有的挑战,应用服务器此前的MarkLittle

    Java应用服务器曾经是企业中间件市场的重要组成部分,但随着轻量级微服务概念的发展和云计算的迅速普及,Java应用服务器面临着前所未有的挑战。近日,来自 adesso AG 技术顾问委员会的 Eberhard Wolff 分享了一张幻灯片,提出了应用服务器已死的观点。Eberhard 之前是 SpringSource 的首席技术专家,RedHat 的 Mark Little 也曾在博客上写过,解释未来。如何开发中间件平台。

    在 Eberhard Wolff 的幻灯片中,他首先分析了传统应用服务器面临的问题,然后介绍了持续交付和微服务等新技术发展趋势对应用服务器的影响。在 Eberhard Wolff 看来,传统应用服务器的作用主要包括以下四点:

    但是,在这四个方面,应用服务器在提供强大的支持功能的同时服务器一般用什么语言,也存在很多不足。

    具体来说,如果在服务器上部署了多个应用程序,这些应用程序会通过ClassLoader机制进行隔离,但这还不够,很容易导致棘手的问题。因为操作系统是按进程分配资源的,所以应用服务器无法为应用程序隔离内存、CPU和文件系统。应用程序在运行时仍会相互影响。除非Java虚拟机变成操作系统,否则很难做到完美隔离。因此,理想的解决方案是将应用服务器用作单个应用程序的容器,而不是同时运行多个应用程序。

    在基础架构方面,应用服务器提供了两阶段提交、网络/线程和 API 等功能。但是作者认为两阶段提交会降低应用程序的效率,并不能保证一定会成功。在分布式系统中,使用应该受到限制,因为可伸缩性会受到影响。应用服务器通常还提供网络和线程基础设施,支持线程池和连接池,但这些都可以在应用程序中实现。作为基础设施提供的API,如EJB、CDI、JPA、JSF等,在带来便利的同时,往往会导致与应用服务器的版本相关联,应用将依赖于应用服务器。在新服务器启动之前,我们不能使用新的API,另外,可能存在版本冲突。有时应用也会把它所依赖的库放到应用服务器中,这样就形成了应用和服务器之间的循环依赖,如下图所示。可以说,服务器成为应用程序的一部分。

    在部署方面,应用服务器支持多种部署格式,比如WAR、EAR、JAR等,但是这些格式不能定义应用的外部依赖,比如应用服务器的版本、数据库, 等等。在这个过程中,通常会使用完全不同的工具,如 deb 或 RPM。应用服务器的配置比应用本身的配置还要复杂。与使用 Puppet/Chef 编写的自动化脚本相比,应用服务器的配置过于繁琐。对于持续交付,我们必须有很多部署流程,所以我们需要简化部署,使用更通用的工具。

    应用服务器的监控功能一般是通过JMX提供的,可以使用SNMP等协议进行集成,但问题也在于完全不同的工具链。这方面有一些新技术和新趋势,比如Logs+Logstash/Kibana或者Splunk,基于REST的监控功能或者写脚本。

    作者后面提到了微服务的概念。基于这个概念构建的软件是由服务组成的,服务将具有一定的业务意义,服务的(重新)部署可以独立进行,而不是作为一个庞大的整体进行。为此,服务可以以 REST 之类的方式相互交互。服务可能有不同的非功能性需求,所以会需要不同的基础设施服务器一般用什么语言,比如异步、传统的Servlet、Batches、Map/Reduce等,而应用服务器只能提供一种基础设施。

    基于这种模式,可以将应用程序创建为一个 JAR 文件,在这个 JAR 中包含一个 Main 类,我们可以自定义基础设施,例如 HTTP 服务器或 Batch。对于监控和部署,它依赖于标准的部署和监控工具,提供基于 REST 的监控 URL,并分析评估日志文件。这种方式可以带来一系列的好处,因为它只是一个 JAR 包,更容易部署,我们可以在 IDE 中调试和运行,验收测试更容易,并且可以确保基础架构与应用程序兼容。作者最后提到了Spring Boot、Dropwizard等相关技术。

    事实上,在云概念刚刚普及的时代,应用服务器已死的观点已经出现。例如,Forrester 的首席分析师 Mike Gualtieri 在 2011 年写道,应用服务器的泡沫将会破裂,并建议不要把钱花在 WebLogic、WebSphere 和 JBoss 应用服务器上。当时,RedHat 的 Mark Little 专门驳斥了这一观点。最近,Mark Little 碰巧写了一篇文章,解释了中间件平台的未来趋势。在本文中,作者认为我们需要新的框架和模型来构建应用程序。一个适应性强的中间件平台应该具备的特性包括:

    Mark Little 和 Eberhard Wolff 都提到了新的编程和部署模型。在 Parallel Universe 的博客上,最近发表了三篇文章介绍 Java 的发展趋势。其中之一致力于现代 Java Web 应用程序的开发和部署。作者还提到了这种新的部署理念。

    说应用服务器死掉可能还为时过早,但面向服务和分布式应用是发展方向,这将挑战传统应用服务器的部署和监控。如果您对这个问题有新的见解,请与我们分享。

    站内大部分资源收集于网络,若侵犯了您的合法权益,请联系我们删除!
    欧资源网 » Java应用服务器遭遇前所未有的挑战,应用服务器此前的MarkLittle

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    欧资源网
    一个高级程序员模板开发平台

    发表评论