background preloader

Architecture

Facebook Twitter

"IaaS vs. PaaS vs. SaaS" Cloud Models (Differences & Examples) We’re no strangers to writing articles that sound a bit like alphabet soup.

"IaaS vs. PaaS vs. SaaS" Cloud Models (Differences & Examples)

As with many technical industries, web hosting comes with a slew of acronyms: VPS, PHP, SSDs, SSL, GUI, LAMP stacks, ASP, MySQL, AWS, CMS, SSH, and IMAP just seem to scratch the surface. Most are pretty straightforward to explain once you have a broad understanding of how hosting works, but I still trip up occasionally when telling someone about the various cloud computing configurations that exist and which solution is best for various project or business needs.

The discussion usually centers around SaaS, IaaS, and PaaS, but there is an -aaS acronym for just about every letter in the alphabet. The on-demand cloud services all streamline the configuration, deployment, and management of infrastructure and applications, but in drastically different ways. Read on for our primer explaining the differences among the cloud platforms and helping you cover your -aaSes.

Fault tolerance

Front. Six Things You Need to Know Before Going Serverless. While the benefits of going serverless seem boundless, you need to keep in mind that it may not be the right fit for your project.

Six Things You Need to Know Before Going Serverless

Just consider the following limitations: A) Lambda’s maximum execution time is 15 minutes (900 seconds) Any resource heavy invocation that requires more than 15 minutes will be automatically terminated before it has had a chance to complete its task. B) No server management means Less Control! Scaling to 12 Million Concurrent Connections: How MigratoryData Did It. Massive scalability is the biggest challenge we undertake at MigratoryData, a provider of an enterprise publish-subscribe messaging system for building very scalable real-time web and mobile applications.

Scaling to 12 Million Concurrent Connections: How MigratoryData Did It

We recently published a blog post demonstrating 12 million concurrent connections with MigratoryData WebSocket Server running on a single 1U server. High Scalability - Tech Stacks. Getafix: How Facebook tools learn to fix bugs automatically - Facebook Code. Facebook has built a tool called Getafix that automatically finds fixes for bugs and offers them to engineers to approve.

Getafix: How Facebook tools learn to fix bugs automatically - Facebook Code

This allows engineers to work more effectively, and it promotes better overall code quality.We believe Getafix is the first tool of its kind to be deployed to production at Facebook scale, contributing to the stability and performance of apps that billions of people use.Getafix powers Sapfix, which suggests fixes for bugs that our Sapienz testing tool finds. Getafix also provides fixes for bugs found by Infer, our static testing tool.Because Getafix learns from engineers’ past code fixes, its recommendations are intuitive for engineers to review.Getafix improves upon previous auto-fix technology by using more powerful techniques for learning fix patterns from past code changes.

Getafix uses a more powerful clustering algorithm and also analyzes the context around the particular lines of problematic code to find more appropriate fixes. Design patterns for modern web APIs – The Feathers Flightpath. Understanding When to use RabbitMQ or Apache Kafka. How do humans make decisions? In everyday life, emotion is often the circuit-breaking factor in pulling the trigger on a complex or overwhelming decision.

But for experts making complex decisions that have long term consequences, it can’t be pure impulse. High performers typically use the circuit breaker of “instinct”, “gut feel” or other emotions only once their expert, unconscious mind has absorbed all the facts required to make a decision. Today there are dozens of messaging technologies, countless ESBs, and nearly 100 iPaaS vendors in market. Naturally, this leads to questions about how to choose the right messaging technology for your needs - particularly for those already invested in a particular choice. 12 Factor CLI Apps – Jeff Dickey. CLIs are a fantastic way to build products.

12 Factor CLI Apps – Jeff Dickey

Unlike web applications, they take a small fraction of the time to build and are much more powerful. With the web, you can do whatever the developer programmed. With CLIs, you can easily mash-up multiple tools together yourself to perform advanced tasks. Donnemartin/system-design-primer: Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards. Kill Your Dependencies. This post talks about Ruby but it's true of every language community: Python, JavaScript, Java, etc.

Kill Your Dependencies

The scourge of dependencies spares no one. This is a dependency visualization of every Rails app I've ever used. Learnk8s. DDD, Hexagonal, Onion, Clean, CQRS, … How I put it all together – @herbertograca. This post is part of The Software Architecture Chronicles, a series of posts about Software Architecture.

DDD, Hexagonal, Onion, Clean, CQRS, … How I put it all together – @herbertograca

No, you don't need ML/AI. You need SQL. Lessons from Building Observability Tools at Netflix. Our mission at Netflix is to deliver joy to our members by providing high-quality content, presented with a delightful experience.

Lessons from Building Observability Tools at Netflix

We are constantly innovating on our product at a rapid pace in pursuit of this mission. Our innovations span personalized title recommendations, infrastructure, and application features like downloading and customer profiles. Our growing global member base of 125 million members can choose to enjoy our service on over a thousand types of devices. If you also consider the scale and variety of content, maintaining the quality of experience for all our members is an interesting challenge. We tackle that challenge by developing observability tools and infrastructure to measure customers’ experiences and analyze those measurements to derive meaningful insights and higher-level conclusions from raw data.

At some point in business growth, we learned that storing raw application logs won’t scale. Scaling Log Ingestion Distributed Request Tracing Analysis of Metrics. Damian Hickey.