我有一个cronjob每个小时运行,解析15万条记录。每个记录在MysqL表中单独汇总。我使用两个Web服务来检索用户信息。
>用户人口统计(ip,国家,城市等)
>电话信息(如果是座机或手机,如果是手机什么是操作符)
每当我获得1条记录,我检查我是否有信息,如果不是我称这些Web服务。跟踪我的代码后,我发现这两个调用需要2到4秒,这使得我的cronjob非常慢,我无法按时编译统计信息。
有没有办法使这些Web服务更快?
谢谢
解决方法
简单:
在本地获取数据并使用mellissa数据:
>为ip:http://w10.melissadata.com/dqt/websmart/ip-locator.htm
>电话:http://www.melissadata.com/fonedata.html
您还可以使用memcache或APC缓存它们,这将使其更快,因为他不必从api或数据库请求数据。