在另一个 standalone/embedded jetty 服务器中部署独立的(不同的 Maven 项目)Rest 服务 Jar
Deploying Independent (Different Maven Project) Rest Service Jar in another standalone/embedded jetty server
我正处于应用程序设计的初始阶段。我正在尝试分离不同(模块)Maven 项目中的应用程序业务逻辑。所有 Maven 项目都有自己的数据访问层(我为此使用 Spring 数据)和独立的 Rest 服务接口。
现在我已经尝试使用 spring 引导,但是 spring 引导会为每个模块创建独立的可执行 jar 文件。但是我需要以某种方式将所有模块 jar 部署到单个 Jetty 实例中。
我有点想同时实现微服务和单一胖应用程序。原因是,用户流量相对较低的客户端可能很少。所以,在这种情况下,我觉得 运行 独立 Jetty for all rest module 会过度杀戮。但是可能很少有客户端的预期用户数据负载非常大。所以,我正在尝试实施一个灵活的解决方案来满足需求。
如果我的方法有什么不对,请您提出建议。
如果您将 Maven 打包类型从 jar
更改为 war
,那么发行版将是一个 WAR 文件而不是超级 JAR。然后可以将 WAR 文件部署到标准的 servlet 容器,例如 Jetty。
为了方便捆绑 uber JAR 和 WAR,您可以采用以下方法之一:
- 定义单独的捆绑包模块,每个模块都依赖于您的 'business' 模块,其中一个具有
<packaging>war</packaging>
,另一个具有 <packaging>jar</packaging>
- 使用Maven配置文件设置打包值,这里是an example。
我正处于应用程序设计的初始阶段。我正在尝试分离不同(模块)Maven 项目中的应用程序业务逻辑。所有 Maven 项目都有自己的数据访问层(我为此使用 Spring 数据)和独立的 Rest 服务接口。
现在我已经尝试使用 spring 引导,但是 spring 引导会为每个模块创建独立的可执行 jar 文件。但是我需要以某种方式将所有模块 jar 部署到单个 Jetty 实例中。
我有点想同时实现微服务和单一胖应用程序。原因是,用户流量相对较低的客户端可能很少。所以,在这种情况下,我觉得 运行 独立 Jetty for all rest module 会过度杀戮。但是可能很少有客户端的预期用户数据负载非常大。所以,我正在尝试实施一个灵活的解决方案来满足需求。
如果我的方法有什么不对,请您提出建议。
如果您将 Maven 打包类型从 jar
更改为 war
,那么发行版将是一个 WAR 文件而不是超级 JAR。然后可以将 WAR 文件部署到标准的 servlet 容器,例如 Jetty。
为了方便捆绑 uber JAR 和 WAR,您可以采用以下方法之一:
- 定义单独的捆绑包模块,每个模块都依赖于您的 'business' 模块,其中一个具有
<packaging>war</packaging>
,另一个具有<packaging>jar</packaging>
- 使用Maven配置文件设置打包值,这里是an example。