gdevxy.ch is live!
The behind of the scenes of gdevxy.ch. What technologies were used and why, a small project but with a solid stack!
2024-11-29 at 6:08PM
# We are live!
2024-11-28
gdevxy.ch
domain is now live and operational!
In this blog post I will unveil the different technologies involved for this project and why I used them. In the end, it's nothing else than a technical blog, so why not going for a WordPress or a static Github page? The answer is in the question, why not 🕺.
# Stack
As of the
2024-11-28
gdevxy.ch
relies on:
- Quarkus over GraalVM (native image)
- Contentful (content management)
- Oracle Cloud Infrastructure (OCI) - Kubernetes (OKE)
In the next sections we will go over the different technologies.
# Quarkus
Quarkus
is a
native
alternative to regular JVM applications endorsed by RedHat. Built for Cloud deployments with in mind speed and resource savings 🍃. We all know that the JVM is an absolute wonder, it is blazing fast once it has found its cruising speed but it has a hard time to solve both its high memory footprint and the JVM start up time even if some projects can help in that regards (CRaC).
I decided to build this blog in
Quarkus
, not because I am a RedHat fanboy, but simply because I had an interest at looking and exploring this technology, so why not go for an actual production-ready project which might give me a better overview than a side PoC?
Below an non-exhaustive list of the different dependencies used in this project, which will be covered in subsequent blogposts.
- Qute ( quarkus-qute-web ) SSR templating engine - along side bootstrap
- REST ( quarkus-rest-client-jackson )
- GraphQL ( quarkus-smallrye-graphql-client )
- Caffeine ( quarkus-cache )
- Fault Tolerance ( quarkus-smallrye-fault-tolerance )
# Contentful
Contentful is a CMS. I surely do not want to bother creating my own, but I am also not willing to spend all my savings either. This is in the end, a non-commercial application.
Interestingly, Contentful offers a
free tier
which comes with:
- 3M API calls / month
- 0.85 TB / month CDN bandwidth
and a nice start-up kit rightly made for a
blog
website.
Will the limitations suffice? Future will tell, but the
LITE
version at 300$ / month is obviously out of reach.
# Oracle Cloud Infrastructure (OCI)
In order to deploy
gdevxy.ch
it was necessary to find a provider. Heroku, Azure, Google Cloud, AWS? just to name a few... I eventually opted for Oracle Cloud, because they are the only provider with an actual Free Tier and
Always Free
resources, which is on paper absolutely insane (4 OCPU, 24 GB of memory!).
Unfortunately, this was too good to be true. In my home region (Zurich, Switzerland) it was simply impossible to spawn an A1 Compute instance. Thank you
out of capacity, try again later
messing with me toast.
I am no platform engineers and had already invested numerous hours in learning the different bricks of OCI, reason why I eventually decided to commit nonetheless to non-Always-Free resources. In the end the cost will be similar to any other providers which should round up to ~30$ per month (OKE Cluster: single node of 1x OCPU, 8GB).
# Source code
The source code of this project is publicly available on
Github
.