service-store is the service responsible for store and product management in the msa-event-market Project. service-store follows this considerations
- Architecture
- ER Diagram
service-store uses following maven repos and tools
- HTTP Server : Spring MVC
- GRPC Server : gRPC Spring Starter
- MySQL : Spring Data JPA
- Redis :
- Kafka : Spring Kafka, Debezium Outbox
- Logging : Logback, Spring Cloud Slueth/Zipkin,
- Continuous Integration : Spring Test, Github Actions
- Continuous Deployment : K8s, ArgoCD, ArgoCD Image Updater, Kustomize
-
Multiple Datasource
-
Spring Data JPA
-
GRPC
-
Kafka
- https://howtodoinjava.com/kafka/spring-boot-jsonserializer-example/
- https://www.baeldung.com/spring-kafka
- https://www.quora.com/What-is-the-difference-between-acknowledgement-and-commit-in-Kafka
- https://stackoverflow.com/questions/40872520/whats-the-purpose-of-kafkas-key-value-pair-based-messaging
- https://docs.confluent.io/platform/current/schema-registry/serdes-develop/serdes-json.html
- https://stackoverflow.com/questions/47427948/how-to-acknowledge-current-offset-in-spring-kafka-for-manual-commit
-
Application Properties
-
Spring Security
-
Spring Actuator
-
OpenTracing
- https://opentracing.io/guides/java/
- https://github.com/opentracing-contrib/java-spring-cloud
- https://stackoverflow.com/questions/41222405/adding-the-traceid-from-spring-cloud-sleuth-to-response
- https://faun.pub/enhance-istio-distributed-tracing-with-opentracing-part-1-3c4f3ee918d
- https://medium.com/@zhaohuabing/enhance-istio-distributed-tracing-with-opentracing-part-2-3d2643b571a2
- https://github.com/debezium/debezium/blob/main/debezium-core/src/main/java/io/debezium/transforms/tracing/DebeziumTextMap.java
-
Logging JSON
-
Swagger
-
Test
-
Dockerfile