hastebrot / protokola

Message Infrastructure.
Apache License 2.0
1 stars 0 forks source link

(doc) Clearify glossary terms. #7

Open hastebrot opened 6 years ago

hastebrot commented 6 years ago

We use a Message Broker as building block of our message-oriented middleware, which is an architectural software pattern.

It uses publish/subscribe and can be responsible for aggregration, decomposing and recomposing, validation, transformation, routing of messages, and can be extended for storage and transaction.

We want a message store for message record and replay. There should be no CQRS or ES needed for message replay.


More:

hastebrot commented 6 years ago

Inspiration for architecture:

For our purposes, we needed something that:

  • Starts/stops ultra quickly.
  • Easily testable outside of an HTTP container, and testing should require little to no custom infrastructure.
  • Provides typesafe HTTP message deconstruction/construction (in this case via Lenses).
  • Automatically deals with contract breaches (missing/invalid params etc) to remove boilerplate.
  • Absolutely no magic involved: No reflection. No annotations.
  • Minimal dependencies (apart from the Kotlin StdLib, http4k-core has zero).
  • Automatic generation of OpenApi/Swagger documentation (including JSON Schema models).
  • Has a symmetric server/client API (HttpHandler should just be Request -> Response).
  • Has immutable Request/Response objects.