um redis
servidor está sendo executado em um namespace de rede diferente. Estou tentando conectar um cliente ao redis
servidor, ele fica esperando mas não obtém resposta, já faz horas.
Código do lado do cliente:
int main(){
// ***** Pipeline *****
auto redis = Redis("tcp://192.168.122.50:6379");
// Create a pipeline.
// auto pipe = redis.pipeline(false);
sleep(5);
int ep = 1;
while(true){
cout<<"========================"<<ep++<<"==================================================\n";
auto pipe = redis.pipeline(false);
for(int i=1; i<=1000; i++){
string s = to_string(i);
if(i%2 == 1){
pipe.set(s, s);
}
else {
string st = to_string(i-1);
pipe.get(st);
}
}
auto pipe_replies = pipe.exec();
time += duration;
mntime = min(duration, mntime);
mxtime = max(duration, mxtime);
cout<<"RESULTS\n";
for (int i=1; i<=1000; i++) {
if (i%2 == 1) {
auto set_result = pipe_replies.get<bool>(i-1);
cout<<set_result<<"\n";
} else {
OptionalString get_result = pipe_replies.get<OptionalString>(i-1);
if (get_result)
cout << *get_result << endl;
else
cout << "key does not exist" << endl;
}
}
//cout<<"============================================================================\n";
pipe.discard();
}
Saída Terminal:
secondaryvm@secondaryvm:~/tests$ ./hclient
========================1==================================================
Já faz uma hora, ainda está esperando, então analisei com tcpdump
.esseé a saída do fluxo tcp de tcpdump
. Também tentei executar ping na porta em que o servidor Redis estava sendo executado e ela estava aberta.
root@secondaryvm:/home/secondaryvm/tests# nmap -p 6379 192.168.122.50
Starting Nmap 7.60 ( https://nmap.org ) at 2020-12-30 16:26 IST
Nmap scan report for 192.168.122.50
Host is up (0.000050s latency).
PORT STATE SERVICE
6379/tcp open redis
MAC Address: FE:2D:4A:25:55:EE (Unknown)
o que esta acontecendo aqui? e como evitá-lo?