我通过对方开放的API,从对方的webservice读数据
现在碰到一个问题,我从里面读出10000条数据,这些数据以数组的形式存放,问题是,这个时间需要好长好长,而且老超时。我想问一下有经验的前辈,我这里读取能像读数据库一样读吗?这样查到多少条就从多少条开始读,就不会一下子出现过大读不出的问题了。
另外,我这样读出来的数据该怎么分页呢?这不是数据库操作。我不知道如何弄?
谢谢大家了。
服务器平台
php5+apache
使用php5内置的soap方式读取对方的webservice有无相关的代码参考呢?再次感谢。

解决方案 »

  1.   

    我的想法是
    1. 通过curl方式读(能比常规快一些);
    2. 既然读的慢,那就作一个缓存(存成缓存文件,并设置过期时间)
      

  2.   

    楼上,CURL方式的API,如何以这个方式来读呢?
    另外,缓存的话,因为数据经常有改动,需要实时读取,这方面如何做呢?
      

  3.   

    1. 对方的数据读取慢的事实决定你不可能每次都直接请求远程的webservice;
    2. 我的方法是在你的实际需求不是特别的实时对数据操作的情况下;
    3. php5有curl的module(详细使用参照php手册),它在远程取数据很不错,并且功能强大;
      

  4.   

    对方的API提供的数据慢本来就是一个瓶颈即便是用C去直接读也是这样你的统计或者其他操作是在等待数据读完的基础上的你应该找到慢的原因:
    a 如果在服务器上运行这样的索取数据的程式,看看服务器是否限制了带宽或者流量峰值
    b 让对方优化程序。如果对方慢 即便你用再高明的代码或者方法 也是徒劳的
      

  5.   

    已经有人通过这个API正常读写一万条数据了。
    对方的东西因该是没问题的
    我现在读不出这么多。