InfoQ Homepage Architecture & Design Content on InfoQ
-
Serverless Security: What's Left to Protect?
This article aims to provide a broad understanding of security in the Serverless world. We'll consider the ways in which Serverless improves security, the areas where it changes security, and the security concerns it hurts.
-
Designing, Implementing, and Using Reactive APIs
Reactive programming is a hot topic in the Java world. Whether you want to leverage non-blocking APIs, manage the latency introduced by the explosion of microservices, or simply utilize computing resources more efficiently, it's time to look at reactive as a viable programming model. In this article, we offer some opinions on how you should design, implement and use reactive APIs.
-
Virtual Panel: Succeeding with Event Sourcing
Why should you use event sourcing as a data storage and retrieval technique? What are the architectural implications? When should you use platforms versus frameworks to satisfy requirements? InfoQ interviewed two experts to learn more.
-
Building a CI System with Java 9 Modules and Vert.x Microservices
Java 9 and Vert.x microservices are compatible for building applications, as showcased by this example application that implements a minimal, but working CI system.
-
Migrating Batch ETL to Stream Processing: A Netflix Case Study with Kafka and Flink
At QCon New York, Shriya Arora presented “Personalising Netflix with Streaming Datasets” and discussed the trials and tribulations of a recent migration of a Netflix data processing job from the traditional approach of batch-style ETL to stream processing using Apache Flink.
-
The Kubernetes Effect
To successfully design for, implement, and run applications on Kubernetes requires knowledge of primitives, and awareness of design principles and practices. This article provides an overview of Kubernetes and guidance for how to best use it.
-
Exploring the Fundamentals of Stream Processing with the Dataflow Model and Apache Beam
At QCon San Francisco 2016, Frances Perry and Tyler Akidau presented “Fundamentals of Stream Processing with Apache Beam”, and discussed Google's Dataflow model and associated implementation of Apache Beam.
-
JPA 2.2 Brings Some Highly Anticipated Changes
Released this past summer, JPA 2.2 delivered some frequently requested enhancements, especially by providing better alignment with Java 8 features, such as support for the Date and Time API and the retrieval of a query result as a Stream.
-
Is Batch ETL Dead, and is Apache Kafka the Future of Data Processing?
At QCon San Francisco 2016, Neha Narkhede presented “ETL is Dead; Long Live Streams”, and discussed the changing landscape of enterprise data processing. A core premise of the talk was that the open source Apache Kafka streaming platform can provide a flexible and uniform framework that supports modern requirements for data transformation and processing.
-
Demystifying DynamoDB Streams: An Introduction to Ordering, Deduplication and Checkpointing
Akshat Vig and Khawaja Shams explore the implementation of Amazon DynamoDB Streams, and argue that understanding ordering, de-duplication and checkpointing are vital for building distributed systems.
-
Five Things Every Developer Should Know about Software Architecture
Given the distributed nature of the software systems we’re now building, and the distributed nature of the teams building them, it's more important than ever to understand the basics of software architecture. As a short introduction to the topic and to debunk some myths, here are five things that every software developer should know about software architecture.
-
Getting Started with Microservices in SpringBoot
Enterprises have learned to create software using agile processes, but we are still producing large monolithic beasts of software. If you are not already using Microservices, you are safely out of the early adopter phase of the adoption curve. This article will help you get started creating, discovering, and calling Microservices.