Thanks Michael, once again,  for a swift answer!

When you say "make sure yourself writes are going to the leader", does that 
mean that the "core servers" in the cluster are not all equivalent, but 
there is always a leader in the core group – similarly to the "master" in 
the HA setting – and others in the core group are "followers"? And I can't 
write to any of the core group servers, even though in the 3.1 blog posts 
they are depicted in the diagrams as all being read/write, but instead have 
to find the leader and write to it?

If that is the case, then I'll continue with my HA setup.

But if you mean that all core servers are "leaders" and I just have to make 
sure I'm not writing to the read replicates, then that's ok, and very much 
understandable. I can start of with just using 3-5 core servers – and 
utilize read replicates if need be in the future with a custom load 
balancing – but being able to write and read to and from any of them 
without any performance penalties, is a big bonus. (Compared to the HA 
setting, where I had to jump quite a few hoops to avoid writing to master.)

In embedded mode, I have been using neo4j.properties for HA settings. Can I 
just configure these:

http://neo4j.com/docs/operations-manual/3.1-beta/deployment/causal-cluster/settings-summary/

settings in neo4j.properties in place of HA settings? Another thing is that 
to be able to know if a server has successfully become part of the core 
servers, I would need to find that out from some Java class. Are there 
Cause Cluster equivalents for the 
"HighlyAvailableGraphDatabase.getInstanceState" method I'm using now?

--
Timo


On Tuesday, December 6, 2016 at 10:46:32 AM UTC+2, Michael Hunger wrote:
>
> Hi,
>
> as I learned yesterday you can use (with the correct configs) causal 
> cluster in embedded but currently have to make sure yourself that the 
> writes are going to the leader, there is no auto-routing. It's not an 
> officially suggested mode of operations.
>
> The recommendation from the team is to only use read-replicas in embedded 
> mode and run a regular core-cluster as neo4j server.
>
> If you can make sure all your writes go to the leader always then it 
> should also be possible (imho) to run all instances embedded.
> Please try it out and let us know.
>
> Michael
>
>
> On Mon, Dec 5, 2016 at 8:26 PM, Timo Tiuraniemi <timo.ti...@gmail.com 
> <javascript:>> wrote:
>
>> Hi,
>>
>> I have previously successfully set up a Neo4j HA cluster using embedded 
>> Neo4j. While it does work nicely, I could simplify things a lot if I could 
>> switch to causal clustering. The problem is that in the documentation for 
>> the new 3.1, there is no mention of embedded use with causal cluster, and 
>> furthermore, the Java driver is claimed to be responsible for consistency.
>>
>> So to clarify: Is it possible to setup causal clustering using embedded 
>> Neo4j directly from my Java server, without any use of Cypher and without a 
>> Java driver? Or are you deliberately trying to remove embedded Neo4j use?
>>
>> Cheers,
>> Timo
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Neo4j" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to neo4j+un...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to neo4j+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to