开课吧作为慧科教育集团旗下全球最大的兴趣学习社区,为用户提供课程分享和兴趣学习平台,对课程拍摄手法、视频制作方式、用户体验等不断进行创新和完善,实现学习的个性化和兴趣化,让优质学习资源得到更广泛共享。截至2015年5月,开课吧自主开发制作了20000多个微视频,拥有百万级注册用户。同时,开课吧整合国内应用性能管理领军企业 OneAPM 提供的解决方案,为用户打造了更优质的线上学习体验。
业务高速增长,对系统性能提出新要求
目前,开课吧的业务正在高速增长,线上平台性能已经成为开课吧最重要的「武器」之一,开课吧运维总监肖建峥表示,半年内他们的用户规模预计突破千万,用户的爆发性增长对运维的挑战会增加一个高度,而通过「人力资源」很难做到整体架构各个细节模块在高并发、高可用情况下的性能监控问题。尤其是现在正处于开学季,对开发和运维人员来说,这种周期性业务高峰给整个网站 PV 带来显著增长,此时他们对业务性能监控需求就变得非常迫切,这时候急需「未雨绸缪」,准备好迎接新的挑战。
希望打造极致用户体验,但缺乏对真实用户体验管理的专业监控工具
其次,对在线教育平台的用户而言,用户体验现在已经成为赢得市场先机「核心因素」之一。开课吧希望将用户体验做到极致。但是由于国内基础的网络质量、浏览器类型、服务器端的响应时间等多种因素,可能会带来用户访问延迟等问题。一般而言,市面上的性能监控软件只能监控系统后台的性能体现,或者通过抓取网络报文来统计网络性能,缺少从系统服务层、应用层、用户体验层、业务交易层等多个环节提供全栈式的性能监控,而且缺少真实用户端的专业性能分析工具。
多技术栈需求,缺乏统一的性能监控平台
此外,开课吧采用了高并发、高性能、高可用性的服务架构,同时还采用了云基础架构解决方案以及智能多 CDN 路由技术来保证用户体验。但由于产品线的不断扩张,技术层面增添了很多新元素,其中 Java 和 Ruby 这两种开发语言占据比重很大,随着开课吧开始布局移动端,实现多语言、多种平台的性能监控给开课吧的运维人员带来了一个新的挑战。
携手 OneAPM 打造最优质的在线学习体验
开课吧的运维总监肖建峥表示:「此前我们使用的是 NewRelic 的性能监控产品,但是随着开课吧业务的高速增加,在很多层面对性能监控提出了更高的需求,在对比了国内外多家产品后才最终选择了 OneAPM 的 Application Insight(Ai) 和 Browser Insight(Bi)产品,分别深入到代码级的后台服务监控,以及监控前端的真实用户体验」。
OneAPM 不仅帮助开课吧实现了代码级应用性能管理,还实现了对前端浏览器、网络传输、应用性能、中间件性能、数据库性能的自动关联及分析功能,真正意义上帮助开课吧的技术和运维人员找出影响业务系统的性能问题。
「Ai 产品能够自动发现我们应用在执行过程中涉及的软硬件架构组件,以及他们之间的交互矩阵,这样的话,我们就能够把握整体的部署架构,实时了解全业务的拓扑结构,公司的管理层对这点非常看重,因为它帮助我们整个开发团队,从用户的角度来对网站性能进行整体的优化」肖建峥坦言道。
开课吧目前的网站月 PV 高达数千万,而随着新业务陆续上线,访问量也将成倍增加,所以了解前端真实用户的体验,发现性能瓶颈对于优化页面结构和代码至关重要。通过 Browser Insight ,后台会自动收集与用户息息相关的浏览器端性能数据信息,从页面加载时间来度量浏览器端的性能,并从多个维度来拆分页面加载的时间分布,为网站性能优化提供最直观的数据参考。
值得一提的是,OneAPM 产品设计理念跟 Google Analytics 比较相似,收集数据全部是来自访问网站真实用户的实时数据。通过记录每位真实用户的页面加载时间、平均响应时间、地理位置、浏览器类型和版本、Java 错误、Ajax 错误、DOM 处理以及页面渲染时间,并提供有效的一站式性能评估。最终,对开课吧所有的终端用户满意度进行全面真实的了解,从而帮助开发人员快速确定应用性能的瓶颈所在,并迅速解决浏览器端的性能问题。
自定义事务功能为开课吧打造「个性化定制」需求
众所周知,事务是真实用户体验的直观反映:它们抓取了用户与应用交互时,用户体验到的实时性能数据。开课吧希望能够对几个核心业务指标进行重点监控,确保整体的用户体验不会受到重大的影响。肖建峥表示非常看重「自定义事务」的动能,因为在线教育必须重视用户线上的使用体验,所以必然有自己的个性化需求。
通过 OneAPM 的自定义事务功能,开课吧可以自定义获取一些关键事务(比如学员登录时间、首屏加载时间等等)的响应时间及及其各个组件的响应时间。这些响应时间再与满足业务需求的「基准时间」进行比较,从而就可以帮助帮助开课吧的运维和开发人员,确定目前网站和移动端的应用是否在正常工作。譬如,如果某个事务的响应时间大于设定的阈值,开课吧的运维人员,便判定其运行异常,就可以马上进行处理,从而将影响用户体验的因素缩减到最小。
开课吧借助 OneAPM 解决了 Ruby 性能优化的难题
开课吧的运维总监肖建峥对 OneAPM 高度认可,很重要的一点就是因为 OneAPM 能够提供全语言和全平台的应用性能监控,不仅支持 Java、PHP 、Python、Ruby 和 .NET 等多种语言框架,而且还支持 Android 和 iOS 两种操作系统,并支持几乎所有的主流框架。尤其是对 Ruby 语言的监控,开课吧的需求最为迫切,因为这种新兴的开发语言,虽然使团队的开发速度有了大幅度的提升,但是仍会有性能问题的担忧,OneAPM 独有的探针技术帮助开课吧很大程度上解决了对 Ruby 性能优化的难题。
开课吧运维总监肖建峥感言
「OneAPM 提供的应用性能管理整体解决方案,帮助我们节省了大量的时间成本和技术资源的投入,借助 Ai 产品我们能够精准定位到代码级别的问题以及性能瓶颈,同时通过 Bi 产品,我们也能够获取到前端的真实用户体验,我们也希望携手 OneAPM 为在线教育用户打造更好、更优质的线上学习体验」。
帮开发运维团队「减负」,专注核心业务开发
其实,在业务飞速增长的过程中,开课吧的开发团队希望将更多的精力集中到核心业务层面,而对系统性能的优化就迫切借助一个专业的第三方监控平台,通过 OneAPM 的产品,开课吧的运维团队就不再依赖个人的经验,通过清晰、直观的视图,就可以追踪所有应用的性能数据,真正意义上节省了大量的时间和人力成本。
随着移动互联网、云计算和大数据等前沿技术的迅速发展,现在,我们获取知识的方式已经发生了「颠覆式」变化,「教」与「学」可以不受时间、空间和环境的限制,在线教育面临前所未有的发展机遇。注重用户在线学习体验和学习成果的教育模式,已然成为在线教育的重中之重。
慧科教育集团简介:
慧科教育集团创立于2010年8月,目前包括线下品牌——战略性新兴产业综合教育服务商「慧科教育」,线上品牌——中国最大的高校在线教育一站式解决方案提供商「高校邦」、中国最大的泛IT职业教育平台「找座儿」、全球最大的兴趣学习社区「开课吧」,运用「互联网+」思维,通过线下线上资源实现多向联动,以 B2B2C、B2B、B2C、C2C 等多种模式服务于高校、企业及个人用户,构建出独特的线上线下相融合(O2O)的全产业教育生态系统。
本文系 OneAPM 工程师编译整理。OneAPM 是应用性能管理领域的新兴领军企业,能帮助企业用户和开发者轻松实现:缓慢的程序代码和 SQL 语句的实时抓取。更多详情请登录http://www.oneapm.com。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。