从开发到上线
实战持续交付
LI Daobing
七⽜云存储
2014-11 北京
先推荐两本书
普通⺴站的架构
普通⺴站的架构
• nginx
• 提供静态⽂件,分发动态请求
普通⺴站的架构
• nginx
• 提供静态⽂件,分发动态请求
• 业务逻辑层
• ⽆状态设计,⽅便⽔平伸缩
普通⺴站的架构
• nginx
• 提供静态⽂件,分发动态请求
• 业务逻辑层
• ⽆状态设计,⽅便⽔平伸缩
• 数据库
• ⾼可⽤架构(容灾),定时备份(容错)
普通⺴站的架构
• nginx
• 提供静态⽂件,分发动态请求
• 业务逻辑层
• ⽆状态设计,⽅便⽔平伸缩
• 数据库
• ⾼可⽤架构(容灾),定时备份(容错)
• ⽤户上传的⽂件
• 跨机器同步/mogilefs/fastdfs/公有云存储
普通⺴站的架构
• nginx
• 提供静态⽂件,分发动态请求
• 业务逻辑层
• ⽆状态设计,⽅便⽔平伸缩
• 数据库
• ⾼可⽤架构(容灾),定时备份(容错)
• ⽤户上传的⽂件
• 跨机器同步/mogilefs/fastdfs/公有云存储
• 缓存层
• 降低数据库压⼒/如何保持数据⼀致/如何避免缓存机死亡之后雪崩
部署⼯具演化史
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
• FTP/SFTP 上传 (⽐如 PHP) #适⽤⾯很窄,本地要做版本管理,否则很难
回滚
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
• FTP/SFTP 上传 (⽐如 PHP) #适⽤⾯很窄,本地要做版本管理,否则很难
回滚
• 打包部署 (⽐如 Java 的 war ⽂件) #需要⼿动拷⻉,多机情况下仍然要配
合其他部署系统
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
• FTP/SFTP 上传 (⽐如 PHP) #适⽤⾯很窄,本地要做版本管理,否则很难
回滚
• 打包部署 (⽐如 Java 的 war ⽂件) #需要⼿动拷⻉,多机情况下仍然要配
合其他部署系统
• 做成系统安装包#⽐较累,但⼤规模部署⽆压⼒,听说yahoo以前主要是
这么部署的
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
• FTP/SFTP 上传 (⽐如 PHP) #适⽤⾯很窄,本地要做版本管理,否则很难
回滚
• 打包部署 (⽐如 Java 的 war ⽂件) #需要⼿动拷⻉,多机情况下仍然要配
合其他部署系统
• 做成系统安装包#⽐较累,但⼤规模部署⽆压⼒,听说yahoo以前主要是
这么部署的
• capistrano #我们使⽤的,但配置⼀般建议单独管理
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
• FTP/SFTP 上传 (⽐如 PHP) #适⽤⾯很窄,本地要做版本管理,否则很难
回滚
• 打包部署 (⽐如 Java 的 war ⽂件) #需要⼿动拷⻉,多机情况下仍然要配
合其他部署系统
• 做成系统安装包#⽐较累,但⼤规模部署⽆压⼒,听说yahoo以前主要是
这么部署的
• capistrano #我们使⽤的,但配置⼀般建议单独管理
• capistrano+puppet/salt #puppet和salt 可以⽤来解决配置问题
部署⼯具演化史
• 安装⽂档 (⽐如 wordpress) #要么线上修改,要么就得重装
• FTP/SFTP 上传 (⽐如 PHP) #适⽤⾯很窄,本地要做版本管理,否则
原创力文档

文档评论(0)