我在node js中开发了3个微服务,我想将其部署到单一的Azure应用服务中。
根据我的理解和microsoft文档,我们不能将多个微服务部署到单个Azure App Server上,而是可以将每个微服务单独部署到Azure App Server上。
那么,有没有可能将多个微服务部署到单个App服务上呢?
您可以使用虚拟文件夹:
例如。
/app/app2/app3
更多信息:https://medium.com/@the.green.man/azure-app-services-virtual-folders-F9E43914E3B2
值得一提的是,微服务会争夺服务器资源,如果其中一个出现故障,其他的可能也会重新启动。 根据指导原则,这不是一种真正的微服务方法,因为您不能独立地扩展服务。
应该可以使用docker compose(功能在预览中):使用docker compose配置创建一个多容器(预览)应用程序。 虽然据我所知,整个App服务你只能有一个公共端口,这会使配置更加复杂,取决于你需要什么。
如果你担心成本,我的建议是使用单个应用服务计划,每个微服务都有专用的应用服务。 这可以迁移到以后为每个服务使用专用的应用程序服务计划。 这些都不需要容器。