InfoQ Homepage Architecture & Design Content on InfoQ
-
Billions of Messages Per Minute Over TCP/IP
Chronicle Wire offers an alternative way of transferring data between systems, delivering more messages, faster, than common JSON/XML approaches. This approach to data serialization improves both latency and throughput.
-
A Simple Framework for Architectural Decisions
This article describes a framework for making architectural decisions using three building blocks: The company's own Technology Radar; Technology Standards; and Architecture Decision Records (ADRs). The framework clarifies decision-making, team involvement, and information on already made decisions and aligns with the company's needs and culture.
-
The Great Lambda Migration to Kubernetes Jobs—a Journey in Three Parts
In this article, I’d like to share our journey at Firefly on a great migration from serverless to Kubernetes jobs, lessons learned, and the technologies that helped us do so with minimal pain.
-
Contract-Driven Development – a Real-World Adoption Journey
Contract-driven development adoption is not just about tooling or practices, it involves changing how people work with each other and in order to influence such changes, the roadmap for adoption should account for the learning curve and demonstrate value incrementally at each stage to individual team members and the organization as a whole.
-
Migrating to the Cloud: Is It as Intimidating as It Appears?
Being Cloud Native is often considered crucial for business success in the current business landscape. However, the perception of becoming “Cloud Native” as a drastic change for a business might not necessarily be accurate. In this article, we will delve into the concept of Cloud Migration and its effects on the IT support infrastructure of your business.
-
What Are Cloud-Bound Applications?
The increasing adoption of application-first cloud services is causing applications to blend with the cloud services at levels much deeper than before. The runtime boundaries between the application and the cloud are shifting from virtual machines to containers and functions.
-
Interactive Microservices as an Alternative to Micro Front-Ends for Modularizing the UI Layer
While microservices architectures are well established for the back-ends of software systems, the same cannot be said for front-ends. Interactive microservices are based on a new type of web API that Qworum defines, the multi-phase web API, where the endpoint calls may involve more than one request-response pair, also called a phase.
-
Writing Cloud Native Network Functions (CNFs): One Concern per Container
This article discusses the “one concern, one process” design for containers and Cloud native network functions (CNFs).
-
How to Have More Effective Conversations with Business Stakeholders About Software Architecture
Technical leaders must be able to communicate with business stakeholders to effectively design software solutions that meet the business needs and stay within an established cost threshold. Making architectural decisions requires understanding the desired quality attributes that will affect trade-off discussions between technical and non-technical stakeholders.
-
The Future of Service Mesh is Networking
On this journey, we will discover that, to quote David Mooter, “The future of service mesh is as a networking feature, not a product category, as far out of sight and mind from developers as possible—and that is a good thing.”
-
The Process of Creating Decentralized Apps (dApps)
A decentralized application has a different architectural approach; they are working on distributed ledger technology called blockchain, where there is no central point of failure nor third parties involved. A revolutionary and attractive technology for new opportunities. This article covers creating such applications and why they are needed, as well as challenges during implementation.
-
The Unit in Unit Testing
In this article, we will focus on how developers should consider using fake objects instead of mock objects, as fake objects offer similar isolation benefits while driving high confidence, clear documentation, and loose coupling between implementation and test code.