The following information depicts the components and dependencies that make up the application architecture.
The following are the default components that are part of the application architecture stack. The Handler can be replaced with a custom implementation, and the Tasks can be replaced with custom implementations.
Component | Type | Technology | Internal to Internal | External Ingress | Internal Dependency | External Dependency |
---|---|---|---|---|---|---|
Flow | Front End | React + Node.js | Flow MS | true | ||
Workflow | Microservice | Spring Boot (Java®) | Engine MS | true | MongoDB® | |
Engine | Microservice | Spring Boot (Java) | Handler MS | true | MongoDB® | |
Handler | Microservice | Spring Boot (Java) | false | Kubernetes®, Tekton® TaskRun | ||
Task | TaskRun | Node.js CLI / Container | false | Kubernetes®, Tekton® TaskRun | MongoDB® shell image |
Notes:
Dependency | Implementation | Notes |
---|---|---|
Kubernetes |
|
Kubernetes 1.20+ |
Tekton | TaskRuns | Part of Pipelines 0.69.0+ |
Application Load Balancer | NGINX 0.23.0+ | |
Database | MongoDB | |
Message Streaming | NATS Jetstream 2.3.4 | Optional |
Certificate Manager | Jetstack Cert Manager (0.7.0) | Optional if you have your own TLS certificate as a Kubernetes secret |
Logs |
|
If logging enabled, default is Kubernetes |
Monitoring | New Relic Infrastructure, New Relic Kubernetes, New Relic APM Agent | If enabled |
Tracing | Jaeger® | If enabled |