Mulit-Client-Multi-Server Issues
From ParaQ Wiki
Jump to navigationJump to search
Introduction
This page collects all issues and possible solutions for mult-client/multi-server configurations.
ID Uniquification
Issue
- Note: this discussion includes the SelfID assigned to a proxy as well as the ObjectIDs assigned to the VTK objects the proxy stands for.
- Every server-side/client-side object is assigned an ID when it is created. The interpretors indentify the object by this ID.
- When multiple clients are connected to the server, it is essential that all those clients use the same ID for the same object, otherwise it is not possible to identify the object on different clients.
- When a client is connected to multiple servers, there can't be conflicts between ID for objects on different servers.
Solution
- Every client keeps multiple interpretors for every connection(both server as well as self connection). Server has only one interpretor.
- When creating any object, the client requests a unique ID for the object from the server on which the object is being created. For self connection, it assign the object a unique ID by itself.
- Since there are separate interpretors for different connections, and also since the same object cannot exits on different servers, ID clashes among different server connections are not an issue.
- Also since client obtains the ID from the server, every client connected to the server can be sure that the ID is unique for all clients connected to that server.