Building Blocks
Overview
The Sciamus IMS platform has been meticulously designed with a focus on High-Availability, Resilience and Scalability. These guiding principles have led to the decision to develop it as a set of Java and SpringBoot microservices, offering flexibility and ease of deployment on container clustering platforms. These microservices communicate asynchronously, facilitated by a RabbitMQ High Availability Cluster serving as the robust communication layer. The persistence layer is powered by MongoDB, renowned for its scalability and performance.
In terms of identity and access management, the platform seamlessly integrates with Keycloak, a robust solution and the de facto industry standard in its class. Keycloak provides the flexibility needed for seamless integration with any OAuth2 compatible solution as per specific requirements.
The recommended deployment setup entails deploying the microservices within a Kubernetes cluster, whether hosted in-house or on a private cloud infrastructure. Additionally, a dedicated RabbitMQ HA cluster is established as a StatefulSet to ensure the reliability of messaging services, further enhancing the platform's resilience and performance.
Core
| Technology | Version | Link | License |
|---|---|---|---|
| Java | 11 & 21 | https://openjdk.org (opens in a new tab) | Open Source |
| SpringBoot | 2.5.x & 3.2.x | https://spring.io/projects/spring-boot (opens in a new tab) | Open Source |
| MongoDB | 5.x - 7.x | https://www.mongodb.com (opens in a new tab) | Open Source |
| RabbitMQ | 3.12.x | https://www.rabbitmq.com (opens in a new tab) | Open Source |
| Angular | 15.0.x | https://angular.io (opens in a new tab) | Open Source |
| Node.js | 14.17.x | https://nodejs.org (opens in a new tab) | Open Source |
Optional
| Technology | Version | Link | License |
|---|---|---|---|
| Keycloak | 18.x - 23.x | https://www.keycloak.org (opens in a new tab) | Open Source |
Cloud
Sciamus IMS has been tested on following cloud platforms:
- Amazon Web Services
- Google Cloud Platform
- Google Kubernetes Engine on-prem
CI/CD
The Sciamus Inventory Management system has been prepared for deployment following the CI/CD paradigm. Helm charts have been prepared to enable easy integration of Sciamus IMS build and deploy stages into the mechanisms used in the respective environment. All Sciamus IMS parameterization is performed by setting the appropriate variables in the values files for individual microservices.