客户介绍:
某电子商务平台自2015年9月份对外提供服务,已在阿里云上稳定运行1年多,近期业务量突增。
据了解,此平台是一个会员制的在线交易平台,业务正在不断上升中,发展形势一片大好的同时,前端应用和后端数据库的压力却越来越大。
目前,该平台国内注册会员用户数已达数百万级别,有上百万的商品数量,在业务高峰期间一小时内可能会达到数万笔交易。
问题分析:
然而,由于应用设计和数据库没有充分优化的问题,导致数据库不堪重赋,CPU一直满负荷运行,整个平台运行缓慢,长此下去,会严重缩减客户数量,故需立即对数据库和应用进行全面优化。
此平台的操作系统是Windows 2008 R2X86_64,主机是16C、32G内存,使用的数据库是单节点Oracle 11.1.0.7 X86_64,并没有开启归档,也没有备份。
经过袋鼠云专家深入分析应用层的设计和数据库的负载情况,目前的CPU持续在95%以上,且有居高不下的态势,CPU负载和数据库等待事件见下图:
![2ddb11127b4ad768bae13a57071268f3968dee52](https://i-blog.csdnimg.cn/blog_migrate/39ad7c2d6a8767f75af52ea8af83c075.png)
![fd5589f389240a66b9f15dcf9741f50f336d4db5](https://i-blog.csdnimg.cn/blog_migrate/7693cbfaa0b9b8d154e6d3db7af0aae5.png)
解决方案:
袋鼠云团队从CPU的负载和数据库等待事件出发,分析数据库和应用中存在的问题,并对安全、网络、IO、主机ECS、应用设计、以及SQL等多方面存在的问题与客户经过多次沟通之后,给出的方案如下:
o
数据库迁移到Linux系统;
o 利用云盘可随意挂载到ECS的特性,结合SLB,并使用袋鼠云EasyDB的HA模块,把数据库做成高可用模式;
o 考虑到电子商务平台的读特性,搭建Oracle DG,备库提供只读模式,Oracle HA+ADG见下图:
![2d7b3a83fc9fc3f84b5cdc0977b9f1e839554a0d](https://i-blog.csdnimg.cn/blog_migrate/5161a8c030458520ee6cbc926c62b3e3.png)
Oracle HA+ADG架构图
o
使用EasyDB的备份模块,自动备份并上传至OSS;
o
利用EasyDB的TopSQL功能,找出占用资源严重的SQL语句,结合执行计划,优化SQL语句,同时调整表结构;
![a4039546085883e2b445c553e7c61df3d83dddb8](https://i-blog.csdnimg.cn/blog_migrate/244ecff6b9fe5679789e7dd0a2734d9d.png)
EasyDB TopSQL 运维报告
o
考虑到读并发量的日趋增大,需要规划和指导开发人员完成redis缓存。
o 同时结合袋鼠云EasyDB提供一整套应用设计、数据库和未来3-5年的可行性云上高可用解决方案以及规划。
方案效果:
专业的服务态度,有效的技术方案,让该客户对袋鼠云连连称赞。
在袋鼠云实施完成并优化后,该电商平台双11当天该平台的网站点击量是之前的3倍多,效果远超出预期。
文中商品:
袋鼠云-Oracle11g镜像(11.2.0.4 Centos 6 64位 Java运行环境)
EasyDB: 一站式数据库管理平台,Oracle/MySQL DBA运维神器
数据库优化服务(Oracle性能优化/MySQL性能优化/SQLServer性能优化)