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"); //查看 } }

 

 

posted on 2020-05-13 17:40  三尺青峰  阅读(404)  评论(0)    收藏  举报

导航