Введение в облачные и распределенные информационные системы. Тимур Машнин
Читать онлайн книгу.сервис другим пользователям, особенно тем, которым вы не доверяете, может быть, не очень хорошая идея из-за рисков безопасности.
Поэтому существует IaaS – инфраструктура как сервис, которая позволяет получить к машинам, и установить свои собственные операционные системы, но без доступа администратора root.
По сути, здесь используется виртуализация, чтобы, вы могли установить собственные виртуальные машины.
PaaS – платформа как сервис, по сути, представляет собой разновидность IaaS.
Вы не получаете доступ к самим виртуальным машинам, но вы пишете свой код, и он тесно интегрирован с программной платформой.
Например, App Engine от Google позволяет писать код на Python, Java или Go, а затем автоматически масштабирует ваше приложение в зависимости от входящей нагрузки.
При этом вы не задумываетесь об установке дополнительных виртуальных машин.
И наконец, SaaS – программное обеспечение как сервис дает вам доступ к приложениям как сервисам, когда они вам понадобятся, и снова вы платите по требованию.
Например, это Google документы или облачный Microsoft Office.
Итак, какая связь между облаками и распределенными системами?
Облако на самом деле является распределенной системой.
Облако состоит из сотен тысяч компьютеров на стороне центра обработки данных в интегрированном центре.
Это мы называем серверной стороной.
На стороне клиента может быть от тысяч до миллионов машин, которые получают доступ к услугам, и которые размещаются на этих серверах.
Это возможно, веб-страницы, сайты, объекты, которые хранятся, и различные сервисы.
Серверы на стороне центра обработки данных обмениваются между собой данными.
А клиенты напрямую взаимодействуют с серверами.
И каждый клиент может связываться с одним или более серверами.
Клиенты могут также взаимодействовать друг с другом через облако.
Тот факт, что серверы общаются между собой, означает, что это распределенная система, состоящая из множества разных серверов, отправляющих и получающих сообщения между собой.
Это называется кластером.
Клиенты, взаимодействующие с серверами, также создают распределенную систему.
Клиенты, общающиеся друг с другом, создают peer-to-peer распределенную систему.
Все это означает, что облака являются особым классом распределенных систем.
Теперь давайте попытаемся определить термин распределенная система.
Давай примем, что распределенная система представляет собой совокупность объектов, каждый из которых является автономным, программируемым, асинхронным, но и подверженным сбоям, и эти объекты обмениваются информацией через ненадежную среду связи.
Здесь объекты – это по существу процессы.
Таким образом, каждый объект является процессом, который работает на каком-либо устройстве.
И каждый объект является автономным и программируемым, так как это процесс.
Асинхронный