大家好,我正在做一个项目,我不会详细介绍,但它将由我编程/设计,并允许客户注册他们自己的实例,他们将能够对其进行自定义。把它想象成类似于 phpbb 的东西,它们是一堆由我托管的东西,客户将支付月费,并为他们的项目版本获得一个子域。
我正在尝试决定如何在服务器端进行设置并查看以下选项:
1) 在一台或两台服务器上托管所有内容
优点
- 由于一切都在同一个盒子上,因此易于推出更改
- 让子域指向同一个地方将是一件轻而易举的事,因为源代码只有一个地方,只有一个数据库
- 用户将能够为所有客户端使用全局登录,因为只有一张
users
表
缺点
- 由于所有流量都将集中在一个盒子上,因此缩放将很快变得棘手
- 由于行数高,数据库查询会很慢(
client_id
大多数事情都会有一个字段来标识哪些数据属于哪个子域)
2) 利用 EC2、Rackspace Cloud 或类似的东西
优点
- 像梦一样的鳞片
缺点
- 我只是没有能够预见所有问题的平台经验(是的,我知道,蹩脚的借口)
- 不确定如何将新版本推送到所有实例
- 不确定我是否可以以某种方式进行设置,以便一旦客户付款,他们就会立即设置他们的实例并且一切顺利
- 不知道如何实现全局登录系统(虽然 37signals 似乎可以做到)
似乎最好的选择是云计算,唯一真正的问题是我缺乏经验。
有没有人推出过这样的东西?你做了什么?有什么我没有考虑的问题吗?