InfoQ Homepage Performance & Scalability Content on InfoQ
-
How Netflix Ensures Highly-Reliable Online Stateful Systems
Building reliable stateful services at scale isn’t a matter of building reliability into the servers, the clients, or the APIs in isolation. By combining smart and meaningful choices for each of these three components, we can build massively scalable, SLO-compliant stateful services at Netflix.
-
Magic Pocket: Dropbox’s Exabyte-Scale Blob Storage System
A horizontally scalable exabyte-scale blob storage system which operates out of multiple regions, Magic Pocket is used to store all of Dropbox’s data. Adopting SMR technology and erasure codes, the system has extremely high durability guarantees but is cheaper than operating in the cloud.
-
Design Pattern Proposal for Autoscaling Stateful Systems
In this article, Rogerio Robetti discusses the challenges in auto-scaling stateful storage systems and proposes an opinionated design solution to automatically scale up (vertical) and scale out (horizontal) from a single node up to several nodes in a cluster with minimum configuration and interference of the operator.
-
A Recipe to Migrate and Scale Monoliths in the Cloud
In this article, I want to present a simple cloud architecture that can allow an organization to take monolithic applications to the cloud incrementally without a dramatic change in the architecture. We will discuss the minimal requirements and basic components to take advantage of the scalability of the cloud.
-
Using the Plan-Do-Check-Act Framework to Produce Performant and Highly Available Systems
The PDCA (plan-do-check-act) framework can be used to outline the performance, availability, and monitoring to enable teams to ensure performant and highly available applications. These include infrastructure design and setup, application architecture and design, coding, performance testing, and application monitoring.
-
Donkey: a Highly-Performant HTTP Stack for Clojure
Donkey is the product of the quest for a highly performant Clojure HTTP stack aimed to scale at the rapid pace of growth we have been experiencing at AppsFlyer, and save us computing costs. In this article, we’ll briefly outline the use-case for a library like Donkey and present our benchmarks. Finally, we will discuss Clojure and immutability, and some of our design decisions.
-
Four Techniques Serverless Platforms Use to Balance Performance and Cost
There are two aspects that have been key to the rapid adoption of serverless computing: the performance and the cost model. This article looks at those aspects, the tradeoffs, and opportunity ahead.
-
Scaling a Distributed Stream Processor in a Containerized Environment
The article presents our experience of scaling a distributed stream processor in Kubernetes. The stream processor should provide support for maintaining the optimal level of parallelism. However, adding more resources incurs additional cost and also it does not guarantee performance improvements. Instead, the stream processor should identify the level of resource requirement and scale accordingly.
-
Columnar Databases and Vectorization
In this article, author Siddharth Teotia discusses the Dremio database which is based on Apache Arrow with vectorization capabilities.
-
Six Tips for Running Scalable Workloads on Kubernetes
Tips to ensure Kubernetes knows what is happening with your deployment: where best to schedule it, when is it ready to serve requests and ensuring work is spread across as many nodes as possible.
-
Unleashing the Power of .NET Big Memory and Memory Mapped Files
In continuation of the Big Memory topic on the .NET platform, this article describes the benefits of utilization of large data sets in-process on the managed CLR server environments using Agincore’s Big Memory Pile.
-
Developing a Secure and Scalable Web Ecosystem at LinkedIn
LinkedIn’s hyper-growth placed strains on the organization’s infrastructure. A new release model was instrumental to scale and led to increased code quality, security, and member satisfaction.