本文是WOT2016互联网运维与开发者大会的现场干货,新一届主题为WOT2016企业安全技术峰会将在2016年6月24日-25日于北京珠三角JW万豪酒店隆重召开!
嘉宾简介
温敏,2014年加入浪淘金,担任运维负责人。在移动端用户和数据快速增长的过程中,凭借自身超强的学习能力,有力保障了系统的稳定性,同时积累了丰富的移动应用运维经验。此前在多家公司长期从事系统运维工作,具备丰富的运维业务和管理经验。
WOT2016互联网运维与开发者大会的运维安全专场的演讲中,温敏分享了"她社区"从0到千万月活的快速增长过程中,对运维提出的挑战,从运维系统架构、网络等各个方面所做出的应对等。
背景介绍
她社区安卓版本去年4月份上线,两个月后上线了iOS版本。经过大概八个月的时间,也就是2015年底时,做到月活跃度达千万量级,用户发帖量200w左右,每日新增的图片和音频达200GB。目前她社区已经拥有6000多个圈子,有1300多位圈主,这些圈主也是由用户来构成的,来负责圈子的一些管理工作。
初期业务构架
在早期为了让业务尽早上线,并没有一个大而全的整体构架。做了一些基本的组件,比如用Nginx做代理,后端的应用服务用到Redis、Memcache等,底层的数据存储是用的Mysql、Mongodb。在图片存储和日志搜集方面还用到一些第三方的组件。
出现的问题以及解决方案
在用户上涨的过程中,有一些问题也逐渐浮出水面。主要的问题有:网络问题、组件问题、存储问题、后续处理问题等。
***,网络问题。
用户量上来后经常会遇到劫持问题。DNS劫持,我们使用了第三方的httpdns来解决了这个问题。还有就是内容劫持,为解决这个问题走了很多弯路。比如更换域名、更换IP、对代码做一些混淆等。刚开始会有一点效果,但是后来还会恢复到劫持状态,***没办法上线https,把域名、把IP这些信息也全部更换了。目前来说也没有再发现大批量劫持的情况。
还有网络性能慢的问题。因为上线之初对这方面的考量比较少,对线路质量大多没有做优化。解决方案就是找一些优质线路做反向代理,基于这点我们可以对用户的网络性能进行分析。通过客户端自动上报到服务端,在服务端把数据包压缩,把日志格式化,把日志存储到后端,最终通过计算生成可视化的图表。
第二,数据库。
首先面临的问题是数据量大。我们做了一个分表的操作,对应用透明。但是分了表之后ID会出现问题,所以使用了第三方的ID生成。还有就是性能问题,可以通过升级硬件,比如硬盘、CPU等来解决。SQL也需要专门优化,辅以数据变更服务通知来减少对数据库的读写压力。
第三,存储。
目前是使用fastdfs文件系统,容量大概是三十四五T左右。这里都是用户上传的图片,我们会对图片做一些裁图或者质量压缩,主要还是能优化用户打开图片的速度。还有一些是音频处理,主要是做一些格式转换。
第三方云存储我们也调研过,都比较稳定成熟,各种API也丰富,数据处理种类多,目前这个工作已经做完了,音频、图片、视频也都会使用第三方云存储,使用它们原生处理的功能。
以上几点说完,总来来讲整个架构已经处于一个比较稳定的阶段。当然,中间还有一些细节的、小的问题,比如数据读写频繁等。除了这些基础功能外,还有自动化以及运维相关的功能。包括DNS管理、CDN管理、Git管理和上传文件或者定期任务等。总的来说,八个月当中,主要做了这些工作。
演讲视频:http://edu.51cto.com/lesson/id-100755.html