Web服务运行时间很慢,导致网页运行缓慢

时间:2014-12-15 14:29:08

标签: php performance soap time loading

我使用下面的第三方代码为在我的网上商店下订单的客户发送短信,似乎这个代码加载缓慢,导致我的订单确认页面(里面有这个代码)加载缓慢。

有没有我可以使用此代码的解决方案,但它的速度慢不影响我的页面?

由于

// Send SMS
/*
ini_set("soap.wsdl_cache_enabled", "0");
$sms_client = new SoapClient('http://87.107.121.54:2620/post/send.asmx', array('encoding'=>'UTF-8'));

$parameters['username'] = "xxxxxxxxxxx";
$parameters['password'] = "xxxx";
$parameters['to'] = "$phone";
$parameters['from'] = "1000947320";
$parameters['text'] ="test";
$parameters['isflash'] =false;

$sms_client->SendSimpleSMS2($parameters)->SendSimpleSMS2Result;

*/

1 个答案:

答案 0 :(得分:0)

使确认页面将值添加到数据库中并创建一个处理数据库中值的脚本,这意味着: 当用户进入页面时,您的代码将执行以下操作:

INSERT INTO sms SET to='$to', text='$text', sent=0;

然后你创建一个执行以下操作的脚本:

ini_set("soap.wsdl_cache_enabled", "0");

$parameters['username'] = "xxxxxxxxxxx";
$parameters['password'] = "xxxx";
$parameters['from'] = "1000947320";
$parameters['isflash'] =false;

$sms_client = new SoapClient('http://87.107.121.54:2620/post/send.asmx', array('encoding'=>'UTF-8'));

$query = mysql_query("SELECT * FROM sms WHERE sent=0");
while( $message = mysql_fetch_assoc($query) ) {
    $thisMessage = $parameters;
    $thisMessage['to'] = $message['to'];
    $thisMessage['text'] = $message['text'];

    $sms_client->SendSimpleSMS2($thisMessage)->SendSimpleSMS2Result;

    mysql_query('UPDATE sms SET sent=1 WHERE id='.$message['id']);
}

你在cron中运行这个脚本,让我们说每分钟或你想要多久。