Skip to content
This repository was archived by the owner on Jul 18, 2024. It is now read-only.

Commit 7d82f71

Browse files
authored
Merge pull request #4 from IBM/prbr
Architecture/Microservices/Amalgam8 details
2 parents 7e8dc20 + 233c218 commit 7d82f71

File tree

2 files changed

+19
-10
lines changed

2 files changed

+19
-10
lines changed

README.md

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,32 @@
22

33
# GameOn! Java Microservices deployment on Kubernetes Cluster
44

5-
This project demonstrates deployment of a Microservices based application Game On! on to Kubernetes cluster. Game On! is a throwback text-based adventure built to help you explore microservice architectures and related concepts. GameOn! users start by creating a simple room, the building block of any adventure game. A user can create in text a simple room in any one of various languages in just a few minutes.
5+
This project demonstrates deployment of a Microservices based application [Game On!](https://gameontext.org/#/) on to Kubernetes cluster. Game On! is a throwback text-based adventure built to help you explore microservice architectures and related concepts. GameOn! users start by creating a simple room, the building block of any adventure game. A user can create in text a simple room in any one of various languages in just a few minutes.
66

77
There are several microservices used in this app
88

9+
![GameOn](images/gameon-microservices.png)
10+
911
### Core MicroServices:
1012

11-
- Proxy: HAProxy based, and is responsible for surfacing the collection of APIs as a single facade for the entire application.
12-
- WebApp: Webapp is a simple nginx process that serves the static files that comprise the front-end of the UI.
13-
- Player: Players, are represented by the player Java microservice service, which provides a public API for CRUD operations, and for managing API tokens.
14-
- Auth: Java microservice to allow players to connect and identify themselves via a selected "social login"
15-
- Mediator: The Mediator service is implemented in Java using WebSphere Liberty, and connects players to rooms over Websockets
16-
- Map: The Map service is a Java EE application running on WebSphere Liberty that provides a public REST API using JAX-RS. It stores data in a NoSQL data store, either couchdb or Cloudant
17-
Room: Java based room implementation
13+
There are five core Java microservices, using [JAX-RS](https://en.wikipedia.org/wiki/Java_API_for_RESTful_Web_Services), [CDI](https://dzone.com/articles/cdi-di-p1) etc. from [MicroProfile](http://microprofile.io) framework spec.
14+
15+
- [Player](https://github.com/gameontext/gameon-player): Players, are represented by the player Java microservice service, which provides a public API for CRUD operations, and for managing API tokens.
16+
- [Auth](https://github.com/gameontext/gameon-auth): Java microservice to allow players to connect and identify themselves via a selected "social login"
17+
- [Mediator](https://github.com/gameontext/gameon-mediator): The Mediator service is implemented in Java using WebSphere Liberty, and connects players to rooms over Websockets
18+
- [Map](https://github.com/gameontext/gameon-map): The Map service is a Java EE application running on WebSphere Liberty that provides a public REST API using JAX-RS. It stores data in a NoSQL data store, either couchdb or Cloudant
19+
- [Room](https://github.com/gameontext/gameon-room): Java based room implementation
20+
21+
In addition, Proxy and WebApp complete the core microservices
22+
23+
- [Proxy](https://github.com/gameontext/gameon-proxy): HAProxy based, and is responsible for surfacing the collection of APIs as a single facade for the entire application.
24+
- [WebApp](https://github.com/gameontext/gameon-webapp): Webapp is a simple nginx process that serves the static files that comprise the front-end of the UI.
25+
1826

1927
### Platform Services:
20-
- Amalgam8: Amalgam8 supplies Registry, and a Controller, via which it implements the Service Discovery, and Service Proxying
21-
- Kafka: Publish/Subscribe solution used by Amalgam8
28+
29+
- [Amalgam8](https://www.amalgam8.io/): Content-based Routing Fabric for Polyglot Microservices. Amalgam8 supplies Registry, and a Controller, via which it implements the Service Discovery, and Service Proxying. In addition, there ia an Amalgam8 sidecar associated with each microservice, which automatically registers the microservice with the registry.
30+
- [Kafka](https://kafka.apache.org): Publish/Subscribe solution used by Amalgam8
2231

2332
Everything would be hosted on a Kubernetes Cluster where you can access your own GameOn app from anywhere.
2433

images/gameon-microservices.png

104 KB
Loading

0 commit comments

Comments
 (0)