Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

Nhận địa chỉ Redis Master từ Sentinel C #

Phải làm điều đó một cách khó khăn, tôi bắt chước lệnh redis-cli bằng cách sử dụng đoạn mã tiếp theo:(tất cả những gì còn lại là phân tích cú pháp kết quả từ phản hồi)

   public string GetMasterFromSentinel(string sentinelAddress)
    {
        TcpClient server;

        try
        {
            var splittedAddress = sentinelAddress.Split(':');
            server = new TcpClient(splittedAddress[0], splittedAddress[1].ParseInt());
        }
        catch (SocketException)
        {
            _log.Error("Unable to connect to server");
            return string.Empty;
        }
        NetworkStream ns = server.GetStream();
        var payload = new byte[] { 0x2a, 0x32, 0x0d, 0x0a, 0x24, 0x38, 0x0d, 0x0a, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x65, 0x6c, 
                0x0d, 0x0a, 0x24, 0x37, 0x0d, 0x0a, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x0d, 0x0a };
        ns.Write(payload, 0, payload.Length);
        ns.Flush();
        var data = new byte[1024];
        ns.Read(data, 0, data.Length);
        var recv = ns.Read(data, 0, data.Length);

        ns.Close();
        server.Close();
        return ParseResponse(data);
    }


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Python &Redis:Các phương pháp hay nhất về ứng dụng Trình quản lý / Nhân viên

  2. Làm thế nào để kết nối với máy chủ Redis từ xa?

  3. ActionCable trên AWS:Lỗi trong quá trình bắt tay WebSocket:Mã phản hồi không mong muốn:404

  4. Cài đặt và cấu hình Redis trên Ubuntu

  5. Cách trực quan hóa việc sử dụng Resque với Node.js, WebSockets và Redis