开发者社区> 问答> 正文

实时显示库存,如何避免脏数据引起的问题

问题:公司需要实时显示自己的库存给客户的浏览器端,客户1w,后台备用查询更新的数据量不会过10W条,查询频率很高。
系统环境:java,mysql,jboss7
目前的解决方案:目前库存系统只是给少量客户使用的,就是在数据库加一列存储uuid做为锁,每次更新后更新锁,只有获取最新锁才能更新。其实就是一个一次性锁,只有拿到最新的那把锁才能进行更新操作。
目前的缺陷:虽然避免了写看到的脏数据,但是读依然存在读脏数据,并经常提示“请重新获取锁",客户处理效率低。客户已经上w了,总是手工查询数据库,客户效率极低,后台数据库处理也低了。
预想计划:客户端每隔2秒自动异步请求,将库存数据全部读到内存,更新首先内存时,首先更新到内存并快速返回给客户端,更新时同时发一条异步消息,让另外一个异步程序将”更新数据“从内存更新到mysql数据库;或者当更新数据到一定量时,flush一下将更"新的数据"同步到数据库去。
问题:是否有内存数据库能直接配置下自己就能同步给mysql?
求大神指点迷津

展开
收起
落地花开啦 2016-02-15 11:01:41 3256 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    MySQL主从复制:从机用来读取数据。

    2019-07-17 18:43:04
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
美团crash监控分析系统优化之路 立即下载
手机京东Crash自动分析处理系统 立即下载
面向失败设计 立即下载