3

I've been using Twemproxy 0.3.0 with redis 2.8 following configurations.

alpha:
  listen: 10.3.0.71:22121
  hash: fnv1a_64
  distribution: ketama
  auto_eject_hosts: true
  redis: true
  server_retry_timeout: 2000
  server_failure_limit: 2
  server_connections: 300
  servers:
  - xxx.0.0.1:6379:1 server01 
  - xxx.0.0.2:6380:1 server02
  - xxx.0.0.3:6381:1 server03

I guess if server01 craches or does not reply over server_failure_limit then twemproxy ejects(removes) the server01 from alpha pool and works with consistent hashing for remained server02 and server03.

As a result, my expectation is broken.

Twemproxy did not auto eject crashed server (server01).

So, my test python client program faced on 'Connection refused' error in a cycle.

Is right my expectation? If not, how could I solve this problem?

4

0 回答 0