在这个帖子做了个逃避式的回答,结果好像有几个人挺感兴趣的,下面就说一下本人拙见。
PASS 平台即服务,始作俑者应该是 GAE(google app engine),不过好像出来没多久就被墙了,因为我们都用它来跳墙,国内常用的代理软件 goagent(中译:狗急跳墙) 就是架设在 GAE 上。
随后国内也掀起一股 PAAS 风,首先是新浪 SAE 公测,当时也申请了邀请码参与了测试,但是由于语言支持少,各种限制太多而没有继续关注。
后来百度 BAE 出炉,和 SAE 差不多,支持少,限制多。目前 BAE3.0 基于容器技术,已经去掉了很多限制,还能自定义运行时。
后来盛大阿里也不甘寂寞,相继推出自己的 PAAS 平台,当然以上说的都是对外提供服务的平台,俗称共有云。
还有一个咖啡厅起家的 python 神话公司豆瓣,他们也有自己的 PAAS,不过并不对外提供服务,而是提供公司内部项目的部署,俗称私有云,据说豆瓣阅读,豆瓣 fm 等项目都是跑在他们自己的 DAE 上。
牍子扯完了。
还有另外一种形式的服务近年来也在快速发展,SAAS,这种平台大多数都以公司为单位进行组织,就像上面链接里面的问题就是这样,还有比如一些企业邮箱,企业内部交流平台什么的。
这种服务一般都是一个应用来承载,就像问题里面描述的那样,使用 company_id 来区分数据是哪个公司的。
小弟觉得这样设计有几个问题
于是我就想,能不能结合 PASS 和 SAAS,做到数据的隔离呢。
其实应该早就有人这么干了,打开 openerp 和 spree 试用页面,输入一个三级域名,你就拥有一个自己的 erp 和商城。
就是把 SAAS 分离开,做成 PAAS 镜像,每次都实例化一个 PAAS 应用,这样,每个应用跑在自己的容器里面,各种隔离,还可以控制硬件资源。
当然,你需要维护自己的 PAAS,或者依托某个 PAAS 平台。
SAAS 有向 PAAS 靠拢的趋势。
我会告诉你我上一份工作是把一个 cms 部署到各种 idc 提供的 php 虚拟机上,然后使用一个破 html 编辑器编辑内容,然后还不懂 html,文字对不齐只能使用回车来搞,行距只能使用空行。