There is an application, from the previous semester (find as zip file), that can be further
expanded. It will be the basis of this project (Client side should not be changed). The
application realizes the functionalities of a distributed appointment calendar. However,
the registration and data management runs only on one server instance.
The Server side of the new Project contains 2 important parts.
1. By start there is a Root and 2 Child Servers.
2. If the user is new in the System, would be connected for the first time to root and
depend on traffic Root signs it to a child Server. It keeps track which server is
serving this client.
3. The user exists in one Child Server DB, the root finds via search method the
child server and connects them together.
4. The Root server works as load balancer, so it can keep track of existing
connections but does not serve as a child server (does not have DB instance).
The load balancing
1. The number of clients raised (e.g. 10), it creates 2 Child servers and signs the
incoming request of other clients to its children.
2. Each parent node knows how many clients are served by its kids.
3. If a server fails which itself has further hierarchy levels downwards, there must be
a mechanism to recover it or ..
1. The client server communication is via java RMI.
2. It is important to describe the search method, how an invitation is sent from server A,
where user A exists, to server B, which contains a second user's DB.
3. It is important to describe the load balancing mechanism, how the root server realizes
3. The code must be clean(well commented, and have proper naming conventions)
11 pekerja bebas membida secara purata €201 untuk pekerjaan ini
I will provide this project with optimized solution and will add proficient fuctionality as per your demand. I have more than 3 years of experience in development and currently working as a Senior software developer.