Cluster Support: Difference between revisions

Jump to navigation Jump to search
Content deleted Content added
imported>Hendrik Brummermann
imported>Hendrik Brummermann
Line 33: Line 33:
Cross node zone change require the client to connect to another server:
Cross node zone change require the client to connect to another server:


[[Image:Cross node zone change.png]]
# Node 1: Remove client from zone, ignore any actions sent from it
# Node 1: Change zone to target in the player object
# Node 1: Save player to database
# Node 1: Wait till save complete
# Node 1: Sent client a MessageS2CForward
# Client: Disconnect from node 1 (in a way which makes it clear that this is not going offline
# Client: Connect to Node 2
# Node 2: Authenticate client
# Node 2: Check that client is in a zone which this node is responsive for
# Node 2: place player in world (or go to step 1 if this zone is not here)


Alternatives: Node 1 may sent the MessageS2CForward before the saving is completed. This would speed up the zone change progress, but it is hard to tell on Node 2 that the save completed. <del>Especially given that the player might have been last saved on a zone on node 2.</del>. Transfering to a zone on node 1 would have saved him in the mean time. But what if the zones had been split different across nodes back then?


Problems: See [[Cluster_Support#Online.2FOffline_notifications online/offline]] section.
Problems: See [[Cluster_Support#Online.2FOffline_notifications online/offline]] section.