内容简介:终于,你拥有了一个现代化的全球Web后台系统。
第一阶段 - 项目成立
- 随便在阿里云买了一台虚拟机。
- 在万网买了一个不是很满意的域名。
- 使用免费的Gitlab创建了自己的代码项目。
- 通过朋友介绍认识设计师小A。
第二阶段 - 开始运营
- 另外多买了一台虚拟机。
- 购买了阿里云的负载均衡服务,并且将80,443端口指向这一新一旧两台服务器。
- 考虑到数据库安全,购买了阿里云的RDMS服务,不再担心数据丢失与备份问题。
- 给服务器创建了一些短信告警。
第三阶段 - 天使在望
- 注册用户竟然达到了惊人的10万。
- 一些调皮的用户开始对你的系统进行业务测试,你开始关注防火墙与 SQL 注入等安全问题。
-
为队列系统购买了数台服务器充当RabbitMQ Cluster与Worker Cluster角色。将一些非实时性与高消耗任务迁移到队列。
- 发生短信/邮件。
- 计算用户行为。
- 统计各项数据报表。
- 同时购买了阿里云的RDMS从库,使用KingShard等中间件进行透明读写分离。CPU不在持续在80%以上。
- 开始开发全端客户端,使用Access Token权限机制代替Session。
- 开始处理当初写下得烂SQL,优化系统性能。
- 招聘了 程序员 小B,小C。
第三阶段 - 数据量的盛宴
- 你开始从别人的口中听到你的产品消息。好的或者不好的。
-
系统数据量开始以超过60度角的水平递增,你坐在电脑前
tail -f /var/log/nginx.access.log享受着qps带来的荣耀感。 - 你开始在办公室挂了2块屏幕显示当前系统的平均响应时间和异常总数。
- 几张极度增长的 MySQL 数据表开始让你担忧,开始设计下一代系统。引入了分表分库,将搜索功能迁移到了ElasticSearch。你在Google上疯狂的搜索SQL优化技巧。
-
开始将一些独立的服务从主系统剥离,使用RPC进行构建。
- 权限系统
- 存储系统
- 多媒体处理系统
- 验证码系统
- 你的日PV达到了千万级。内部系统的hits达到了数亿。
- 你从几篇博客里学习了几篇DDD的知识,要求程序员小B、小C开始写单元测试。直接使得小C的不满,导致小C的离职。小C认为小单元测试是对他技术的不信任。你没有多说什么,招聘了程序员小D,同时将小B提拔为技术总监,你开始将精力放到了你不擅长的商务领域。
第四阶段 - 全球覆盖
- 你终于迎来了你的第一个海外客户。但是你的客户将他那高达2300ms的ping截图甩你脸上令你羞愧不已。
- 下定决心开始构建全球系统。
- 将静态资源存储在Amazon S3,并且使用七牛回源到中国大陆。
- 使用阿里云的智能域名解析,将域名的ip解析到离客户最快的海外节点。海外节点与主系统构建VPN系统相连接。
- 开始引入多语言系统,对系统的错误码,文案进行多语言翻译。
- 你开始拥有了6位程序员,你将小B和小E分为系(加)统(班)保(不)障(给)组(钱).其余人分为前端后端两大组。
- 小B和小E完善了你的Bug Worker程序,引入了完善的ACK机制和异常处理,解决了偶尔充值不到账的问题,客服小U对小E心生爱意。
终于,你拥有了一个现代化的全球Web后台系统。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Agile Web Development with Rails, Third Edition
Sam Ruby、Dave Thomas、David Heinemeier Hansson / Pragmatic Bookshelf / 2009-03-17 / USD 43.95
Rails just keeps on changing. Rails 2, released in 2008, brings hundreds of improvements, including new support for RESTful applications, new generator options, and so on. And, as importantly, we’ve a......一起来看看 《Agile Web Development with Rails, Third Edition》 这本书的介绍吧!