https://github.com/crissnamon/compaj-cloud
Cloud infrastructure for scientific calculations
https://github.com/crissnamon/compaj-cloud
compaj docker eureka kafka math math-modeling numeric-computing open-source scientific-computing spring-cloud zookeeper
Last synced: 7 months ago
JSON representation
Cloud infrastructure for scientific calculations
- Host: GitHub
- URL: https://github.com/crissnamon/compaj-cloud
- Owner: CrissNamon
- License: apache-2.0
- Created: 2022-08-23T09:53:27.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-09-26T12:18:26.000Z (about 3 years ago)
- Last Synced: 2025-01-31T12:35:03.900Z (9 months ago)
- Topics: compaj, docker, eureka, kafka, math, math-modeling, numeric-computing, open-source, scientific-computing, spring-cloud, zookeeper
- Homepage:
- Size: 438 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## CompaJ Cloud
This is a cloud version of [CompaJ](https://github.com/CrissNamon/compaj) - programming and numeric computing platform for math modeling and visualization.
Cloud version provides API for processing CompaJ scripts on external servers and get results for local processing.
____## Architecture
### Services
##### [Config service](https://github.com/HiddenPrj/compaj-cloud-config)
Notifies other services about config changes. It uses Spring Cloud Config Bus with Kafka.
##### [Discovery service](https://github.com/HiddenPrj/compaj-cloud-discovery)
Registers all services, so they can find each other and communicate. Uses Eureka.
##### [Gateway service](https://github.com/HiddenPrj/compaj-cloud-gateway)
Reverse proxy, which hides all infrastructure and routes all requests from single point to all services. Uses Redis to
store sessions.##### [Processor service](https://github.com/HiddenPrj/compaj-cloud-processor)
Runs CompaJ code on isolated docker containers.
### Security
All services use OAuth for secured communication with Keycloak as provider.
Gateway is a client in OAuth, and it propagates tokens to services behind.