Horizontal and Vertical scaling in the Cloud

In this world of cloud, one of the biggest features is the ability to scale. There are different ways to accomplish scaling, which is a transformation that enlarges or diminishes. One is vertical scaling and the other is horizontal scaling.

What is the difference between the two? If you look at just the definitions of vertical and horizontal you might see the following:

• Vertical: something that is standing directly upright at a right angle to the flat ground
• Horizontal: something that is parallel to the horizon (the area where the sky seems to meet the earth)

If you are a visual kind of person you may be able to see this. Let’s add some technology to this and see what we get.

Vertical scaling can essentially resize your server with no change to your code. It is the ability to increase the capacity of existing hardware or software by adding resources. Vertical scaling is limited by the fact that you can only get as big as the size of the server.

Horizontal scaling affords the ability to scale wider to deal with traffic. It is the ability to connect multiple hardware or software entities, such as servers, so that they work as a single logical unit. This kind of scale cannot be implemented at a moment’s notice.

So, having said all that, I always like to provide an example that you might be able to visually imagine.

Imagine, if you will, an apartment building that has many rooms and floors where people move in and out all the time. In this apartment building, 200 spaces are available but not all are taken at one time. So, in a sense, the apartment scales vertically as more people come and there are rooms to accommodate them. As long as the 200-space capacity is not exceeded, life is good.

This could even apply to a restaurant. You have seen the signs that tell you how many people could be held in the establishment. As more patrons come in more tables may be set up and more chairs added (scaling vertically). However when capacity is reached no more patrons would be able to fit. You can only be as big as the building and patio of the restaurant. This is much like in your cloud environment, where you could add more hardware to the existing machine (RAM and hard drive space) but you are limited to capacity of your actual machine.

On the horizontal scaling side, imagine a two lane expressway. The expressway is good to handle the 2,000 or so vehicles that travel the expressway. As commerce begins to expand, more buildings are constructed and more homes are built. As a result the expressway that once handled 2,000 or so vehicles is now having an increase to 8,000 vehicles. This makes a major traffic jam during rush hour. To alleviate this problem of traffic jams and an increase in accidents, the expressway can be scaled horizontally by constructing more lanes and quite possibly adding an overpass. In this example the construction will take some time. Much like scaling your cloud horizontally, you add additional machines to your environment (scaling wider). This requires planning and making sure you have resources available as well as making sure your architecture can handle the scalability.

I think this could be a simple way to explain scalability to a customer if they wanted to know the difference between vertical and horizontal scaling in the cloud. What are your thoughts? How have you described scalability? Leave a comment below and let me know.


Горизонтальное и вертикальное масштабирование в облаке

В этом облачном мире одной из важнейших функций является возможность масштабирования. Есть разные способы выполнить масштабирование, то есть преобразование, которое увеличивает или уменьшает. Один - это вертикальное масштабирование, а другой - горизонтальное масштабирование.

Какая разница между двумя? Если вы посмотрите только на определения вертикального и горизонтального, вы можете увидеть следующее:

• Вертикально: что-то, что стоит прямо вертикально под прямым углом к ​​плоской земле.
• По горизонтали: что-то параллельное горизонту (область, где кажется, что небо встречается с землей).

Если вы визуальный человек, вы можете это увидеть. Давайте добавим к этому технологию и посмотрим, что у нас получится.

Вертикальное масштабирование может существенно изменить размер вашего сервера без изменения вашего кода. Это возможность увеличить емкость существующего оборудования или программного обеспечения за счет добавления ресурсов. Вертикальное масштабирование ограничено тем фактом, что вы можете получить только размер сервера.

Горизонтальное масштабирование дает возможность масштабироваться шире для обработки трафика. Это возможность соединить несколько аппаратных или программных объектов, таких как серверы, так, чтобы они работали как единое логическое устройство. Такая шкала не может быть реализована в любой момент.

Итак, сказав все это, я всегда хотел бы привести пример, который вы могли бы визуально представить.

Представьте себе многоквартирный дом с множеством комнат и этажей, куда люди постоянно входят и выходят. В этом многоквартирном доме доступно 200 мест, но не все они заняты одновременно. Таким образом, в некотором смысле квартира масштабируется по вертикали по мере того, как приходит больше людей и появляются комнаты для их размещения. Пока емкость 200 мест не превышена, жизнь хороша.

Это может относиться даже к ресторану. Вы видели таблички, на которых указано, сколько человек может содержаться в заведении. По мере того, как приходит больше посетителей, может быть установлено больше столов и добавлено больше стульев (масштабирование по вертикали). Однако, когда емкость будет достигнута, посетители уже не смогут поместиться. Вы можете быть размером с здание и внутренний дворик ресторана. Это очень похоже на вашу облачную среду, где вы можете добавить дополнительное оборудование к существующей машине (ОЗУ и место на жестком диске), но вы ограничены емкостью вашей реальной машины.

Что касается горизонтального масштабирования, представьте себе двухполосную скоростную автомагистраль. Скоростная автомагистраль подходит для примерно 2000 транспортных средств, которые едут по ней. По мере того как торговля начинает расширяться, строится больше зданий и строится больше домов. В результате скоростная автомагистраль, которая когда-то обслуживала около 2 000 автомобилей, теперь увеличилась до 8 000 машин. Это создает большую пробку в час пик. Чтобы облегчить проблему пробок и увеличения количества аварий, скоростную автомагистраль можно масштабировать по горизонтали, построив больше полос и, вполне возможно, добавив эстакаду. В этом примере строительство займет некоторое время. Как и при горизонтальном масштабировании облака, вы добавляете в среду дополнительные машины (масштабирование шире). Это требует планирования и обеспечения наличия доступных ресурсов, а также уверенности в том, что ваша архитектура поддерживает масштабируемость.

Я думаю, что это может быть простой способ объяснить заказчику масштабируемость, если он хочет знать разницу между вертикальным и горизонтальным масштабированием в облаке. о чем ты думаешь? Как вы описали масштабируемость? Оставьте комментарий ниже и дайте мне знать.

How to explain vertical and horizontal scaling in the cloud - Cloud computing news
In this world of cloud, one of the biggest features is the ability to scale. There are different ways to accomplish scaling, which is a transformation that enlarges or diminishes. One is vertical scaling and the other is horizontal scaling. What is the difference between the two? If you look at just…

This article get from ibm.com, Bu maqola ibm.com dan olindi, yuqorida maqolani asl nusxasiga havola keltirilgan.