Data Structure Communication Spring Boot Starter

Defines a Spring Boot Starter for Data Structure Communication

License

License

Categories

Categories

Spring Boot Container Microservices Data
GroupId

GroupId

com.github.estigma88
ArtifactId

ArtifactId

jdhtuq-data-structure-communication-spring-boot-starter
Last Version

Last Version

3.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

Data Structure Communication Spring Boot Starter
Defines a Spring Boot Starter for Data Structure Communication
Project URL

Project URL

https://github.com/estigma88/jdhtuq
Source Code Management

Source Code Management

https://github.com/estigma88/jdhtuq

Download jdhtuq-data-structure-communication-spring-boot-starter

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.estigma88/jdhtuq-data-structure-communication-spring-boot-starter/ -->
<dependency>
    <groupId>com.github.estigma88</groupId>
    <artifactId>jdhtuq-data-structure-communication-spring-boot-starter</artifactId>
    <version>3.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.estigma88/jdhtuq-data-structure-communication-spring-boot-starter/
implementation 'com.github.estigma88:jdhtuq-data-structure-communication-spring-boot-starter:3.0.1'
// https://jarcasting.com/artifacts/com.github.estigma88/jdhtuq-data-structure-communication-spring-boot-starter/
implementation ("com.github.estigma88:jdhtuq-data-structure-communication-spring-boot-starter:3.0.1")
'com.github.estigma88:jdhtuq-data-structure-communication-spring-boot-starter:jar:3.0.1'
<dependency org="com.github.estigma88" name="jdhtuq-data-structure-communication-spring-boot-starter" rev="3.0.1">
  <artifact name="jdhtuq-data-structure-communication-spring-boot-starter" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.estigma88', module='jdhtuq-data-structure-communication-spring-boot-starter', version='3.0.1')
)
libraryDependencies += "com.github.estigma88" % "jdhtuq-data-structure-communication-spring-boot-starter" % "3.0.1"
[com.github.estigma88/jdhtuq-data-structure-communication-spring-boot-starter "3.0.1"]

Dependencies

compile (2)

Group / Artifact Type Version
com.github.estigma88 : jdhtuq-data-structure-communication jar 3.0.1
org.springframework.boot : spring-boot-starter jar 1.5.10.RELEASE

Project Modules

There are no modules declared in this project.

jDHTUQ for peer-to-peer DHT networking

jDHTUQ is a peer-to-peer DHT system based on Chord algorithm, but built to generalize the implementation of peer-to-peer DHT systems. It have two fundamental services, put and get of a resource.

jDHTUQ is using:

  • Reusable api for lookup and storage
  • One implementation of Chord algorithm
  • One implementation of a resources management (DHash)
  • Spring Boot Starters for easy setup
  • Independent communication module configurable
  • Peer to peer communication simulation using a data structure
  • Peer to peer network communication using sockets

Download last versions

Github Releases (by Asset) Github Releases (by Asset) Github Releases (by Asset)

Data structure and network applications.

  • Execute with double click or
  • Using the console: java -jar <jdhash-version>.jar

To get more information about how to use the examples, please refer to More Info page

How to use

From source code

  • Clone the repository
  • Execute the following command in the root folder
    • For desktop ui peer to peer simulation: gradlew :main:desktop-structure-gui:bootRun
    • For desktop ui peer to peer network with sockets: gradlew :main:desktop-network-gui:bootRun
    • For standalone peer to peer network with sockets: gradlew :main:standalone-network:bootRun

Using layers as dependencies

Add the following dependencies to your project to use Chord, DHash and Communication layers in your own project.

Note: This dependencies are Spring Boot Starters, so, your project must use Spring Boot

  • Chord: Maven Central
  • DHash: Maven Central
  • Communication: Use one of the following implementations
    • Data Structure: Maven Central
    • Sockets: Maven Central

More info

More Info

Versions

Version
3.0.1
3.0.0
2.0.0