InfoQ Homepage Architecture & Design Content on InfoQ
-
Book Review: Attack of the 50 Foot Blockchain
David Gerard's 2017 book, "Attack of the 50ft Blockchain" is an in-depth look at the cryptocurrency space. The book takes a straightforwardly skeptical angle, and is explicitly intended as a non-technical overview that frames Bitcoin in purely political and economic terms.
-
A Comparison between Rust and Erlang
This article will focus on a comparison between Erlang and Rust, detailing their similarities and differences. It may be interesting to both Erlang developers looking into Rust and Rust developers looking into Erlang. A final section will detail more about each of the language capabilities and shortcomings and argue for the possibility of leveraging both languages' strengths in the same project.
-
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.