从中国电信和中国移动的套餐使用查询业务浅谈数据同步

        6月的最后一天,想查查自己的套餐使用情况,于是发短信给电信客服,得到的回复是这样:“尊敬的用户您好!每月1-2号全天、3号的0点至8点及月末最后一天为系统出账期,可能无法查询您的消费情况,敬请谅解!”。心想,短信查询是这样,通过网站查询是不是呢?于是进入电信官网,输入自己的账号查询套餐使用情况,结果得到的是相同的回复。见下图:


 


        同样的,我登录到移动的官网,进行相同的操作,却能够正常查询到套餐使用情况。


 


        于是,便有了这篇文章。浅谈中国电信和中国移动的数据同步。

 

         写之前吐槽两句,每月1-2号全天、3号的0点至8点及月末最后一天为电信的系统出账期,这时间也太长了吧,有多少用户的数据需要处理?再来看看中国移动,据我所知,没有中国电信的所谓系统出账期,任何时候(不出意外)查询自己的套餐或者是余额都可以得到快速的回复。中国电信的用户为1.323亿,包括4115万的3G用户;中国移动用户规模达到6.616亿户,包括5658万3G用户。中国移动的用户数量把中国电信的用户数量甩了几条街。移动具有如此庞大的用户,产生的数据可想而知,却没有所谓的系统出账期,保证了用户获取信息的实时性,而中国电信呢?不说了。

 

        如何提高并发效率,可以使用悲观锁和乐观锁进行控制。悲观锁:利用数据库本身的锁机制实现,可以根据具体业务情况综合使用事务隔离级别与合理的手工指定锁的方式比如降低锁的粒度等减少并发等待。乐观锁:利用程序处理并发。方式大概有以下3种:对记录加版本号、对记录加时间戳、对将要更新的数据进行提前读取、事后对比。不论是数据库系统本身的锁机制,还是乐观锁这种业务数据级别上的锁机制,本质上都是对状态位的读、写、判断。

 

        对于数据的访问,无非是通过锁进行控制。我们对套餐进行查询,执行了一次Select,然后对套餐的更新执行的是Update,如何在Select的时候保持数据的一致性,这就是中国电信和中国移动需要考虑的问题。这一点中国移动做得比中国电信稍好。还有就是如何在7X24小时内保证数据及时更新,没有系统结账期,这是中国电信应该考虑的问题。系统的数据如何及时地同步也是很重要的,最好选择用户活动频率低的时候。无论什么时候,用户总是第一的,如果有些地方用户体验不好,对于一个公司的发展也是很不利的。

 

        好文推荐

        数据库锁


        数据库并发控制技术


我的邮箱wgbno27@163.com  新浪微博@Wentasy27
  微信公众平台:JustOracle(微信号:justoracle)
  数据库技术交流群:336882565(加群时验证 From CSDN XXX)
  Oracle交流讨论组https://groups.google.com/d/forum/justoracle
  By Larry Wen


katoon Sina CSDN
@Wentasy 博文仅供参考,欢迎大家来访。如有错误之处,希望批评指正。原创博文如需转载请注明出处,谢谢 :) [CSDN博客]
posted @ 2013-07-01 21:26  爱生活,爱编程  阅读(1010)  评论(0编辑  收藏  举报