sql >> Databasteknik >  >> NoSQL >> Redis

Missbruka cURL för att kommunicera med Redis

När du vill använda curl behöver du REST över RESP, som webdis, tinywebdis eller turbowebdis. Se https://github.com/markuman/tinywebdis#turbowebdis-tinywebdis--cherrywebdis

$ curl -w '\n' http://127.0.0.1:8888/ping
{"ping":"PONG"}

Utan ett REST-gränssnitt för redis kan du till exempel använda netcat.

$ (printf "PING\r\n";) | nc <redis-host> 6379 
+PONG

För lösenordsskyddad redis kan du använda netcat så här:

$ (printf "AUTH <password>\r\n";) | nc <redis-host> 6379
+PONG

Med netcat måste du bygga RESP-protokollet själv. Se http://redis.io/topics/protocol

uppdatering 2018-01-09

Jag har byggt en kraftfull bash-funktion som pingar redis-instansen till varje pris över tcp

    function redis-ping() {
            # ping a redis server at any cost
            redis-cli -h $1 ping 2>/dev/null || \
                    echo $((printf "PING\r\n";) | nc $1 6379 2>/dev/null || \
                    exec 3<>/dev/tcp/$1/6379 && echo -e "PING\r\n" >&3 && head -c 7 <&3)
    }

använd redis-ping localhost



  1. Python redis prenumerera kan inte få alla data?

  2. Introduktion till Redis Data Structures:Sets

  3. Heroku:Bakgrundsuppgifter i Python med RQ

  4. Mongoimport av JSON-fil