A prototype of the Group Membership Management Framework. Implemented according to the concepts presented in the article entitled "Group Membership Management Framework for Decentralized Collaborative Systems".
The prototype simulates a P2P environment consisting of multiple so-called "zones", which represent autonomous organizations in a decentralized network.
config— exemplary application configurations,tests-docker— scripts used to benchmark the prototype on bare Docker (customized for the specific setup used in the article),tests-k8s— scripts and configuration used to benchmark the prototype in Kubernetes,util— utility scripts,gmmf-*— the application source code divided into modules,gmmf-zone-simulator— the main module which represents the zone,docker-compose.yml— Compose configuration with an exemplary 3-node setup,docker-compose.util.yml— Compose configuration for utility images (neo4j, Postgres, etc.).
ConstantLoadClientMain— a client used to generate a constant load on specified servers,GraphGeneratorMain— graph generator,KubernetesClient— a Kubernetes client used for management of the application,Neo4jImportMain— imports the graph into Neo4j,OperationSequenceGeneratorMain— generator for sequences of operations used for benchmarking,PostgresImportMain— imports instrumentation data into Postgres,QueryClientMain— runs queries on specified servers (used for benchmarking),QuerySequenceGeneratorMain— generates membership queries (used for benchmarking).