Skip to content

Sylvaindelaforet/Tuple-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tuple-server

This repo is a reworking of a project I did in class in a group of 3, and that I thought was fun. Hence I decided to rewrite it from scratch, only reusing some classes given for the project, these can be found in the utils folder.

Now, all the work has been written by me, the CoreLinda class being entirely rewritten using different tools for synchronization.

The server package however reuses the work I did at the time of the project.

Details

Package core

Implements the core of the syncronization and storage system. The storage system should be optimized, see improvements .

Package server

This package is mostly unchanged. That's why some parts may be written differently as it was written long ago, and I was a beginner.

It contains a server and client implementation that extends CoreLinda as a server thus being accessible through the client.

There are two sub-packages that add tweaks to the existing server :

  • multi-server, that connects multiple server each accessible from outside and from the other servers
  • cache, the LindaCient now has a cache on

Usage example

The application sub-package in the utils package gives an example of the use this server can have.

It illustrates the posibilities the callback class allows.

Improvements

The CoreLinda class should implements a better more efficient storage system for large quantity of data.

Depending on its use of this tuple-server, multiple improvements are possible to study :

  • when using a wide variety of tuple, a better implementation would be to break the Array used for storage into multiple ones that are accessed by exploring a tree (mostly read).
  • if there is no knowledge we can just break the array in multiple ones of roughly the same size.

The first improvement is unefficient if using always the same "kind" of tuple (for example [integer integer]). The second one is always efficient for it allows to write and read at the same time, but this improvement is less significant than the first one.

The two improvements described above can be combined, to be even more powerfull.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages