HTTPSQS学习
<?php include_once("httpsqs_client.php"); $httpsqs = new httpsqs("59.108.228.8",1218,"ituji123", "utf-8"); //$httpsqs = new httpsqs("59.108.228.8",80,"mypass123","utf-8"); //var_dump($httpsqs); /* 1. 将文本信息放入一个队列(注意:如果要放入队列的PHP变量是一个数组,需要事先使用序列化、json_encode等函数转换成文本) 如果入队列成功,返回布尔值:true 如果入队列失败,返回布尔值:false */ /**/ $message = "i text queue data"; for($i=0; $i<100; $i++) { $result = $httpsqs->put("line_test", $i.$message); var_dump($result); echo "\n\t"; } /* 2. 从一个队列中取出文本信息 返回该队列的内容 如果没有未被取出的队列,则返回文本信息:HTTPSQS_GET_END 如果发生错误,返回布尔值:false */ $result = $httpsqs->get("command_line_test"); var_dump($result); /* 3. 从一个队列中取出文本信息和当前队列读取点Pos 返回数组示例:array("pos" => 7, "data" => "text message") 如果没有未被取出的队列,则返回数组:array("pos" => 0, "data" => "HTTPSQS_GET_END") 如果发生错误,返回布尔值:false */ //$result = $httpsqs->gets("command_line_test"); //var_dump($result); /* 4. 查看队列状态(普通方式) */ $result = $httpsqs->status("line_test"); var_dump($result); /* 5. 查看队列状态(JSON方式) 返回示例:{"name":"queue_name","maxqueue":5000000,"putpos":130,"putlap":1,"getpos":120,"getlap":1,"unread":10} */ //$json = $httpsqs->status_json("command_line_test"); //var_dump($json); //echo "\n\n\n"; /* 6. 查看指定队列位置点的内容 返回指定队列位置点的内容。 */ //$result = $httpsqs->view("command_line_test", 5); //echo "###7.view result:\r\n"; //var_dump($result); //这里没有测试通过,等一下用提供的实例运行一下看看 /* 7. 重置指定队列 如果重置队列成功,返回布尔值:true 如果重置队列失败,返回布尔值:false 重置就是重新设置,以前的信息全部没有了 */ //$result = $httpsqs->reset("command_line_test"); //var_dump($result); //echo "\n\n\n"; /* 8. 更改指定队列的最大队列数量 如果更改成功,返回布尔值:true 如果更改操作被取消,返回布尔值:false */ /*$result = $httpsqs->maxqueue("command_line_test",10000000); var_dump($result); echo "\n\n\n"; $json = $httpsqs->status_json("command_line_test"); var_dump($json);*/ /* 9. 修改定时刷新内存缓冲区内容到磁盘的间隔时间 如果更改成功,返回布尔值:true 如果更改操作被取消,返回布尔值:false */ //$result = $httpsqs->synctime($num); //这个没试过 ?>
<?php include_once("httpsqs_client.php"); $httpsqs = new httpsqs("59.108.228.8",1218,"ituji123", "utf-8"); $name = "line_test"; while(true) { $result = $httpsqs->gets($name); $pos = $result["pos"]; //当前队列消息的读取位置点 $data = $result["data"]; //当前队列消息的内容 if ($data != "HTTPSQS_GET_END" && $data != "HTTPSQS_ERROR") { //var_dump($data); //echo "\n\t"; //...去做应用操作... //这里来做个测试 file_put_contents("httpsqs.txt", $data."\n\t", FILE_APPEND); } else { sleep(1); //暂停1秒钟后,再次循环 } } ?>