<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="41092" data-post-id="41092">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="mindreader" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/mindreader/120/19278_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  mindreader
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>gproc - I hope it is somewhat reliable.  I don’t need it to be perfect.<br>
pg2 - It doesn’t store metadata with the subscription.<br>
global - not appropriate<br>
syn - I just looked at it again and I don’t know why I wrote it off earlier.  I need dive into the code to be sure.<br>
pheonix tracker - I’ll look at it, I hadn’t heard about it until this thread.</p>
<p>One thing I do not know, since both syn and gproc both need all of the nodes before they are started, what happens when you want to add a new node?  Is there some way to reinit or specifically add a node to these without losing their state?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="41092" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/why-is-registry-local-only/6781/12">Post #11</a>
	                </div>
	            </div>
              <div id="likers-container-41092" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="41092"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #11"></div>
  </section>
</div>
    <div class="postbit" id="41109" data-post-id="41109">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="Azolo" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/Azolo/120/2189_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  Azolo
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="mindreader" data-post="12" data-topic="6781">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/mindreader/48/19278_2.png" class="avatar"> mindreader:</div>
<blockquote>
<p>One thing I do not know, since both syn and gproc both need all of the nodes before they are started, what happens when you want to add a new node?  Is there some way to reinit or specifically add a node to these without losing their state?</p>
</blockquote>
</aside>
<p>Probably not, I think it has to do with the different ways <code>gen_leader</code> is implemented in those libraries. There probably isn’t a replication mechanism for those implementations. Moreover, these all need leaders because they have <em>unique</em> registration capabilities. With <code>:global</code> if two names conflict you can provide a conflict resolution function, but it just kills one randomly by default.</p>
<p>I my opinion, <code>Phoenix.Tracker</code> would be your the best for your use case. I wouldn’t have thought about it as a registry but it really is. The way it works is that instead of having to sync with a leader, each node has it’s own presence registry that pushes out a delta from its local changes to other nodes.</p>
<p>It has a way to duplicate the state to new nodes. So adding nodes at runtime doesn’t require new leader election and such.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="41109" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/why-is-registry-local-only/6781/13">Post #12</a>
	                </div>
	            </div>
              <div id="likers-container-41109" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="41109"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #12"></div>
  </section>
</div>
    <div class="postbit" id="41110" data-post-id="41110">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="mindreader" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/mindreader/120/19278_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  mindreader
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thank you so much!  I have a much clearer picture of where I stand now.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="41110" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/why-is-registry-local-only/6781/14">Post #13</a>
	                </div>
	            </div>
              <div id="likers-container-41110" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="41110"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #13"></div>
  </section>
</div>
    <div class="postbit" id="41178" data-post-id="41178">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="arpunk" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/arpunk/120/1439_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  arpunk
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>There is also <a href="https://github.com/lasp-lang/lasp_pg" rel="noopener nofollow ugc">lasp_pg</a></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="41178" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/why-is-registry-local-only/6781/15">Post #14</a>
	                </div>
	            </div>
              <div id="likers-container-41178" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="41178"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #14"></div>
  </section>
</div>
    <div class="postbit" id="59850" data-post-id="59850">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="ostinelli" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/ostinelli/120/25204_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  ostinelli
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Sorry for the late reply, I’m not active on these forums.</p>
<p>FYI and anyone interested, contrary to what stated here above Syn does not require all nodes to be connected before it can be initialized. The only requirement is that a node joining a cluster first connects to it before calling <code>syn:init/0</code>. This of course does not mean that all nodes need to be connected before syn can be initialized. Example code is in the <a href="https://github.com/ostinelli/syn/blob/master/README.md" rel="noopener nofollow ugc">README</a>.</p>
<p>So yes, it is absolutely possible to add nodes to a running cluster and everything will work fine.</p>
<blockquote>
<p>you can also use syn - you seem to already be aware of its cons</p>
</blockquote>
<p><a class="mention" href="/u/josevalim" rel="nofollow">@josevalim</a> would you mind expanding? I didn’t understand what cons you are referring to and I’d be happy to take yours and any feedback that could make it better.</p>
<p>Best,<br>
r.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="59850" data-batch-url="/posts/batch_likers">
                        5
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/why-is-registry-local-only/6781/16">Post #15</a>
	                </div>
	            </div>
              <div id="likers-container-59850" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="59850"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-most-liked cat-most-liked" title="One of the top 3 liked posts in this thread!"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>