InfoQ Homepage Architecture & Design Content on InfoQ
-
How BuzzFeed Migrated from a Perl Monolith to Go and Python Microservices
Starting in 2016 BuzzFeed began a re-architecture project moving from a single monolithic application written in Perl to a set of microservices. The main reason for the move was that the Perl application was proving hard to scale, essential given that buzzfeed.com alone serves about 7 billion page views/month.
-
Can People Trust the Automated Decisions Made by Algorithms?
The use of automated decision making is increasing. These algorithms can produce results that are incomprehensible, or socially undesirable. How can we determine the safety of algorithms in devices if we cannot understand them? Public fears about the inability to foresee adverse consequences has impeded technologies such as nuclear energy and genetically modified crops.
-
Democratizing Stream Processing with Apache Kafka and KSQL - Part 1
In this article, author Michael Noll discusses the stream processing with KSQL, the streaming SQL engine for Apache Kafka. Topics covered include challenges of stateful stream processing and how KSQL addresses them, and how KSQL helps to bridge the world of streams and databases through streams and tables.
-
Picking an Active-Active Geo Distribution Strategy: Comparing Merge Replication and CRDT
Modern distributed applications are fuelling the growing demand for distributed active-active, multi-master databases. While most popular databases support multi-master deployment, different databases employ different techniques. LWW, MVCC, merge replication and CRDTs deliver eventual consistency, offering read and write access with local latency and remaining available during network partitions.
-
Ballerina Tutorial: A Programming Language for Integration
Ballerina is a new programming language and platform whose objective is to make it easy to create resilient services that integrate and orchestrate across distributed endpoints. Ballerina’s design principles focus on baking integration concepts into a language, including a network-aware type system, sequence diagrammatic syntax, concurrency workers, being “DevOps ready”, and environment awareness.
-
How to Deal with Open Source Vulnerabilities
Despite the shockwaves following the Equifax hack in September 2017, the industry still has a long way to go in protecting their products. A key area to focus on is the open source components that comprise 60-80% of the code base in modern applications. Learn how to detect vulnerable open source components and keep your products secure.
-
Ballerina Microservices Programming Language: Introducing the Latest Release and "Ballerina Central"
The tutorial demonstrates Ballerina, a new programming language and platform whose objective is to make it easy to create resilient services that integrate and orchestrate across distributed endpoints. Ballerina uses compile time abstractions for distributed system primitives that enable the compiler to generate artifacts like API gateways for deployment to Docker and Kubernetes.
-
AWS VPC Subnets – in Layperson’s Terms
In this article, we are going to look at the different types of VPC setups available in AWS. We will also walk through the core terminology for VPC and explain the primary components.
-
Columnar Databases and Vectorization
In this article, author Siddharth Teotia discusses the Dremio database which is based on Apache Arrow with vectorization capabilities.
-
Microservices and the Economics of Small Things
In this article Mark Burgess explores the process of "decentralizing intent" and the effect it has on the predictability of our systems including what we can know as we scale systems.
-
Developers. Our Last, Best Hope for Ethics?
In March, Stack Overflow published their Developers’ Survey for 2018 and for the first time they asked questions about ethics. The good news is that to “Do Developers Have an Obligation to Consider the Ethical Implications of Their Code?” nearly 80% responded “yes”. However, only 20% felt ultimately responsible for their unethical code, and 40% would write unethical code if asked.
-
Book Review and Q&A: Microservices and Containers by Parminder Singh Kocher
The book Microservices and Containers, by Parminder Singh Kocher, provides a deep dive into the main concepts, patterns and technologies used to implement modern, highly available, highly scalable cloud-native applications.