Skip to content

CrissNamon/compaj-cloud

Repository files navigation

CompaJ Cloud

This is a cloud version of 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

Notifies other services about config changes. It uses Spring Cloud Config Bus with Kafka.

Registers all services, so they can find each other and communicate. Uses Eureka.

Reverse proxy, which hides all infrastructure and routes all requests from single point to all services. Uses Redis to store sessions.

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.