Please enable JavaScript.
Coggle requires JavaScript to display documents.
Engineering Blog - Architecture (Production concerns? (How can I know what…
Engineering Blog - Architecture
Hippo as CMS
What SQL DB should I choose?
https://www.onehippo.org/library/deployment/configuring/databases.html
Initial option: MySQL
I've worked with MySQL before at Airbiquity,
so it should be easier for me to understand
rather than trying to learn about the other SQL
options
CQRS Architecture
Why?
Explained here:
https://docs.google.com/document/d/1vqu5Q2lxbXVZHhXUB5kJK7ntnRqT169-4PHKLZYlT8k/edit#heading=h.uqkvhu6m4o3u
CQRS Command?
Hippo CMS with it's built-in
SQL DB
CQRS Message Broker?
Hippo's Built In Event Bus
CQRS Query services?
Equivalent to Hippo's Built In Event Listeners:
https://www.onehippo.org/library/concepts/hippo-services/event-bus.html
Instead of copying the bits to an ES, the event listener
will send a request to another Microservice that will
handle the event.
Why do this?
separates the internal database models from the external contract models (the contract of the microservice)
Any drawbacks to this approach?
Each implementation of the event listener can
be seen as an equivalent to a single subscriber
A microservice responsible for showing the results, e.g., the UI layer
This MS will contain a datastore to hold
the data
What data store should we use?
ES
MongoDB
Backend?
Spring Boot
Front end?
Vue.js
Thymeleaf
We can use both Vue.js and Thymeleaf:
https://www.baeldung.com/spring-boot-vue-js
Where will this be hosted?
Digital Ocean
AWS
How much will it cost me vs Digital Ocean?
Use Docker?
Yes
I can develop on my local and can
guarantee that it will work in Production.
Look at the Docker branch I created in
hippo-examples
project
This is worth looking into as well:
https://github.com/woonsanko/recipe-for-dockerizing-hippo-cms
NO
Adds complexity
Maybe no at first... and then introduce Docker later?
Production concerns?
How can I know what code changes will
be released and how will it effect the current
instance of Hippo in Production?
This might help:
https://www.onehippo.org/library/concepts/update/deploying-content-and-configuration-updates.html
What do I need to do in order to get my
local Hippo ready for Production?
https://www.onehippo.org/library/deployment/running-hippo.html
How to setup reverse proxy?
https://www.onehippo.org/labs/configuring-nginx-as-a-reverse-proxy-for-hippo-cms.html