InfoQ Homepage Architecture & Design Content on InfoQ
-
Environment-as-a-Service (EaaS) as a Technique to Raise Productivity in Teams
In essence, EaaS addresses developer productivity issues by providing settings that make it simple for developers to test and mimic real-world uses of their system. This article discusses the benefits of EaaS.
-
Building Functional .NET Applications: a Guide for Choosing between F# vs C#
C# and F# are languages, each with growing user bases, that approach functional programming in fundamentally different ways. C# relies on object-oriented, imperative principles, and F# relies on functional principles. Some developers are using F# as a complement to C#, rather than relying on the functional capabilities that exist natively in C#.
-
Containers and Serverless—Rivals or Cohorts?
This article will try to decode these technologies and explore how developers should consider containers or serverless functions within their tech stack. For example, if your application has a longer startup time, then a container would suit the need better. Highly efficient stateless functions that need to scale up and down massively would benefit from running serverless functions.
-
Lambda Throttling - How to Avoid It?
This article aims to explain best practices if you have throttled your application and services and suggestions for how to handle these cases. We performed an in-house experiment at Jit (a SaaS-based DevSecOps platform) built on serverless to learn how our application behaves.
-
Accessing .NET gRPC Endpoints from Anywhere via JSON Transcoding
JSON transcoding is a feature that has been added to gRPC in .NET 7. It allows gRPC endpoints to be accessible via a REST API, and it's much easier to set up than any alternative technology available at the time of writing, such as gRPC-Gateway and gRPC-Web.
-
Proven Solutions to Five Test Automation Issues
Automated testing is often blocked due to some well-known issues, especially in a microservices architecture. API and service simulators can eliminate five common issues that block test automation.
-
InfoQ Software Trends Report: Major Trends in 2022 and What to Watch for in 2023
2022 was another year of significant technological innovations and trends in the software industry and communities. The InfoQ podcast co-hosts met last month to discuss the major trends from 2022, and what to watch for in 2023. This article is a summary of the 2022 software trends podcast.
-
A Skeptic’s Guide to Software Architecture Decisions
Skepticism is an architectural superpower that helps you to see through false assumptions before you have followed them too far before they have cost you too much time and created so much work that you’ll never completely recover.
-
Securing a Kafka Cluster in Kubernetes Using Strimzi
Deploying an Apache Kafka cluster to Kubernetes is easy if you use Strimzi, but that’s only the first step; you need to secure the communication between Kafka and the consumers and producers, provide RBAC to access topics, spread the secrets correctly to Kafka Connect components and all using a Kubernetes GitOps way.
-
Microservices Integration Done Right Using Contract-Driven Development
Build your microservices and micro-frontend in parallel and deploy them independently without worrying about integration issues, by leveraging API specifications such as OpenAPI and AsyncAPI as executable contracts to shift left the identification of compatibility bugs with Contract Driven Development using Specmatic, thereby removing the need for integration testing.
-
GraalVM Java Compilers Join OpenJDK in 2023, Align with OpenJDK Releases and Processes
The Community Editions of the GraalVM JIT and Ahead-of-Time (AOT) compilers will move to OpenJDK in 2023. They will align with OpenJDK releases and processes. Existing releases, GraalVM Enterprise Edition, and other GraalVM projects will not. GraalVM 22.3 provides experimental support for JDK 19 and improves observability. Project Leyden will standardize Java AOT compilation.
-
Java InfoQ Trends Report - December 2022
This report provides a summary of how the InfoQ Java editorial team and several Java Champions currently see the adoption of technology and emerging trends within the Java and JVM space in 2022. We focus on Java the language, as well as related languages like Kotlin and Scala, the Java Virtual Machine (JVM), and Java-based frameworks and utilities.