上图中,额外往返于RDBMS可能会减慢应用程序的速度,可能使代码不必要地复杂化。然而,无论使用的是否是基础RDBMS产品,现代ORM框架都有助于以标准化的方式完成这项工作。
ID服务器还是Snowflake ID
ID服务器负责为分布式基础设施生成唯一的ID。根据ID服务器执行功能的不同,可以是创建ID的单个服务器,也可以是每秒创建大量ID的服务器集群。
Twitter就不用我介绍了吧,平均每秒有9000条推特产生,峰值高达每秒143199条。Twitter需要一个解决方案,扩大其庞大服务器基础设施的规模,生成高效的存储ID。
您可以随意浏览所提供的示例,它们为您提供了有关Tomcat服务servlet,JSP和WebSockets的功能的良好概述。
Tomcat默认情况下还包含一个管理应用程序,该应用程序位于该/manager路径下。除其他外,此应用程序允许您从Web控制台启动,停止和重新部署应用程序。
提供静态内容
可以从文件系统提供文件,也可以从Tomcat转发到另一个HTTP服务器(如Apache)。另一个常见的设置是将文件服务器(如Apache或Nginx)放在Tomcat的前面,然后将您的API请求转发到Tomcat。在这些情况下,mod_JK库用于配置Tomcat和Apache(或什至是另一个Web服务器,如IIS)进行通信。
为了提高性能,主要是在交付静态内容方面,Tomcat还提供了Windows和Linux的本机包装。这被称为Tomcat APR,更多信息可在此处获得。这些对于典型的用例而言不是必需的,但很容易了解。
嵌入式Tomcat
长期以来,Jetty是唯一能够作为嵌入式服务器运行的服务器。那已经改变了,现在Tomcat也可以运行嵌入式了。使用嵌入式服务器的想法是,到目前为止,您没有拥有包含应用程序文件的服务器,而是拥有一个具有主类的应用程序(即独立的Java应用程序),该应用程序从以下位置调用服务器功能:在其代码库中。总体而言,这提供了更简单和可移植的开发模型,并迅速成为标准。例如,Spring Boot使用以dev模式运行的嵌入式Tomcat实例。
运行嵌入式服务器可以简化操作,因为您现在只处理单个组件(应用程序),而不是同时处理应用程序和服务器部署。另一方面,Tomcat作为独立主机运行的设置仍然很常见。
TomEE
通过将这些库添加到Tomcat本身或应用程序依赖项,可以将更多标准Java EE(或Jakarta EE)功能与Tomcat一起使用。另一个选择是TomEE服务器。TomEE是具有额外Java企业支持的相同Tomcat引擎,包括流行的JPA和CDI(上下文和依赖注入) API。TomEE的规范基于Java EE Web配置文件,因此它提供给您的不仅仅是Tomcat,而且不是像WildFly或Glassfish这样的成熟的Java EE应用服务器。
高可用性和集群
Tomcat支持高可用性和集群。本质上,高可用性是指故障转移到服务器的另一个实例并重新创建会话的能力,就好像什么都没出错。群集是创建同一服务器的多个版本以处理大量流量的能力。
结论
Tomcat保持积极发展,与变化保持同步,并为部署Web应用程序提供了坚实可靠的平台。它的持续流行以及作为许多PaaS系统的默认Java平台的选择都证明了其持续的成功。

(编辑:鞍山站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|