下载地址:完整mp4视频
演讲人:张侠 博士
1. 邱洋的理解
初创公司需要快、多、好、省的技术架构
- 快:针对业务需要可以快速获得资源与服务
- 多:拥有丰富的云服务可供选择,能不自己做就不自己做
- 好:强调扩展性和高可用,既不要在一开始被“钱”束缚住,又需要良好的用户体验(能用是最基本的用户需求)
- 省:可以弹性伸缩,并按需付费是最好的节省
无论是初创公司还是传统企业,很多架构思路是相通的: OS、前端、后端、数据库、框架等,根据自身需要选择。之后要做的就是在云中找到对应的服务功能。
云应用架构的7大设计原则
- 设计时考虑任何系统都会失效
- 松耦合和无状态设计(只有无状态的应用才能更好的快速伸缩)
- 设计可扩展性和自动缩放
- 安全贯穿设计始终,体现在每层中
- 不要过多担心约束和失败(比如每次处理的能力还不够多,要做到的是清晰的了解当前的设计思路,因为云是无限扩展的,所以干好一件事情后云中可以通过复制而扩展能力)
- 多考虑平行分布式处理
- 充分使用各种不同的服务
初创公司可以按照如下方法渐进式使用云服务
- 按业务生命周期方法:从测试开始熟悉操作,再到后续生产部署,逐步习惯云服务
- 按应用规模变化方法:从一台EC2实例开始,再根据业务发展引入静态数据分离,关系数据库扩展,缓存等需求,逐步了解更多云服务
- 按业务需要方法:从基础的计算/存储/网络等IaaS服务开始,在逐步根据业务将消息队列、全文搜索、邮件发送等直接使用PaaS服务,逐步将精力放入业务创新
2. 初创公司提的业务和技术要求
- 快速验证产品服务
- 为机会窗口而争分夺秒(互联网1年等于传统7年,狗年)
- 小的技术团队没有历史包袱
- 关注于提供方案解决问题
- 避免工程大而全和返工
- 规避风险准备迎接高速成长
3. 初创公司的技术选型
3.1. 常见技术堆栈
- 操作系统:linux:centos,redhat,suse,ubuntu
- 移动端:IOS、Android;HTML5
- 网站前端:PHP/ASP/JSP、HTML/CSS
- 前端框架:Flex,jQuery,Sencha
- 开发工具:Eclipse,SVN,SDK/IDE
- 技术框架:Struts,Springs,Hibernate;Velocity;Ruby on Rails
- 开发语言:Java,PHP,Python,Ruby,Net,Node.js,GO
- 负载均衡:软件:Nginx,Squid;硬件:F5