第八届大赛--A组赛题
测试数据&测试脚本将于3月中旬前在此公布。
赛题名称: 缓存高可用 组类: A 本科及以上 | 赛题简介:介绍整个赛题的思路和整体要求 | 互联网时代要求数据存储具备高性能、高并发、低成本。传统的数据库,已经满足不了现阶段互联网应用的需求,这时候NoSql数据应时而生,其中的典型就是开源NoSql数据库Redis。 数据是用户宝贵的财富,生产环境中数据库的高可用设计尤其重要,本赛题就是在设计一个高可用的Redis缓存系统。 本赛题是在两台物理机上使用Redis组建高可用的系统,如图1所示: 
图1 组网示意图
| 赛题业务场景:描述赛题相关的真实企业业务背景。从真实场景中,适当简化或者提炼出适合比赛的赛题场景 | 业务场景: 业务把数据存储在内存数据库Redis中,假设业务是铁路列车售票系统,Redis里存储的数据是K1102这趟车各个站的名字、各个站点的到时和发时,余票信息等,这些数据用户访问会比较频繁,Redis性能很高,非常适合存放这些访问频繁的数据。如果只有一台Redis服务器提供服务,一旦出现断电、网络中断、服务器磁盘损坏、服务器故障,用户会访问不了,导致页面刷不出数据。 所以我们需要设计一个高可用系统,保证在各种异常情况下,不用人工参与,能自动在短时间内恢复服务,甚至希望这个恢复服务的时间越短越好。 | 功能性需求 | 实现Redis的数据存取操作。 实现随机单点故障下1分钟内自动恢复业务。 基础题在A机器、B机器任意节点掉电情况下,服务能在1分钟内自动恢复服务。
4、A机器掉电,1分钟内恢复服务;A机器拉起,B机器掉电,1分钟内恢复服务。
| 非功能性需求 | 实现Redis不低于80000QPS的性能
| 其他限制条件:开发环境、实验平台、开发语言、数据库、编译器等限制条件(请尽量明确) | 1、考虑节省成本。 2、考虑服务稳定性。 3、运行环境用linux系统。 4、开发语言不限,编译器不限。 | 测试数据或平台:提供给参赛者的测试环境和测试数据。(可提供电子档) | 
| 开发所需设备及设备指标需求说明 | 开发需要服务器两台,安装linux系统,至少2核CPU,内存1G以上,网络最好千兆网。
| 其他要求 | |
|