consistent-cluster 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1a619832f972391c4026f17d7b373eee628a84dd
4
- data.tar.gz: b84b0dcf405366e3caec3ed2968e775d54e7e875
3
+ metadata.gz: 2b9a381e3ba8ba30496deec02f82acb44f03c608
4
+ data.tar.gz: d91a5fe213f3fc911c8e8dae829b8489b020d632
5
5
  SHA512:
6
- metadata.gz: 4930145efffb208b04d2525f01f6821dfee4d26c18f3ec8a578ea56c7d98aa0c12ecf045929e8f1458d94fa33c7b18ff9e36602bf15f61764d8319da74879465
7
- data.tar.gz: cdc9c0018a311e9ce11b5a8a40049edcd3d63b568d09a9e391de8e0d233bf395cd665f1cc7559f2d2342ca8e25b7a11810126f14520f734932e202573142576b
6
+ metadata.gz: 24a73b4697edc754ca7ca59ca039534540f16da968050ada4f5a80b01fd28cc650e2a8e08dd445732c57c34f5923293d8312190e5cccb92edd2c2c2a9099ee90
7
+ data.tar.gz: a8b4369cf7f64d8b597ad75004f93c1f6b96e4d578f596de8ceb43d3a7ea58387a22cbe7cbcb17e9a1794af46b44d324d81439f4d4a90c9d2a5b9280d5c5cd86
@@ -10,8 +10,6 @@ module ConsistentCluster
10
10
  class SyncClient
11
11
 
12
12
  def initialize(options)
13
- @zk = ZK.new(options[:zookeeper_service])
14
- @path = options[:zookeeper_path]
15
13
 
16
14
  @data = {}
17
15
  @cluster = {}
@@ -25,6 +23,10 @@ module ConsistentCluster
25
23
  @after_sync_proc = options[:after_sync_proc]
26
24
 
27
25
  @to_sync,@syncing = false,false
26
+
27
+ @path = options[:zookeeper_path]
28
+
29
+ @zk = ZK.new(options[:zookeeper_service],reconnect: true)
28
30
 
29
31
  @zk.register(@path) do |event|
30
32
  sync_services
@@ -32,9 +34,23 @@ module ConsistentCluster
32
34
 
33
35
  sync_services
34
36
 
37
+ #on_state_change
38
+ #on_connecting
39
+ #on_expired_session
40
+ @zk.on_connected do
41
+ reconnect_callback
42
+ end
43
+
35
44
  @shard_num = 0
36
45
  end
37
46
 
47
+ def reconnect_callback
48
+ case @zk.state
49
+ when :connected
50
+ sync_services
51
+ end
52
+ end
53
+
38
54
  def shard(key=nil)
39
55
  cluster_sum = @cluster.length
40
56
  raise "no service available at #{@path}" if cluster_sum < 1
@@ -1,3 +1,3 @@
1
1
  module ConsistentCluster
2
- Version = "1.0.2"
2
+ Version = "1.0.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: consistent-cluster
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - jeffrey6052
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-21 00:00:00.000000000 Z
11
+ date: 2015-05-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: atomic
@@ -24,7 +24,7 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.1'
27
- description: "用于整合服务集群接口,方便客户端调用; 调用方式包含一致性哈希逻辑,轮询逻辑; 支持绑定zookeeper,同步集群配置"
27
+ description: 用于整合服务集群接口,方便客户端调用; 调用方式包含一致性哈希逻辑,轮询逻辑; 支持绑定zookeeper,同步集群配置
28
28
  email:
29
29
  - jeffrey6052@163.com
30
30
  executables: []
@@ -65,5 +65,5 @@ rubyforge_project:
65
65
  rubygems_version: 2.2.2
66
66
  signing_key:
67
67
  specification_version: 4
68
- summary: "一致性哈希集群"
68
+ summary: 一致性哈希集群
69
69
  test_files: []