多功能SpringBoot JAVA应用程序(REST/BATCH/LAMBDA)

多功能SpringBoot JAVA应用程序(REST/BATCH/LAMBDA),java,spring-boot,aws-lambda,spring-rest,aws-batch,Java,Spring Boot,Aws Lambda,Spring Rest,Aws Batch,我有一个JavaSpringBoot应用程序,它在轮询来自SQS的消息后运行一个将数据上传到数据库的作业,该应用程序还包含同一数据库上的RESTAPI 现在我需要解耦上传功能和RESTAPI 上传功能将由AWS批处理作业完成,该批处理作业将由lambda触发。 RESTAPI将和以前一样简单 挑战在于我需要在同一个代码repo中执行所有这些操作。这是为了避免有3个存储库,一个用于RESTAPI,另一个用于AWS批处理作业,最后一个用于AWS lambda处理程序 因此,我们试图找到SpringB

我有一个JavaSpringBoot应用程序,它在轮询来自SQS的消息后运行一个将数据上传到数据库的作业,该应用程序还包含同一数据库上的RESTAPI

现在我需要解耦上传功能和RESTAPI

上传功能将由AWS批处理作业完成,该批处理作业将由lambda触发。 RESTAPI将和以前一样简单

挑战在于我需要在同一个代码repo中执行所有这些操作。这是为了避免有3个存储库,一个用于RESTAPI,另一个用于AWS批处理作业,最后一个用于AWS lambda处理程序


因此,我们试图找到SpringBoot可以提供的解决方案,以便在不同模式下运行相同的应用程序。请帮忙。

我不推荐使用用于lambda的Spring Boot-从技术上讲你可以,但这是浪费钱。Spring引导对于java来说是一种开销,它需要更多的内存,因此成本更高

您需要创建一个多模块Maven应用程序。这些单元将是:

  • 现有的Spring启动应用程序
  • 批处理作业
  • 通用代码,由模块1和2使用
  • 简单的新lambda
  • 。。。更多模块,如果你需要
  • 但如果出于某种原因,您仍然确定要将现有的Spring Boot应用程序包装到lambda中,则此库将帮助您:


    感谢您分享有关成本的信息。您能分享一下grade有什么问题吗?我的问题更多的是如何像在CLI上一样单独运行每个模块。我可以提供此模块是运行还是其他模块。请分享答案。我解释了两种可能的方法,现在你们的工作是深入研究它们。