后端是一个后台项目 前端分了 3个前端项目 能打包到一个镜像里在Serverless应用引擎发布吗?还是说 打包3个镜像部署SAE?
这个需求稍微复杂点,推荐你分别打包3个镜像部署SAE:
后端项目单独打包一个镜像部署
每个前端项目单独打包一个镜像部署
原因是:
微服务架构更好扩展
后端和不同的前端功能差异较大,分离会更高内聚更好维护。
便于更新和维护
后端和各个前端可以独立更新和维护,不影响别的服务。
日志分离方便排查
不同服务的访问日志和错误日志分开,更好监控和追溯问题。
便于横向扩展
后端和各个前端的实例可以独立水平伸缩。
比如后台压力大可以多部署后端实例,但不影响前端。
减少复杂度
一个大的镜像包含多功能代码,部署维护更加复杂。
所以总的来说,推荐你分别打包部署后端和各个前端项目。
构建一个微服务架构。
在Serverless应用引擎(SAE)中,一个容器镜像通常只能包含一个后端项目。每个容器镜像都会对应一个应用实例,因此无法将多个独立的前端项目打包到同一个镜像中。
但是,您可以选择将后端项目和前端项目分别打包成不同的镜像,并在SAE中以多容器方式部署。具体步骤如下:
后端项目镜像:将后端项目打包成一个容器镜像,其中包含后端代码和依赖项。这个镜像将作为服务端应用程序在SAE中运行。
前端项目镜像:将每个前端项目打包成独立的容器镜像,每个镜像对应一个前端项目。这些镜像可以使用适当的Web服务器或其他工具来托管前端静态文件。
SAE部署配置:在SAE中,创建一个应用实例并进行多容器部署。将后端项目镜像作为主容器,在该容器内运行后端项目。然后,针对每个前端项目镜像,创建一个副容器,并将其与主容器关联。这样,您可以将多个前端项目同时部署到同一个SAE应用实例中。
通过以上配置,您可以在同一个SAE应用实例中同时运行多个前端项目和后端项目,实现整体的前后端分离部署。
各有好处,分开的好处就是单独管理,可以回滚之类的;缺点就是项目可能会多一点。合一起的缺点就是没法分开管理饿了,好处就是项目少一点。此回答整理自钉群“【3群】Serverless应用引擎(SAE)用户群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。