背景介绍
高校教务系统是最常用的业务系统之一,每当选课和查询成绩阶段,压力堪比“12306”,尽管学校给选课系统配备的硬件不断升级,从几万的服务器到几十万的服务器还是无法保证性能需求。
老师关心的问题
1.如何解决学生选课难的问题?
2.如何避免服务器宕机?
3.教务系统服务器运行状态如何监控?
4.如何利用合理成本应对瞬间飙高的峰值请求?
山石网科应用交付解决方案
问题分析
因为高校教务系统日常流量并不大,只有在选课和查询成绩阶段,并发和新建才会爆发式增长。这种情况下,一味地提升服务器硬件和性能变得不那么经济。有没有成本合理,而又行之有效的解决方案呢?
解决方案
答案是肯定的,针对高校突发高并发场景,山石网科应用交付产品提供如下解决:
- 服务器资源均衡分配
采用动态比率算法,时刻保证资源池中性能最好的来响应客户端的请求
因为学生登录选课系统页面基本相同,可以开启连接复用有效减轻服务器压力。
- 有效预防Web服务器、数据库服务器宕机
管理员根据服务器的实际处理能力,对服务器配置最大连接数和连接速率限制,防止突发业务流量超过服务器最大性能,将服务器击垮。
山石网科应用交付支持服务器防浪涌保护,一旦访问量超出预设值,将自动开启排队机制,既能避免学生连接选课系统因为人数过多被野蛮中断,也能避免服务器一次承载的访问量过大而导致宕机造成损坏。
在服务器达到其最大容量时,提示页面,使后续用户自动等待,避免反复刷新。如“当前是选课高峰,请稍后重试”,从而提升访问体验
- 教务系统健康检查,有效检测服务器状态
支持通过SNMP读取教务系统服务器CPU/内存/磁盘的健康状态,实时检查服务器性能指标。
开启选课系统页面URL健康检查,可检测IIS挂死、页面出错等应用级的健康检查。
- 有效遏制刷课软件对服务器的冲击
通过山石网科专业的流控功能(iQOS),限制每个学生同时登录服务器次数,防止学生通过刷课软件大量向服务器发送请求,导致服务器崩溃。
注:若存在NAT配置,该项功能谨慎使用。
Web防护功能,通过解析应用层数据,精确匹配到具体业务,通过对源IP检测对该业务的访问速率,识别是否存在软件刷课行为,使用重定向/阻断等缓解方式,对识别到的刷课行为进行阻断
高性能抗DDOS能力,可有效识别各种网络层和应用层攻击
- 智能运维监控:
监控并显示每台真实服务器的使用情况,包括但不限于新建连接、并发连接、流量、接入用户数等。当出现服务不可用时,可通过短信或邮件,及山石网科云景APP及时报障。
- 支持容器服务器联动,构建一套自适应的IT资源系统:
如果高校教务系统使用容器部署,山石网科应用交付还支持与K8S联动,实现容器云平台的弹性扩展
最后,山石网科希望通过应用交付高校高并发解决方案,助力每位同学都能选到课,选好课。