Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/karesti/harry-potter-vertx
Used for conference demo, extract of vertx-api demo in infinispan
https://github.com/karesti/harry-potter-vertx
clustering infinispan java vertx
Last synced: 21 days ago
JSON representation
Used for conference demo, extract of vertx-api demo in infinispan
- Host: GitHub
- URL: https://github.com/karesti/harry-potter-vertx
- Owner: karesti
- Created: 2019-03-18T12:44:08.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-03-21T12:13:40.000Z (almost 6 years ago)
- Last Synced: 2024-10-30T14:51:04.239Z (2 months ago)
- Topics: clustering, infinispan, java, vertx
- Language: Java
- Size: 174 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Harry Potter Vert.x - Taboo Name Curse Application
![Clustered Vert.x example](img/taboo-name-curse.png)
### Wizard
Wizards who dare saying the taboo name are being tracked!
### Death Eater
Consumes messages from the event bus "NAMED" address.
The Death Eater will be able to go instantly where the Wizard has said the taboo name.
That's how the Cursed Taboo name works, and that's why you should say "You-Know-Who",
"He-Who-Must-Not-Be-Named" or "Dark Lord" (if you are a Death Eater). You chose your side, no judgement!The Death Eater will use the killing curse against the Wizard and come back to report.
A Death Eater can't start a killing curse if it's already doing one!### Dark Lord - Monitoring
Consumes monitoring messages from the event bus "ADAVA_KEDAVRA" address and logs them.
The Dark Lord wants to check that Death Eaters are working well.## Running the application in cluster mode from your IDE
* Run Wizard main `producer.Wizard`
* Run DarkLord main `cosumer.DarkLord`
* Run DeathEater main `consumer.DeathEater`You can run multiple DeathEaters, and you will see how using the ClusteredLock, curses don't overlap.
## Running from command line
`mvn clean package`
`java -jar target/harry-potter-vertx-1.0-SNAPSHOT-fat.jar run producer.Wizard -cluster`
`java -jar target/harry-potter-vertx-1.0-SNAPSHOT-fat.jar run consumer.DarkLord -cluster`
`java -jar target/harry-potter-vertx-1.0-SNAPSHOT-fat.jar run consumer.DeathEater -cluster`