JRuby应用部署:Trinidad的使用与实践
1. Trinidad扩展探索
除了我们已经使用过的Trinidad扩展,还有许多其他可用的扩展。完整列表可在GitHub的Trinidad组织下找到。以下是一些有用扩展的概述:
- 数据库连接池扩展 :在传统的MRI部署中,多个进程的一个缺点是每个进程都有自己的连接池。随着新进程的创建,会创建新的连接池。因此,连接数量与进程数量相关,而不是与连接池的大小相关。大多数部署环境通过运行某种位于数据库及其客户端之间的中间件来解决这个问题,例如PostgreSQL的pgpool。但这种解决方案会进一步增加基础设施的复杂性。Trinidad提供了一个数据库连接池,不仅可以在应用程序的实例之间共享,还可以由容器中的其他应用程序共享。
- 生命周期扩展 :此扩展允许你将用Ruby编写的生命周期监听器添加到Trinidad的服务器上下文以及运行在Trinidad之上的每个应用程序上下文中。它还将使我们能够启用Tomcat的Java管理扩展(JMX)监控功能。
- 沙箱扩展 :整个应用程序在单个进程中运行意味着你可以使用集中式工具来管理和监控它。Trinidad沙箱扩展通过管理控制台和REST API提供对应用程序的访问。它甚至与应用程序在同一进程中运行,因此不会进一步增加基础设施的复杂性。
2. 选择Trinidad的替代方案
Trinidad是部署JRuby Web应用程序的最佳支持平台之一,也是少数商业支持的JRuby Web框架之一。不过,还有其他传统部署JRuby Web应用程序的选项,但没
超级会员免费看
订阅专栏 解锁全文
7

被折叠的 条评论
为什么被折叠?



