2008
imean
这个作者很懒,什么都没留下…
展开
-
数据库水平分库框架设计
1水平分库最近在做一个IM系统,之前的旧系统没有考虑到用户量会增长得这么庞大,导致现在数据库性能瓶颈非常严重,迫切需要分库,用于减少每个库的用户数量,进而分摊负载,最终达到数据库横向扩展的目的。数据库水平分库是以用户Id为分库的依据,同一个用户的所有数据都在同一个库上,每个库有着相同的表结构。为了实现开发人员来说对数据库的透明访问,分库框架需要解决二个问题:1、 方法参数中有用户id的数据的新...2008-08-23 11:58:12 · 120 阅读 · 0 评论 -
海量数据迁移中碰到的分页性能问题
最近在做一个近千万级别的数据迁移(从oracle到mysql),由于数据在迁移前后表结构发生很大的变化,比如原来几个用户相关的信息表中若干个字段要转成一个vcard格式的xml存到新表的一个字段中,没办法使用数据库的迁移工具完成,必须通过写代码的方式进行转换迁移。这样就存在一个问题,不可能将旧表的近千万的数据一次性加载到内存中进行转换迁移,必须进行分页。 一开始,我使用...2008-08-23 23:51:25 · 216 阅读 · 0 评论 -
内存异步及JMS异步框架实现
一般来说,对于那些处理时间比较长,需要马上响应并且做成异步后不会影响其它流程的做成异步。比如用户注册成功后发邮件给用户,这个可以在用户注册成功后马上返回,而不需要等到邮件发送成功才返回。异步有二种方式:内存异步和JMS异步。 内存异步即把要处理的请求放到内存队列中,然后由多个线程去消费。这种方式性能比较高,但是会存在请求丢失和内存溢出的风险。比如服务器突然down机,那么队列...2008-09-06 10:43:55 · 379 阅读 · 0 评论