谈谈在 .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 吗?
不需要 。
云 只要 提供 虚拟机 就可以了 。 其它的我们自己搞定 。 我们想怎么玩就怎么玩 。
谈谈在 .Net 平台上的 软件生态 和 软件生产力的更多相关文章
- 分享一些 Windows 平台上的神器
下面分享一些 Windows 平台上日常开发使用的软件,有些软件我自认为是神器,可以大大提高效率. 编辑器类软件 IntelliJ IDEA IntelliJ IDEA 内部集成 Java 开发环境, ...
- 如何在linux平台上编译安装zlib软件(公司部分线上机器缺少zlib不能安装supervisor)
文章在Centos 6.5 linux平台上演示一下如何进行编译安装zlib软件,并配置相关的选项加载使用.示范从下载到安装并配置进行使用过程一系列整套讲解,希望可以给网友考虑使用,谢谢. 工具 ...
- 龙芯GO!龙芯平台上构建Go语言环境指南
龙芯软件生态系列——龙芯GO!龙芯平台上构建Go语言环境指南2016-07-05 龙芯中科1初识Go语言Go语言是Google公司于2009年正式推出的一款开源的编程语言,是由Robert Gries ...
- Go语言在国产CPU平台上应用前景的探索与思考
http://www.chinaaet.com/article/3000087559 0 引言 CPU是电子产品的核心,代表着信息产业的发展水平.CPU发展至今已经有四十多年的历史了,实际就是Inte ...
- JVM 平台上的各种语言的开发指南
JVM 平台上的各种语言的开发指南 为什么我们需要如此多的JVM语言? 在2013年你可以有50中JVM语言的选择来用于你的下一个项目.尽管你可以说出一大打的名字,你会准备为你的下一个项目选择一种新的 ...
- Mac 平台下功能强大的Shimo软件使用指南
年初自从换了MAC工作站后,彻底享受了Apple产品给我们带来的完美体验,可能是刚转过来不适应,在访问网络设备时觉得远程连接不方便,例如ssh,vpn登陆都不是很方便,后来又安装了openvpnfor ...
- 随笔之Android平台上的进程调度探讨
http://blog.csdn.net/innost/article/details/6940136 随笔之Android平台上的进程调度探讨 一由来 最近在翻阅MediaProvider的时候,突 ...
- 在微软平台上运行 SAP 应用程序
本博客介绍了在微软平台上运行 SAP 应用程序的相关信息,作者在基于微软平台使用 SAP 方面有着数十年经验. 发布关于 Azure 的 SAP 说明 几个月前,SAP 针对适用于 SAP 软件 ...
- [原]详解如何将cocos2dx项目编译到Android平台上的(方式一:Cywin+NDK)
链接地址:http://m.blog.csdn.net/blog/yhc13429826359/29357815 2014-6-8阅读578 评论0 前言:cocos2dx作为一个开源的移动2D游戏框 ...
随机推荐
- 【Python】unittest-3
一.@unittest.skip("skipping this case") # 无条件忽略该测试方法 二.@unittest.skipIf(a > 5, "con ...
- php防止sql注入的方法(转)
[一.在服务器端配置] 安全,PHP代码编写是一方面,PHP的配置更是非常关键. 我们php手手工安装的,php的默认配置文件在 /usr/local/apache2/conf/php.ini,我们最 ...
- markdown-to-html.min.js
直接改成 false 不执行这里 不然异步了
- [Data Structure] Stack Implementation in Python
We can realize a Stack as an adaptation of a Python List. S.push(e)=L.append(e) S.pop()=L.pop() S.to ...
- Unity读取AssetBundle资源全教程(所有读取方式)
读取/加载 AssetBundle 资源的多种方式 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Ch ...
- MarkDown常用语法表
MarkDown常用语法表 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Title - 标题 2 H ...
- Codeforces Round #544 (Div. 3) (补)
D:没有注意到a==0&&b==0的情况,把自己卡崩了.对于数学公式推导一定要注意关于0的特殊情况,不可以少 #include <iostream> #include &l ...
- xdoj 1237 (贪心+逆向思维)
提示: 当有的元素分裂的同时,其他元素也可以+1 分析: 逆向思维,把当前数列变成一个0: 相应得操作相反: 每个元素减1 相同得两个元素可以合并 设数列中最大的数是max,则一共需要减max次才可 ...
- 2017.7.11 linux 挂载
挂载:Liunx采用树形的文件管理系统,也就是在Linux系统中,可以说已经没有分区的概念了.分区在Linux和其他设备一样都只是一个文件.要使用一个分区必须把它加载到文件系统中.这可能难于理解,继续 ...
- (5)MySQL的查询:模糊查询(通配符查询like)、限制符查询(limit)、排序查询(order by)、分组查询(group by)、(子查询)
注意事项 指令语法的优先级: where > group by >order by > limit 例:select count(id) as cnt,age from tablen ...