【发布时间】:2014-03-03 12:27:38
【问题描述】:
过去几年我公司的做法是在客户的服务器/主机上安装我们自己的 cms 并开发前端。但现在是时候改变我们的工作方式了。 现在我是这样想的。 内容服务器很少,客户端(前端)一台服务器,后端服务器一台,数据库/数据服务器一台。
后端应用和服务器
每个客户都可以访问一个后端应用。只有一个后端,它将数据存储在数据服务器上。后端/前端将请求数据,数据服务器从 mysql 数据库准备 json 数据,然后将其发送回客户端。 内容将临时上传到后端服务器,然后内容服务器将临时内容复制到多个内容服务器。
前端
前端服务器上不会有数据库/数据。前端网站、应用程序、移动应用程序将通过 json 从数据服务器/api 获取所有数据,或者来自内容服务器的内容。所以前端服务器上只会有前端脚本。
内容服务器
它不像 CDN,所有内容服务器都放在一个地方。已连接并同步。
数据服务器
将所有数据存储在 mysql 数据库中。会有从mysql数据库准备json数据的api。
现在的问题是:
- 这种结构是愚蠢的还是管理数百个网站和应用程序的正确方式?
- api 从 mysql 数据库准备 json 数据并将其发送回请求的应用程序很慢?还是正常的?
- 分离的内容服务器(不是 CDN,但它会创建内容缓存)比在一个请求中从一台服务器加载内容和脚本更好更快。
- 客户端访问前端服务器->前端服务器请求数据服务器->数据服务器将从mysql db准备json数据->将其发送回前端->浏览器从内容服务器获取内容->渲染网站、应用程序。这种方式是比一台服务器慢还是快?
- 我们的后端必须非常快速和非常酷。任务是带有历史记录的实时应用程序,没有哈希标签的 url,当 url 更改时,浏览器不会刷新并且不会损害后端应用程序媒体播放器(许多小工具)、实时通知和消息。我们应该为这个应用程序使用什么技术?请根据您的经验回答。
【问题讨论】:
-
也许这个问题更适合serverfault.com?