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