php - mysql调用接口实现数据同步的问题
伊谢尔伦
伊谢尔伦 2017-05-16 13:06:33
[PHP讨论组]

1.情景描述:
现在本地数据库需要与药房数据库同步库存(字段)信息,实现方式是调用药房的接口获得单一药品的库存。
2.解决方案:
定时任务时间,如果几分钟(例如:2分钟)同步一次,我查询本地数据库遍历每条记录调接口,更新每条记录。
3.问题:
本地数据库几万条数据,同时取出操作内存肯定会爆掉,而且2分钟还没同步完,又重新执行怎么办?

有点模糊的思路,分块取,例如每次取100条进行更新。怎么设计,测试才能达到一个比较好的效果呢?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(2)
PHP中文网

没有太明白需求,只能给个参考:

一、如果有权限修改药房数据库的话:

直接在药房数据库添加一个触发器,当库存修改的时候,
主动同步到本地(前提是本地要做映射,也就是可以在外面访问)。

二、如果是无权修改药房数据库:

其实是不需要,每隔2分钟去同步一次的。本地在展示的时候,比如,
一页展示10个产品,那在取数据时候,数据的库存字段是去药房取,
而其它字段在本地取(远程取来的时候,做一个本地缓存,防止多从访问去远程取多次)

我想大声告诉你

楼主先确认一下,通过接口调用单一药品的库存,你2分钟能全部查完吗,如果能,如此频繁的io操作不如先用Redis保存,然后再做个定时任务后面插入到数据库里。

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

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