前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分布式缓存在教育项目中的应用案例

分布式缓存在教育项目中的应用案例

作者头像
希望的田野
发布2020-03-26 17:24:11
5360
发布2020-03-26 17:24:11
举报
文章被收录于专栏:信息化漫谈
公有云业务发展非常快,根据细分场景不同的客户需求,延伸出种类繁多的产品。在某教育云项目中,应用了redis分布式缓存产品,在近期的远程教育中发挥了巨大的作用。

一、远程教育遇到了技术问题

近期学校集中通过pc、iptv等方式进行远程教育,对于后台的能力,普遍采用云计算架构。远程教育的特征主要有以下几点:

1、在上午、下午上课时间存在高峰效应。如果是全省集中平台,将存在上百万的同时并发。

2、业务流量带宽大。一般以视频为主要教学方式。

3、业务体验要求质量高。直播、互动业务对业务顺畅的体验要求非常高。

如果远程教育采用私有云的方式难以满足业务体验需求,主要表现为带宽不足、业务并发量不足。

二、采用公有云解决问题

1、针对高峰效应、带宽大、直播的需求,可以采用CDN进行流量分发,解决视频、静态网页的并发问题。这类解决方案介绍较多,不再详述。

2、针对动态网页的互动类业务(例如,互动问答),无法采用CDN加速分流,建议采用弹性伸缩+云主机+分布式缓存的解决方案进行解决。

三、为什么必须采用分布式缓存

弹性伸缩将造成随时上线、上线云主机,将会中断教育业务。传统的应用服务器,如tomcat、apache等,客户的登录状态信息session默认是放到云主机的单机中。使用弹性伸缩后,将根据cpu、带宽、内存等利用率随时增加、减少服务器,以应对业务分时段的波动。如果此时被减少的服务器上有客户正在使用,将造成session文件的丢失,此时,远程教育系统将要求学生再次登录系统,影响教学顺畅的体验。

如果我们采用了分布式缓存产品,将session文件放到统一集中的服务器中,将不会出现此类问题。

四、分布式缓存如何解决问题

分布式缓存产品采用内存存储,极大提高了效率。如果采用传统的Mysql等数据库进行集中的存储,速度相比redis、memcache等基于内存的数据库产品,更慢。

如下图,将session数据文件统一放到分布式缓存产品后,前端的web Server成为了无状态化,可以任意增加、减少前端的Web、应用服务器,而不会对客户的业务体验造成影响。

大型网站系统的分布式计算,是一个非常庞大的知识集合,今天我们讲解的仅仅是session数据的横向扩展。

如果您觉得好,希望长期关注本公众号的专业、风趣、实时的信息,请在以下二维码长按,以关注。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 信息化漫谈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
弹性伸缩
弹性伸缩(Auto Scaling,AS)为您提供高效管理计算资源的策略。您可设定时间周期性地执行管理策略或创建实时监控策略,来管理 CVM 实例数量,并完成对实例的环境部署,保证业务平稳顺利运行。在需求高峰时,弹性伸缩自动增加 CVM 实例数量,以保证性能不受影响;当需求较低时,则会减少 CVM 实例数量以降低成本。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档