InfoQ Homepage Architecture Content on InfoQ
-
Rethinking Flink’s APIs for a Unified Data Processing Framework
Since its very early days, Apache Flink has followed the philosophy of taking a unified approach to batch and streaming. The core building block is the “continuous processing of unbounded data streams, with batch as a special, bounded set of those streams.” Recent updates to the Flink APIs include architectural designs by the community to support batch and streaming unification in Apache Flink.
-
Using Java to Orchestrate Robot Swarms
Ocado Technology uses state-of-the-art robotics to power highly automated fulfillment centres. To orchestrate the robot swarms and maximise every bit of efficiency from the warehouses, they've developed a control system analogous to an air traffic control system. This article covers decisions regarding the language, development principles, and architecture choices.
-
How to Use Chaos Engineering to Break Things Productively
Chaos can be a preventative for calamity. It's predicated on the idea of failure as the rule rather than the exception, and it led to the development of the first dedicated chaos engineering tools. This article explores chaos engineering, and how to apply it.
-
Designing Chaos Experiments, Running Game Days, and Building a Learning Organization: Chaos Conf Q&A
The second Chaos Conf event is taking place in San Francisco over 25-26 September. In preparation for the conference, InfoQ sat down with a number of the presenters, and discussed topics such as the evolution and adoption of chaos engineering, key people and process learning from running chaos experiments, and what the biggest blockers are for mainstream adoption.
-
Cellery: A Code-First Approach to Deploy Applications on Kubernetes
Cellery is a code-first approach to building, integrating, running, and managing composite applications on Kubernetes, using a cell-based architecture. Learn what cells are, how Cellery works, and see how an existing Kubernetes application written by Google can be deployed, managed, and observed using Cellery.
-
An Engineer’s Guide to a Good Night’s Sleep
Increased microservices adoption, fueled by the move to the cloud where architectures and infrastructure can flex and be ephemeral, adds complexity every day to the systems we create and maintain. This takes place alongside operating models with autonomous and totally empowered teams, so each distributed system has its own tapestry of technical approaches, languages, and services.
-
Testing Microservices: an Overview of 12 Useful Techniques - Part 1
When building a microservice system, you will need to manage inter-dependent components in order to test in a cost and time effective way. You can use test doubles in your microservice tests that pretend to be real dependencies for the purpose of the test. However, there are many options for implementing this. This article provides an overview and tradeoffs of 12 techniques.
-
Kubernetes Workloads in the Serverless Era: Architecture, Platforms, and Trends
Explore how microservices architecture has evolved into cloud-native architecture, where many of the infrastructure concerns are provided by Kubernetes in combination with additional abstractions provided by service mesh and serverless frameworks. In addition, the serverless ecosystem is evolving by exploring standard and open packaging, runtimes, and event formats.
-
Java InfoQ Trends Report - July 2019
The InfoQ Java trend report provides an overview of technology adoption and commentary on how we see the Java and JVM-related space evolving in 2019. Key developments include the release of Java 13, the rise of non-HotSpot JVMs and the evolution of GraalVM, and the changing landscape of Java microservice frameworks.
-
Waste Not, Want Not: A Simplified Value Stream Map for Uncovering Waste
This article describes a simplified form of Value Stream Maps that makes it easy to visualize bottlenecks and inefficient processes in the software delivery lifecycle. It focuses on the two forms of Lean waste defined as Inventory and Waiting.
-
Understanding Serverless: Tips and Resources for Building Servicefull Applications
There are still many misconceptions and concerns regarding serverless solutions. Vendor lock-in, tooling, cost management, cold starts, monitoring and the development lifecycle are all hot topics where serverless technologies are concerned. This article shares tips and resources to guide serverless newcomers towards building powerful, flexible and cost-effective serverless applications.
-
How Developers Can Learn the Language of Business Stakeholders
This article explores how business stakeholders and developers can improve their collaboration and communication by learning each other's language and dictionaries. It explores areas where there can be the most tension: talking about impediments and blockers, individual and team learning, real options, and risk management.