Random opinionated blurbs
Defining the microservices architectural style by describing their nine common characteristics
Random opinionated blurbs
Equinor API Strategy. Contribute to equinor/api-strategy development by creating an account on GitHub.
In 2016, Christopher Allen, a key contributor to SSL/TLS, inspired us with an introduction of 10 principles underpinning a new form of digital identity and [...]
Blogposts. Contribute to magnhaug/blogposts development by creating an account on GitHub.
Looking at REST vs messaging for microservices and why event-driven microservices should be considered more often by developers & architects.
:white_check_mark: The Node.js best practices list (July 2024) - goldbergyoni/nodebestpractices
Unix had single responsibility, API contracts, message queues, and service discovery in 1973. The industry repackaged it and called it microservices.
Could we see monoliths favored over microservices, full-stack tools over platform specific ones and pragmatic, simpler architecture as a response to 10+ years of 0% interest rates ending?
Thoughts on delegating business logic to the infrastructure layer, through the lens of Uber embedding Rate Limiting into their service mesh
a blog about programming and web development
Overview
This is the first of follow up serie of the talk Fast messaging with Nats and Go I gave at golab 2018. The slides of the talk can be found here: Link to heading What is Nats Link to heading Nats is a messaging system hosted under the CNCF umbrella, which is an open source software foundation dedicated to making cloud native computing universal and sustainable. It’s my place-to-go while looking for software related to distributed systems.
This post walks through building a choreographed, event-driven order fulfilment system on AWS using EventBridge, Lambda, and SQS. It covers how events propagate between subdomains, the trade-offs between choreography and orchestration, and how to handle idempotency, observability, and event schema design. Inspired by a real-world example in Monolith to Microservices, the post also includes infrastructure-as-code examples using both CloudFormation and Terraform.
Most of SoundCloud’s products are written in Scala, Clojure, or JRuby. This wasn’t always the case. Like other start-ups, SoundCloud was created as a single, monolithic Ruby on Rails application running on the MRI, Ruby’s official interpreter, and backed by memcached and MySQL. We affectionately call this system Mothership. Its architecture was a good solution for a new product used by several hundreds of thousands of artists to share their work, collaborate on tracks, and be discovered by the…
We've seen significant benefits from introducing microservices, which have allowed teams to scale the delivery of independently deployed and maintained services. Unfortunately, we've also seen [...]
At BetterDoc we’re currently in the process of step by step replacing an old monolithic application with a microservice landscape. While adding services whe recognized that we needed to find a consistent pattern to naming these services to keep the “service zoo” organized. This post describes our overall scheme for naming our services. Note that since writing this blog post our idea of how a service should be named has changed and the following rules are no longer valid. Our most recent thoughts can be found here: (Naming things, part 3B).
1. Intro tl;dr Instead of forcing your application into a prescriptive template like Clean or Hexagonal Architectures, get back to basics and use patterns from Modular Software Design. Divide the application into independent modules, each containing business logic representing a specific process. For modules with complex business logic, extract the infrastructure-related code into separate Infrastructure-Modules. This will enable you to build an application characterized by low cognitive load, high maintainability, and high extensibility.
Recent discussions around the microservice architectural style has promoted the idea that “to effectively decouple your services you have to create an event-driven-architecture”. Although events can decrease coupling, we must avoid the mistakes of traditional SOA: centralised control should to be avoided, and workflow engines must be less painful to use and operate.
Learn to build and deploy your distributed applications easily to the cloud with Docker
What is the NERP stack? I’m glad you asked! It’s a fun little development stack acronym, my counterpoint to MEAN. In Part 1, we consider the Pros and Cons of Node.js!
At Monzo, we’re building a banking system from scratch. Our systems must be available 24x7 no matter what happens, scalable to hundreds of millions of customers around the world, and very extensible. This first post in a series about our platform explains how we’re building systems to meet these demands using modern, open-source technology.
A blog by Andy Hedges about SOA, computer science and software development, new posts every few weeks
When Martin Fowler's post about microservices came out in 2014, the teams where I worked were already building service-oriented architectures. That post and the subsequent hype made their way into almost every software team in the world. The "Netflix OSS stack" was the coolest thing back then, allowing engineers worldwide to leverage N...
What is a microservice
When it comes to microservices I am always reminded of Martin Fowler's quote: '...you shouldn't start with a microservices architecture. Instead begin with a monolith, keep it modular, and split it into microservices once the monolith becomes a problem.' Let's check out how we can put this into action.
For me, one of the telltale signs the whole microservices hoopla is a consultant marketing ploy is the whole microservices vs. monoliths thing – as…
DynamoDB is a popular choice for Serverless applications. In this post, I review the four modeling patterns I see with DynamoDB in serverless applications.
Completion is not a feature or UI, but instead it is a system composed of at least half a dozen orthogonal concerns that most users never think about separately...
There was a great list on now discontinued site qahelp.net. I managed to save it through yandex cache (even google cache and web archive couldn’t help). Difference between API and web services API vs Web Service, Difference between web API and web service, Difference between API and web service What APIs Are And Why They’re Important — Brian Proffitt What are web services (section) — Nicholas Chase Introduction to Web Services (PDF) — Ioannis G. Baltopoulos SOAP and REST Understanding SOAP (section) — Nicholas Chase What is REST? (video) — Todd Fredrich Understanding SOAP and REST Basics And Differences — John Mueller How to GET a cup of coffee — Jim Webber, Savas Parastatidis & Ian Robinson API and web services testing API Testing: Why it matters and how to do it — Michael Churchman Johnny mnemonic — ICEOVERMAD — Ash Winter The API Testing Dojo — Smart Bear API Testing: UI Tools — Avinash Shetty API Testing: Developer Tools — Avinash Shetty WTEU-53 — An introduction to API Testing — Amy Phillips Some API Testing Basic Introductory Notes and Tools — Alan Richardson Deep dive into REST API How to design a REST API — Antoine Chantalou, Jérémy Buisson, Mohamed Kissa, Florent Jaby, Nicolas Laurent, Augustin Grimprel, Benoit Lafontaine The commoditization of the user interface — Todd Friedrich REST API application layers — Todd Friedrich REST API design: Resource modeling — Prakash Subramaniam Richardson maturity model — Martin Fowler API security testing How to Hack an API and Get Away with It (Part 1 of 3) — Ole Lensmar How to Hack an API and Get Away with It (Part 2 of 3) — Ole Lensmar How to Hack an API and Get Away with It (Part 3 of 3) — Ole Lensmar WTEU-56 — Security testing for APIs — Dan Billing Service virtualization What is service virtualization — John Mueller Hardening Your Application Against API Failures with API Virtualization — Lorinda Brandon 4 Ways to Boost Your Test Process with Service Virtualization — Bas Dijkstra Introduction to microservices Micro
Serverless promises to abstract away infrastructure entirely. So why hasn’t it won? The gap between a clean pitch and what organisations actually face when they go to adopt it explains a lot about how technology bets go wrong.
All of this comes from reading everything in Martin Fowler’s https://www.martinfowler.com/microservices/, and many of it’s linked articles. Core reading Microservices https://www.martinfowler.com/articles/microservices.html Microservice architectural style: building applications as suites of services Amazon has the idea of a Two Pizza Team - a team should be feedable by two pizzas Smart Endpoints Dumb Pipes - There is no smart choreography of messages or central busses, just straight service calls over http or something similarly simple. At most, there are message queue services (e.g. rabbitmq).
Log microservice usage and bytes sent directly to Google BigQuery using OpenResty and Lua for accurate billing and analytics.
By trying to always use the 'right tool' you might be overcomplicating your whole structure
Unlock your career potential in 2023! Discover the 75 top software engineering skills you need to stand out in the tech industry. Start learning today!
At CraftConf 2017 Phil Calçado presented “The Economics of Microservices”. The key takeaway from the talk: the ‘Inverse Conway Maneuver’ can be a useful tool to shape an application’s architecture during a migration away from a monolith, but this can lead to creating ‘microliths’ unless the ‘transaction cost’ of creating a new service is lowered to below the cost of adding to an existing monolith.
Rust adoption can be loud, like when companies such as Microsoft, Meta,…
Level up your Java code and explore what Spring can do for you.
Today I attended a full day workshop presented by Sam Newman and Scott Shaw on micro-services. Most people seemed pretty up with the why of micro-services, if you’re not James Lewis and Martin Fowler have talked at length on the subject. The workshop covered a wide range of topics and gave an excellent overview of the how and what of micro-services, something which is still lacking in literature (but is coming, see below).
The classic N + 1 Selects problem rears its head in the new world of SOA.
Deleting data within a microservices architecture can be more challenging than within a monolith, but there are different options.
Are microservices still relevant in the age of AI? Experts explain how microservices architecture strengthens AI systems.
In the trivago backend, we use the reactive programming pattern for fetching prices from advertisers and updating our caches. Th...
Moving away from a monolithic codebase to a service-oriented architecture (SOA) was not an easy task. Here are some of the scalability problems we faced and the steps we took to solve them.
.NET Microservices Architecture for Containerized .NET Applications | Microservices are modular and independently deployable services. Docker containers (for Linux and Windows) simplify deployment and testing by bundling a service and its dependencies into a single unit, which is then run in an isolated environment.
How we as engineers define our culture. Contribute to guardian/our-engineering-culture development by creating an account on GitHub.
T.J. Maher, a QA Engineer since 1996, blogs about his transition from a manual tester to an automation developer to a software engineer in test.
The pipelines as code technique emphasizes that the configuration of delivery pipelines that build, test and deploy our applications or infrastructure should be treated as [...]
Deciphering Glyph, the blog of Glyph Lefkowitz.
Articles on the craft of software development.