node.js - 请帮助,部署 MERN 电子商务进行生产的最佳/有效方式
问题描述
我刚刚使用 mern stack 构建了一个多供应商电子商务 webapp,这是一个巨大的项目
现在我想在数字海洋上部署这个 webapp
现在我只想知道如何部署,例如使用 nginx 防火墙等直接部署在数字海洋上,或者我应该使用 docker/kubernetes,然后在容器化之后去数字海洋
或者
如果您知道更好的部署方式,请接受建议
-我将使用两台服务器,一台用于 mongodb,另一台用于 react 和 node,如果您认为我做错了,请纠正我
- 或者我应该分别为后端、前端和 mongodb 使用 3 个服务器
- 你觉得我应该怎么做
这个 webapp 每天将获得大约 5000-10000 次访问
最后一个问题我应该使用一个 git repo 像组合后端 + 前端还是应该使用两个 repo 用于前端和后端
关于这个大型 webapp 的文件夹结构的任何建议
请帮助我真的陷入困境并感到困惑
谢谢
哪个是bettet结构A或B
解决方案
虽然这并没有完全涵盖您的问题,但我对简单环境的建议是为您的前端和后端使用 Digital Ocean 应用程序平台。使用两个单独的存储库来获取自动 CI/CD。 https://www.digitalocean.com/products/app-platform/
然后是他们托管的 Mongoose 实例。
要正确操作这样的复杂站点,还需要更多知识。但这将使您开始使用一个自我维护的环境,该环境不允许 VPS 配置错误,价格便宜,并为您自动执行大部分基本的 DevSecOps 任务。
确保将机密放在应用程序环境中,而不是放在提交的文件中。
或者,您可以使用他们的托管 Kubernetes。
推荐阅读
- java - 如何使用扫描仪将项目添加到数组列表
- objective-c - 通过同名字符串名称检索 NSString 的值
- python - pygame中的悬停效果
- qbasic - 使用 DO UNTIL LOOP 打印数组中的最小数字
- java - 单击按钮时,如何在文本区域的文本字段中显示文本?
- c++ - 如何将 shmat 与非 NULL 页面对齐的 shmaddr 一起使用?
- php - 为什么“PHP flush()”在 IOS 中不起作用?
- laravel - 我的搜索中只有字符的搜索栏
- openrefine - 在 OpenRefine 中,如何使用正则表达式查找/替换首字母?
- android - 在 ActionBar Kotlin 上实现下一个按钮