java在AWS lambda中部署Spring引导应用程序
我有一个内置Javascript、Spring Boot和MySQL的现有web应用程序。我想在AWS Lambda中部署应用程序(前端+后端)。请告知如何实现这一点,因为我不确定每个restful API调用应该如何映射到API网关,而API网关又将调用lambda函数(应该是RestConroller中现有的java方法)
谢谢并感谢你的建议
你可以在下面搜索框中键入要查询的问题!
我有一个内置Javascript、Spring Boot和MySQL的现有web应用程序。我想在AWS Lambda中部署应用程序(前端+后端)。请告知如何实现这一点,因为我不确定每个restful API调用应该如何映射到API网关,而API网关又将调用lambda函数(应该是RestConroller中现有的java方法)
谢谢并感谢你的建议
# 1 楼答案
我认为你不应该那样做。将AWS Lambda视为一小段代码,在触发时运行,并完成其工作。你当然可以用Lambda编写一个RESTful服务,但是你必须为每个路由定义一个Lamda并设置它们
我不认为你能做到这一点,因为打包应用程序后,jar文件肯定会超过Lambda函数的大小限制
最简单的解决方法是使用弹性豆茎。但是如果你有管理服务器的经验,你会发现EC2更有用
看看这个Spring Boot deploy to ElasticBeanstalk
这个tutorial可能也有帮助
# 2 楼答案
如果要部署具有多个端点的引导应用程序,Lambda可能不是最好的工具。Lambda函数有一个单一入口点,API网关将URL映射到该入口点。为了创建REST API端点,需要创建多个Lambda函数,每个函数都有自己的Spring Boot应用程序(它们彼此隔离)
如果你想在一个不需要你管理服务器的平台上运行Spring Boot应用程序,弹性容器服务可能是一个更好的选择(如果你可以走出AWS生态系统,也可以使用类似Heroku的服务)