Skip to content

Releases: socialsoftware/microservices-simulator

Command Refactoring and Infrastructure Optimization

18 Mar 21:02

Choose a tag to compare

What's New

  • Command: Introduced SagaCommand and CausalCommand classes to decouple transactional logic from base commands. Implemented specialized handlers (SagaCommandHandler and CausalCommandHandler) to unify command processing across different workflow types.
  • Dynamic Event Registration: Stream event subscribers now auto-register based on the application name, removing the need for manual Aggregate EventSubscriberService configuration.
  • Standardized Configuration: Introduced application.yaml templates and updated services to use ${spring.application.name} for consistent property management and discovery.

API Gateway Migration and Docker Optimization

10 Mar 22:35

Choose a tag to compare

What's New

  • API Gateway Restructuring: Moved the API Gateway into the simulator library, changing it from a Reactive application to an MVC application. Updated routing to be handled within the application microservice configuration.
  • Unified Docker Image: Reconfigured docker-compose and Kubernetes deployments to use a single shared image for all microservices, significantly saving space, and updated configurations to use runtime profile support.
  • Gateway Profiles: Added specific Maven profiles for running the version-service and gateway.
  • Reliability Improvements: Added command timeouts to CommandGateway.
  • Documentation & Configurations: Updated the README, system architecture diagrams, and IntelliJ run configurations to accurately reflect the new API Gateway and Docker/Kubernetes deployment changes.

Distributed Versioning and Command Handler Unification

05 Mar 14:27

Choose a tag to compare

What's New

  • Distributed Version Service: Added Snowflake ID-based distributed versioning option for sagas.
  • Unified Command Handlers: Eliminated per-microservice gRPC and Stream CommandHandler classes in favor of a generic, auto-registering handler.
  • Improved Command Gateways: Stream and gRPC gateways now support local calls when sender and destination match. Added retry fixes and a new Circuit Breaker test.
  • Simplified Docker Compose: Refactored configuration with runtime profile support (SPRING_PROFILES_ACTIVE), removing unnecessary shared configs.
  • Cleanup: Removed deprecated AsyncStep and SagaAsyncStep workflow classes.
  • Updated README & diagrams to reflect the new architecture.

Kubernetes, gRPC and Distributed Tracing Support

24 Feb 16:59

Choose a tag to compare

This release adds Kubernetes deployment support, gRPC as an alternative inter-service communication layer, and distributed tracing with Jaeger across all execution modes.

Distributed Application Support

23 Jan 16:43

Choose a tag to compare

Introduction of the Command Gateway pattern for inter-service communication, support for independently deployable microservices, and addition of RabbitMQ-based messaging via Spring Cloud Stream.

Saga support

09 Jan 11:25
2aab3c7

Choose a tag to compare

Saga transactional management is added to the microservices simulator