架构设计问题

12-02-29 liujian1979
我先来描述下我的场景:

每天3、6、10点会定时执行任务,任务功能是:比如3点任务是在3点时刻把参加比赛人数以房间单位(每个房间6个人)组织在一块进行比赛。参加3点比赛是在提前一个小时,比如2点前报名的用户,一直排在那里

用Quartz做集群定时任务

用mysql数据库实现先在表中分配好房间,比如1000个房间,每房间6个位置,等3点到了就把2点前报名用户从另一张表倒到这些房间里,就是update操作。

我想请教这样做把负荷全压在数据库上,有什么更好方式和方法解决吗?

    

banq
2012-03-01 10:16
2012年02月29日 10:21 "@liujian1979"的内容
请教这样做把负荷全压在数据库上,有什么更好方式和方法解决吗 ...

不压在数据库,就压在内存上。

数据库进行分区分库,或者将常用数据加载到缓存中。

liujian1979
2012-03-06 09:20
如果压在缓存,但我知道缓存对于灵活的查询和搜索有很大的局限性,不知我理解的对不对,那banq老师能推荐开源的具有类似数据库这么灵活查询的缓存框架吗?谢谢

banq
2012-03-06 11:37
2012年03月06日 09:20 "@liujian1979"的内容
数据库这么灵活查询的缓存框架 ...

恐怕不能,现在NoSQL Ehcache都是有针对的缓存,比如Hibernate使用EHcache缓存,针对对象查询优化。

不要想通用解决方案,就你这个定时场景任务可以用缓存,如果计算量大,大数据Big data,可以考虑Hadoop等。

猜你喜欢