php - 如何高效的做数据覆盖操作
大家讲道理
大家讲道理 2017-04-10 15:34:59
[PHP讨论组]

我有一批数据是通过第三方接口更新的,那个接口是按分类获取的,同一个分类的下的数据每次获取玩要要进行覆盖处理, 比如图书这次获取的是1,2,3这三个id的数据三本书 过10秒我还按图书分类获取 获取的是2,3,4,5这四本书 那我就把最新的 2,3,4,5 四条数据覆盖到数据库(1删除 2,3 更新 4,5 添加)数据库目前是mysql 怎么高效的处理这个问题 接口刷新的频率很快 如果我每次都删除分类下所有数据再插入 锁表的时间实在不能忍受 求合理办法

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
PHP中文网
  1. 既然第三方接口更新的很快,那为什么本地要存呢,直接使用第三方接口的数据就好了。
  2. 如果本地一定要存,可以用redis替换mysql
  3. 如果一定要存到mysql中,可以先缓存起来,定时写回到mysql中

数据量有多大?能让mysql锁表锁很久??

黄舟

就只是按你说的来做,mysql,一个分类表,有个字段叫图书s,里面存了123,再刷新更新成2345。非常简单。

然后我看到了另外一个人的答案,加上你们的讨论明白不是这么简单的需求,你为什么不在问题中把这件事写清楚呢?

每个分类几百条还是一共几百条

无论哪种,你用redis做没有问题,不用担心锁表。

这样是不是会引出其他新的需求来证明这么做也不可以?

你看看一个问题,问出来,经过这么多的反复折腾,说了半天只是在和你确定需求,这中间经过了多少人反复的思索给你想解决的办法。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号