Deciding between horizontal and vertical scaling is an important infrastructure consideration when building out applications because it determines how your application will increase its computing resources to handle growth. In simple terms, horizontal and vertical scaling are two strategies for adding computing resources to run your app as demand increases.
A few ideas and considerations for architecting a live streaming application based on our previous experience.
Why you should stop blaming a programming language for your low quality work.
I’ve heard too many times that Ruby on Rails (also called RoR) doesn’t scale. Guess what? Java doesn’t scale, .NET doesn’t scale, PHP doesn’t scale, and Node.js doesn’t scale. No programming language scales if you build terrible software with it.
In this article, I focus on Ruby, but the information is valid for almost any programming language. If you typically benchmark Ruby against other languages like Python or C++, it’s probably slower in most contexts.
The real question is not how long it takes or how many resources it consumes to run some algorithms like regex redux, binary tree searches, or reading DNA sequences.