Professional Documents
Culture Documents
Keycloak Architercture Part1 - Updated
Keycloak Architercture Part1 - Updated
Keycloak Architercture Part1 - Updated
✔
Set of tightly coupled modules
✔
Separated by functionality/responsibility
✔
Deployed as a set of jars
✔
Dynamically loaded at boot time
Design Principles: Extensibility
Chapter 8, page 70
Design Principles: Extensibility
•
heavy usage of ServiceLoader
•
Usage of interfaces/contracts rather than
implementations
Common Design patterns: AbstractFactory
Use Cases:
• a system should be independent of how its products are created, Chapter 3, page 77
composed,
and represented.
• a system should be configured with one of multiple families of products.
• you want to provide a class library of products, and you want to reveal
just their interfaces, not their implementations.
Tech stack
Jakarta EE (formerly JAVA EE):
✔
JAX-RS => RESTEasy
✔
JPA => Hibernate
✔
JTA
✔
….
Liquibase
Freemarker
React + Patternfly design system
Quarkus (or Wildfly for versions < 18)