Httpsqs队列基础
一、加入队列
get协议
"http://115.182.209.189:1218/?name=ABC&opt=put&auth=miyao"
#返回结果,如果是ok 证明入队列成功
HTTPSQS_PUT_OK
post协议
curl -d "http://115.182.209.189:1218/?name=ABC&opt=put&auth=miyao"
#返回结果,如果是ok 证明入队列成功
HTTPSQS_PUT_OK
#如果入队列失败,返回:
HTTPSQS_PUT_ERROR
#如果队列已满,返回:
HTTPSQS_PUT_END
二、读取队列
# GET方式取出UTF-8格式 # curl "http://115.182.209.189:1218/?charset=utf-8&name=ABC&opt=get&auth=miyao" # 取出的是未取出的第一条数据,执行一次取出一条
# 查看队列中的第一100条数据
# curl "http://115.182.209.189:1218/?charset=utf-8&name=ABC&opt=view&auth=miyao&pos=100"
三、查看队列
"http://115.182.209.189:1218/?name=ABC&opt=status&auth=miyao" HTTP Simple Queue Service v1.7 ------------------------------ Queue Name: ABC //队列名称 Maximum number of queues: 1000000 //最大存储条数 Put position of queue (1st lap): 2 //队列总条数 Get position of queue (1st lap): 2 //取出条数 Number of unread queue: 0 //剩余条数 查看json格式 "http://115.182.209.189:1218/?name=ABC&opt=status_json&auth=miyao" {"name":"ABC","maxqueue":1000000,"putpos":2,"putlap":1,"getpos":2,"getlap":1,"unread":0}
四、代码操作
public class HttpSQS { //插入队列 data为数据 name为队列名 public Map<String,String> putHttpSQS(String name,String data){ MyHttp myHttp = new MyHttp(); String put=""; try { put=URLEncoder.encode(data, Init.encoding); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } return myHttp.doGet("http://"+Init.httpsqsIp+"/?name="+name+"&opt=put&auth="+Init.httpsqsPasswork+"&data="+put); } public Map<String,String> getHttpSQS(String name){ MyHttp myHttp = new MyHttp(); return myHttp.doGet("http://"+Init.httpsqsIp+"/?name="+name+"&opt=get&auth="+Init.httpsqsPasswork); }//http://117.25.148.115:1219?name=ABC&opt=status&auth=miyao
//根据数据关键字符串查找具体条数 name为队列名 id为总条数 value为模糊查询条件 public void getView(String name,int id,String value){ MyHttp myHttp = new MyHttp(); for(int i = 0 ; i<50000;i++){ Map<String,String> reset = myHttp.doGet("http://"+Init.httpsqsIp+"/?name="+name+"&opt=view&auth="+Init.httpsqsPasswork+"&pos="+(id-i)); if(reset.get("Status")!=null&&reset.get("Status").equals("1")){ if(reset.get("Msg").contains(value)){ System.out.println(value+" === "+(id-i)); } } } } public static void main(String[] args) { HttpSQS httpSQS = new HttpSQS();
//httpSQS.getView("ABC",429217,"5366112946559"); //查看 } }

浙公网安备 33010602011771号