killme2008/Metamorphosis

改进同步复制

Closed this issue · 3 comments

  • 当slave写入失败的时候,将master标识为不可用,从zookeeper移除
  • 被标识为不可用的master-slave组,自行探测恢复,如果可以正常恢复,即自动加入到zookeeper
  • 如果不能恢复,需通知到相关人员。

Fixed by bd589b3

samsa_master.properties配置添加三个新选项:

  • sendToSlaveTimeoutInMills 发送到slave的超时时间,单位毫秒,默认2秒
  • slaveContinuousFailureThreshold 发送到slave连续失败次数的阈值,超过这个阈值将停止发送消息到slave,并且会将master暂时从zookeeper列表里移除,同时启动一个后台线程做修复进入修复状态,尝试往slave投送消息,如果投送成功则认为slave恢复,重新注册master到zookeeper。默认100次。
  • checkSlaveIntervalInMills 当master出于修复状态的时候,检测slave是否恢复的时间间隔,默认100毫秒。