InfoQ Homepage Architecture & Design Content on InfoQ
-
Seven Ways to Fail at Microservices
At QCon Plus last November, I presented some of the ways microservices can go wrong. I’m a consultant for IBM, and part of my job is helping businesses get cloud-native. These problems are based on my experience – which, unfortunately, I see repeatedly in the field.
-
Creating and Using HTTP Client SDKs in .NET 6
In this article, the author explains the process behind developing HTTP Client SDKs in .NET 6. Different approaches for real-world scenarios are presented and explained while the author shows you how to develop your own SDK using .NET 6, step-by-step.
-
Managing Technical Debt in a Microservice Architecture
At QCon Plus, Glenn Engstrand described how Optum Digital engineering devised a method for reliably and predictably paying down tech debt for hundreds of microservices, forming relevant communities and identifying high-risk areas. The communities' collective decisions can be compiled into an actionable roadmap and presented to product managers in a systemic and non-confrontational way.
-
The Major Software Industry Trends from 2021 and What to Watch in 2022
In this podcast summary Thomas Betts, Wes Reisz, Shane Hastie, Charles Humble, Srini Penchikala, and Daniel Bryant discuss what they have seen in 2021 and speculate a little on what they hope to see in 2022. Topics explored included: hybrid working and the importance of ethics and sustainability within technology.
-
Java InfoQ Trends Report—December 2021
This article provides a summary of how the InfoQ Java editorial team and various Java Champions currently see the adoption of technology and emerging trends within the Java and JVM space in 2021.
-
Safe and Fast Deploys at Planet Scale
At QCon Plus, Mathias Schwarz, a software engineer at Uber, presented safe and fast deploys at planet scale. Uber is a big business and has several different products. They are, in most cases, deployed to dozens or hundreds of markets all over the world.
-
Six Features From Java 12 to 17 to Get Excited About!
Oracle maintains an ambitious release schedule for new versions of Java, having one fixed release every six months. Although frequent, only some versions are considered long-term support, which means they’ll have premium maintenance for three years. In this article, I review some of the language additions between Java 12 and 17, for anyone interested in what’s been happening since Java 11.
-
Getting Started with gRPC and .NET
In this article, the author introduces the core concepts behind gRPC and how it can be used with API development. The basic pros and cons of using gRPC instead of REST are also explained with a scenario analysis. The text is illustrated with a step-by-step tutorial on how to use gRPC to develop streaming services in .NET.
-
SaaS DR/BC: If You Think Cloud Data is Forever, Think Again
SaaS is quickly becoming the default tool for how we build and scale businesses. It’s cheaper and faster than ever before. However, this reliance on SaaS comes with the risk of disaster recovery. The “Shared Responsibility Model” doesn’t just govern your relationship with cloud, it actually impacts all of cloud computing. Even for SaaS, users are on the hook for protecting their own data.
-
Lightweight External Business Rules
Complex enterprise applications usually come with varying business logic. Such conditions and subsequent system actions, known as rules, are ever varying and demand involvement of domain specific knowledge more than technology and programming. The rules must reside outside the codebase, authored by people with core domain expertise with minimal tech knowledge.
-
Design Patterns for Serverless Systems
After shortly introducing design patterns at different levels of abstractions, this article will present a few patterns specifically suited to serverless systems, including the Pipes and Filters pattern and show a POC implementation using AWS EventBridge.
-
Introducing the KivaKit Framework
In this article, we take a brief tour of the KivaKit open source Java microservices application framework. KivaKit is a collection of mini-frameworks designed to work together. Each mini-framework is described in more detail at https://www.kivakit.org as well as on Jonathan Locke’s blog State of the Art.