Contents Terms Client REST / RESTful API HTTP Methods / Verbs HTTP Status Codes Synchronous vs. Asynchronous API Gateway Microservice Principles of Microservices SRP (Single Responsibility Principle) Design around business function Automate everything Keep coupling loose Monitor Build fault-tolerant Independently scalable Builders are owners Dissecting a microservice architecture client gateway microservices external contact points service-to-service communication Terms Client A client is simply someone that requests information from or submits information to your APIs.
Contents Java Overview OOP Java Modules Building and Running Testing API Frameworks in Java Abstraction of REST API frameworks Java Overview Java is a general-purpose programming language that is often used in large enterprises for creating APIs. This is likely because it has been around for a long time, and has been developed over many years to meet many business-critical requirements such as resilience, security, and performance.
Contents Overview Why Java + Spring ? Getting started Overview In July of last year, I joined a large firm as a software engineer. I was exposed to large-scale applications for the first time, and was able to shed my pre-existing biases against Java and Spring Boot as “old-school” or antiquated backend technologies.
The goal of this series is to share lessons learned about enterprise microservice architectures, and best-practices for developing a platform with Java and Spring Boot.
Why I often forget most of the stuff I learn, and then find out how badly I need it later. This has happened notably with my Advent of Code solutions, and a bunch of other little things like creating a Hugo theme. I want to get better at documenting my technical solutions to things, so I am reviving this blog.
Additionally, I am consistently changing my mind about what I want to specialize in with regards to my career, so hopefully if I document more of the stuff I do, I will be able to get more clarity on what I care about.