谈谈在 .Net 平台上的 软件生态 和 软件生产力
我们可以先看看这篇文章 :
《看 StackOverflow 如何用 25 台服务器撑起 5.6 亿的月 PV》 http://www.nowamagic.net/librarys/news/detail/1813
物理机 也好 , 虚拟机 也好 , 用哪种都可以 。 你喜欢用哪种就用哪种 。 ^^
我之前说过 , 用 分布式缓存 作为 共享内存 来 构建集群 是 过去若干年到现在的 事实上的做法 。
这种做法 成本不高 , 容易普及 , 直观易用 。
我们通常说的 “集群治理” , 什么叫 “治理” ? 在上面的基础上再加上 复制分发 的功能就可以实现对 集群 的管理 或者 治理 了 。
集群 , 通常也称为 “Web Farm” , “Server Farm” , 这些都是 好名字 ……
什么是 复制分发 呢 ? 说白了就是 拷贝文件 。
我们说什么 集群治理 , 无非就是想 自动化 的 在 所有服务器上 “克隆” 或者 部署上 应用程序嘛 !
我们在 一台上部署了应用程序 , 希望其它服务器都有同样的部署 , 就是 “克隆” 。
要实现这个 , 就是 拷贝文件 嘛 。
所以, 现在 一会儿 是 容器 , 一会儿 是 实例 , 一会儿 是 每日构建 , 一会儿是 冒烟 , 一会儿是 自动获取源代码 , 一会儿是 自动编译 , 一会儿是 自动发布 …… 还有很多名词 , 实际上这些就是 一件事 , 就是 拷贝文件 嘛 !
为什么要 自动获取源代码 , 为什么要自动编译 ? 人来做的话不就是 喝杯茶 , 点两下鼠标么 ?
再 Ctrl + C , Ctrl + V
实际上 只有 批量复制文件 这件事 才需要 自动化 , 就是 把 要部署的 应用程序文件 拷贝到服务器 , 且是 拷贝到 n 台服务器 上 这件事 , 这件事 才需要 自动化 。
这件事的话 自己写个 程序搞定 。
需要 “云” 吗 ? 需要 “平台” 吗 ? 需要 “框架” 吗 ? 需要 Some Smart Tool 吗?
不需要 。
云 只要 提供 虚拟机 就可以了 。 其它的我们自己搞定 。 我们想怎么玩就怎么玩 。