SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
Amazon Web Services:
    инструменты обеспечения
      масштабируемости и
       отказоустойчивости
                         Дмитрий Тупицын
                         dt@nevesomo.com

            HighLoad++
               2008
                  
Структура доклада
       Преимущества EC2
       Проблемы EC2
       Дополнительные службы
           Simple Storage Service (S3)
           SimpleDB (SDB)
           Simple Queue Services (SQS)
       Языки и библиотеки

                                     
Часть 1




    Преимущества EC2



            
Простота
       Простой интерфейс к EC2 и другим службам
       Просто запускать сервера
       Время запуска/останова инстанции (обычно) 
        меньше 1 минуты
       Не нужен системный администратор
           Нет проблем с сетью и железом



                                   
Минимизация затрат
       Временное добавление серверов
           Пиковая нагрузка зачастую в 10 и более раз выше 
            средней но длится 1­3 часа в сутки
           Повышенная нагрузки во время PR­акций или сезоных 
            изменений
           Сервера для инфраструктурных,периодических задач 
            (бакап, подсчет статиситки)
       Временное отключение серверов
           Часть времени (ночью, выходные) сервера 
 
            простаивают             
Переход к фактической
              нагрузке
       Обычно: 
           Параметр ­ пиковая нагрузка
           Задача – минимизация количества серверов во время 
            пиковой нагрузки
       В облаках: 
           Параметр – фактическая загрузка
           Задача – минимизация серверов во время всего цикла 
            работы системы

                                   
Снижение рисков
       Не требуется больших финансовых вливаний в 
        инфраструктуру
           Особенно важно для нефинансируемых стартапов
       Бизнес модель работает?
           (ДА) Быстро добавляем сервера
           (НЕТ) Не тратимся на аренду




                                   
Часть 2




    Проблемы EC2



          
Что изменилось?
       Все проблемы с сетью и железом решаются 
        отключением проблемных и запуском новых 
        серверов
       При выключении сервера теряются все его 
        данные не сохраненные во внешние службы (S3 и 
        т.д.)
       Новый сервер имеет неизвестный заранее IP 
        адрес (как внешний так и внутренний)

                               
Проблема:
        Потеря данных серверов
       Диски сервера
           /dev/sda1   10Gb    /       (image образ системы)
           /dev/sda2   147Gb   /mnt    (временный диск)
       / ­ при запуске копируется из image
       /mnt – при запуске всегда чистый
       При остановке сервера/instance ничего не 
        сохраняется!!!


                                     
Решение 1:
    Simple Storage Service (S3)
       Самое простое решение
       Неограниченный объем хранилища
       Доступен как из EC2 так и ”снаружи”
       Цена: 0.15$Гб + $ за количество запросов
       Недостаток
           чтобы избежать потерь данных при ”падении” 
            серверов необходимо часто реплицировать данные на 
            S3

 
           Медлено работает с большим количеством файлов
                                   
Решение 2:
         Elastic Block Store (EBS)
       Монтируется как блочное устройство
       Размер от 1Гб до 1Тб
       Механизм создания снэпшотов в S3
       Снэпшоты инкрементальные
       Данные реплицируются между несколькими 
        серверами в одном дата­центре (S3­в разных)
       Цена: 0.1$/Гб + 0.1$ за 1М операций

                                
Проблема:
            Изменение IP адресов
       ip remap средствами EC2
           Ограничение 5 адресов. Можно увеличить
           Фиксированный ip стоит 0.01$/час ~ 7.2$/месяц
       Традиционные методы
           Развернуть свой DNS сервер
           Развернуть свой Proxy сервер




                                    
Проблема:
                   Расположение
                    дата-центров
       США
       Европа
       России нет
           Это может стать серьезным препятствием для 
            сервисов нацеленных на российский рынок




                                   
Часть 3




    Дополнительные службы



               
Simple Storage Service (S3)
       Простой интерфейс
       Масштабируемость
           Неограниченный объем хранилища и размер 
            отдельных файлов
           Высокая скорость доступа
       Отказоустойчивость
           Репликация данных в различных дата­центрах


                                   
Применение S3
       Хранилище (файлы, фотки ..)
       Бекапы
       Images – образы машин
       Снэпшоты EBS
       Хранение состояний серверов
       Эмуляция файловой системы – плохая идея 
        (используйте EBS)
           Медленно работает с большим количеством 
            маленьких файлов       
SimpleDB (SDB)
       Домен = Таблица




                           
Запросы к SDB
       Бинарные операторы: =, !=, <, > <=, >=, STARTS­
        WITH, AND, OR, NOT, INTERSECTION, UNION
       Унарный оператор: SORT
       Примеры:
           [ 'Type' = 'db' ]
           [ 'IP' starts­with '75.101.249.' ]
           [ 'Status'='running' ] intersection [ 'Type'='db' ]


                                         
Преимущества SDB над БД
       Простота
           Нет формата данных 
           Нет  индексирования
       Большие объемы (до 10Гб в домене, до 100 
        доменов/таблиц)
       Не требуется администрировать
       Масштабируемость
       Отказоустойчивость
                                   
Недостатки SDB
       Примитивные запросы
       Нет связей между таблицами
       Латентность
           Запись распростроняется не мгновенно. При большом 
            объеме задержка до нескольких секунд
       Только лексикографический порядок
       Для текстового поиска придется строить свой 
        индекс
                                   
Пример использования SDB
       Хранение информации о системе в целом
           Адреса серверов
           Состояния серверов
           Измерения производительности серверов
       Логи системы
           Время запуска/останова серверов
           Обнаруженные ошибки
           Время поступление и время обработки заданий

                                   
Simple Queue Services
                  (SQS)
       Неограниченное количество очередей и 
        сообщений
       Сообщения текстовые до 8Кб
       Хранятся 4 дня




                               
Зачем SQS?
       Уменьшает связность между серверами 
        поставщиками заданий и обработчиками
           Ассинхронность
           Легко масштабировать
           Аналогия ­ паттерн цепочка ответственности
       Сохранность связи
           При падении сервера сообщение не потеряется
           Аналоги – Java Message Service, Microsoft Message 
            Queuing
                                    
Передача тяжелых
                  сообщений
       Максимальная длинна сообщения 8Кб
       Можно использовать ссылки вместо данных
           SimpleDB ( ItemID=3752 )
           S3 ( storage/images/img436.jpg )
           Сервера и данные на нем (server3, /var/storage/user342)




                                     
Выводы по службам
       Для гибкого управления серверной 
        инфраструктурой требутся некоторый слой 
        промежуточного ПО
       Можно создавать свое промежуточное ПО
           Придется самостоятельно обеспечивать 
            масштабируемость и отказоустойчивость
       Проще воспользоваться службами Amazon (S3, 
        SDB, SQS ...)

                               
Часть 4




    Языки и библиотеки



             
Библиотеки
       ”Родные” библиотеки на aws.amazon.com
           EC2: Command­Line tools для unix shell
           AWS: Java, C#, Perl, PHP, VB.NET
       Python
           http://code.google.com/p/boto/
       Erlang
           EC2: http://code.google.com/p/erlawys/
           AWS: http://code.google.com/p/erlaws/
                                     
Вопросы?

        Если возникнут позже,
    задавайте на dt@nevesomo.com



                  

Contenu connexe

Tendances

02 Citrus Systems S Pb
02 Citrus Systems S Pb02 Citrus Systems S Pb
02 Citrus Systems S PbLiudmila Li
 
СПИК 2008: Платежная система (Вебмани)
СПИК 2008: Платежная система (Вебмани)СПИК 2008: Платежная система (Вебмани)
СПИК 2008: Платежная система (Вебмани)E-Money News
 
presentation for print media
presentation for print mediapresentation for print media
presentation for print medialinkod
 
WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...
WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...
WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...wud
 
стратегический план презентация
стратегический план презентациястратегический план презентация
стратегический план презентацияdacenkoff
 
управление по целям слайд шоу
управление по целям слайд шоууправление по целям слайд шоу
управление по целям слайд шоуakavnezna
 
Стратегический план
Стратегический планСтратегический план
Стратегический планDarina14
 
Competitions Cloudwatcher_new
Competitions Cloudwatcher_newCompetitions Cloudwatcher_new
Competitions Cloudwatcher_newguest18d24c
 
Chisinau: Course Design
Chisinau: Course DesignChisinau: Course Design
Chisinau: Course DesignMart Laanpere
 
Нагрузочное тестирование клиент-серверных приложений
Нагрузочное тестирование клиент-серверных приложенийНагрузочное тестирование клиент-серверных приложений
Нагрузочное тестирование клиент-серверных приложенийSQALab
 
проектная деятельность.
проектная деятельность.проектная деятельность.
проектная деятельность.guestffb2e9
 
Urazbaev
UrazbaevUrazbaev
Urazbaevsef2009
 
Direct Mail in Marketing Communications_BG
Direct Mail in Marketing Communications_BGDirect Mail in Marketing Communications_BG
Direct Mail in Marketing Communications_BGHristo Radichev
 
знаходження відстані
знаходження відстанізнаходження відстані
знаходження відстаніРита Скитер
 
Etarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case StudyEtarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case StudyEtarget
 
Программа лояльности
Программа лояльностиПрограмма лояльности
Программа лояльностиvseneshtiak
 

Tendances (20)

02 Citrus Systems S Pb
02 Citrus Systems S Pb02 Citrus Systems S Pb
02 Citrus Systems S Pb
 
СПИК 2008: Платежная система (Вебмани)
СПИК 2008: Платежная система (Вебмани)СПИК 2008: Платежная система (Вебмани)
СПИК 2008: Платежная система (Вебмани)
 
presentation for print media
presentation for print mediapresentation for print media
presentation for print media
 
Flash Point 2010 Common
Flash Point 2010 CommonFlash Point 2010 Common
Flash Point 2010 Common
 
WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...
WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...
WUD2008 - Михаил Матвеев, Данила Корнев - Использование контекстной информаци...
 
стратегический план презентация
стратегический план презентациястратегический план презентация
стратегический план презентация
 
управление по целям слайд шоу
управление по целям слайд шоууправление по целям слайд шоу
управление по целям слайд шоу
 
Стратегический план
Стратегический планСтратегический план
Стратегический план
 
Competitions Cloudwatcher_new
Competitions Cloudwatcher_newCompetitions Cloudwatcher_new
Competitions Cloudwatcher_new
 
Chisinau: Course Design
Chisinau: Course DesignChisinau: Course Design
Chisinau: Course Design
 
Нагрузочное тестирование клиент-серверных приложений
Нагрузочное тестирование клиент-серверных приложенийНагрузочное тестирование клиент-серверных приложений
Нагрузочное тестирование клиент-серверных приложений
 
проектная деятельность.
проектная деятельность.проектная деятельность.
проектная деятельность.
 
Metrika Razuvaev
Metrika RazuvaevMetrika Razuvaev
Metrika Razuvaev
 
Problogging
ProbloggingProblogging
Problogging
 
Urazbaev
UrazbaevUrazbaev
Urazbaev
 
Direct Mail in Marketing Communications_BG
Direct Mail in Marketing Communications_BGDirect Mail in Marketing Communications_BG
Direct Mail in Marketing Communications_BG
 
знаходження відстані
знаходження відстанізнаходження відстані
знаходження відстані
 
Etarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case StudyEtarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case Study
 
Программа лояльности
Программа лояльностиПрограмма лояльности
Программа лояльности
 
Slide analyst
Slide analystSlide analyst
Slide analyst
 

En vedette

Como analisar uma imagem
Como analisar uma imagemComo analisar uma imagem
Como analisar uma imagemBibliotecaAroes
 
Análise de Imagem
Análise de ImagemAnálise de Imagem
Análise de Imagemmarianarits
 
Introdução à analise da Imagem (Joly, Martine)
Introdução à analise da Imagem (Joly, Martine)Introdução à analise da Imagem (Joly, Martine)
Introdução à analise da Imagem (Joly, Martine)Juliana Lofego
 
Leitura de imagens
Leitura de imagensLeitura de imagens
Leitura de imagensOver Lane
 
Pedro Pereira Neto - Analise Fotografica
Pedro Pereira Neto - Analise FotograficaPedro Pereira Neto - Analise Fotografica
Pedro Pereira Neto - Analise FotograficaPedro Pereira Neto
 
Análisedeimagem Mágni Paranaíba
Análisedeimagem Mágni ParanaíbaAnálisedeimagem Mágni Paranaíba
Análisedeimagem Mágni Paranaíbamagnijorge
 
Contribuições do fotojornalismo na construção das identidades contemporâneas ...
Contribuições do fotojornalismo na construção das identidades contemporâneas ...Contribuições do fotojornalismo na construção das identidades contemporâneas ...
Contribuições do fotojornalismo na construção das identidades contemporâneas ...Douglas Gonçalves
 

En vedette (7)

Como analisar uma imagem
Como analisar uma imagemComo analisar uma imagem
Como analisar uma imagem
 
Análise de Imagem
Análise de ImagemAnálise de Imagem
Análise de Imagem
 
Introdução à analise da Imagem (Joly, Martine)
Introdução à analise da Imagem (Joly, Martine)Introdução à analise da Imagem (Joly, Martine)
Introdução à analise da Imagem (Joly, Martine)
 
Leitura de imagens
Leitura de imagensLeitura de imagens
Leitura de imagens
 
Pedro Pereira Neto - Analise Fotografica
Pedro Pereira Neto - Analise FotograficaPedro Pereira Neto - Analise Fotografica
Pedro Pereira Neto - Analise Fotografica
 
Análisedeimagem Mágni Paranaíba
Análisedeimagem Mágni ParanaíbaAnálisedeimagem Mágni Paranaíba
Análisedeimagem Mágni Paranaíba
 
Contribuições do fotojornalismo na construção das identidades contemporâneas ...
Contribuições do fotojornalismo na construção das identidades contemporâneas ...Contribuições do fotojornalismo na construção das identidades contemporâneas ...
Contribuições do fotojornalismo na construção das identidades contemporâneas ...
 

Plus de Ontico

Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)
Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)
Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)Ontico
 
Встреча докладчиков HL++ 2015
Встреча докладчиков HL++ 2015Встреча докладчиков HL++ 2015
Встреча докладчиков HL++ 2015Ontico
 
Вебинар о конференции HighLoad++
Вебинар о конференции HighLoad++Вебинар о конференции HighLoad++
Вебинар о конференции HighLoad++Ontico
 
Call for papers (2014) ru
Call for papers (2014) ruCall for papers (2014) ru
Call for papers (2014) ruOntico
 
Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013Ontico
 
Как разработать социальную сеть, Олег Бунин
Как разработать социальную сеть, Олег БунинКак разработать социальную сеть, Олег Бунин
Как разработать социальную сеть, Олег БунинOntico
 
Конференции Онтико (2011)
Конференции Онтико (2011)Конференции Онтико (2011)
Конференции Онтико (2011)Ontico
 
Программный комитет HighLoad++, 6 октября
Программный комитет HighLoad++, 6 октябряПрограммный комитет HighLoad++, 6 октября
Программный комитет HighLoad++, 6 октябряOntico
 
Конференции 2010 / описание
Конференции 2010 / описаниеКонференции 2010 / описание
Конференции 2010 / описаниеOntico
 
Онтико, 2009
Онтико, 2009Онтико, 2009
Онтико, 2009Ontico
 
Конференции 2010
Конференции 2010Конференции 2010
Конференции 2010Ontico
 
Economy of project development
Economy of project developmentEconomy of project development
Economy of project developmentOntico
 
Ok2009 Пленарка
Ok2009 ПленаркаOk2009 Пленарка
Ok2009 ПленаркаOntico
 
Highload sites, master-class, OK-2009
Highload sites, master-class, OK-2009Highload sites, master-class, OK-2009
Highload sites, master-class, OK-2009Ontico
 
HighLoad Sites, Oleg Bunin
HighLoad Sites, Oleg BuninHighLoad Sites, Oleg Bunin
HighLoad Sites, Oleg BuninOntico
 
I Safety 1c Bitrix
I Safety 1c BitrixI Safety 1c Bitrix
I Safety 1c BitrixOntico
 
I Safety 1c Bitrix
I Safety 1c BitrixI Safety 1c Bitrix
I Safety 1c BitrixOntico
 
Gmr Highload Presentation Revised
Gmr Highload Presentation RevisedGmr Highload Presentation Revised
Gmr Highload Presentation RevisedOntico
 
Wonderful World Of Mysql Storage Engines Hl2008 Rus
Wonderful World Of Mysql Storage Engines Hl2008 RusWonderful World Of Mysql Storage Engines Hl2008 Rus
Wonderful World Of Mysql Storage Engines Hl2008 RusOntico
 
Scaling Web Sites By Sharding And Replication Hl2008 Rus
Scaling Web Sites By Sharding And Replication Hl2008 RusScaling Web Sites By Sharding And Replication Hl2008 Rus
Scaling Web Sites By Sharding And Replication Hl2008 RusOntico
 

Plus de Ontico (20)

Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)
Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)
Риски, которые необходимо учесть при разработке сложного проекта (Олег Бунин)
 
Встреча докладчиков HL++ 2015
Встреча докладчиков HL++ 2015Встреча докладчиков HL++ 2015
Встреча докладчиков HL++ 2015
 
Вебинар о конференции HighLoad++
Вебинар о конференции HighLoad++Вебинар о конференции HighLoad++
Вебинар о конференции HighLoad++
 
Call for papers (2014) ru
Call for papers (2014) ruCall for papers (2014) ru
Call for papers (2014) ru
 
Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013
 
Как разработать социальную сеть, Олег Бунин
Как разработать социальную сеть, Олег БунинКак разработать социальную сеть, Олег Бунин
Как разработать социальную сеть, Олег Бунин
 
Конференции Онтико (2011)
Конференции Онтико (2011)Конференции Онтико (2011)
Конференции Онтико (2011)
 
Программный комитет HighLoad++, 6 октября
Программный комитет HighLoad++, 6 октябряПрограммный комитет HighLoad++, 6 октября
Программный комитет HighLoad++, 6 октября
 
Конференции 2010 / описание
Конференции 2010 / описаниеКонференции 2010 / описание
Конференции 2010 / описание
 
Онтико, 2009
Онтико, 2009Онтико, 2009
Онтико, 2009
 
Конференции 2010
Конференции 2010Конференции 2010
Конференции 2010
 
Economy of project development
Economy of project developmentEconomy of project development
Economy of project development
 
Ok2009 Пленарка
Ok2009 ПленаркаOk2009 Пленарка
Ok2009 Пленарка
 
Highload sites, master-class, OK-2009
Highload sites, master-class, OK-2009Highload sites, master-class, OK-2009
Highload sites, master-class, OK-2009
 
HighLoad Sites, Oleg Bunin
HighLoad Sites, Oleg BuninHighLoad Sites, Oleg Bunin
HighLoad Sites, Oleg Bunin
 
I Safety 1c Bitrix
I Safety 1c BitrixI Safety 1c Bitrix
I Safety 1c Bitrix
 
I Safety 1c Bitrix
I Safety 1c BitrixI Safety 1c Bitrix
I Safety 1c Bitrix
 
Gmr Highload Presentation Revised
Gmr Highload Presentation RevisedGmr Highload Presentation Revised
Gmr Highload Presentation Revised
 
Wonderful World Of Mysql Storage Engines Hl2008 Rus
Wonderful World Of Mysql Storage Engines Hl2008 RusWonderful World Of Mysql Storage Engines Hl2008 Rus
Wonderful World Of Mysql Storage Engines Hl2008 Rus
 
Scaling Web Sites By Sharding And Replication Hl2008 Rus
Scaling Web Sites By Sharding And Replication Hl2008 RusScaling Web Sites By Sharding And Replication Hl2008 Rus
Scaling Web Sites By Sharding And Replication Hl2008 Rus
 

Tupitsyn High Load

  • 1. Amazon Web Services: инструменты обеспечения масштабируемости и отказоустойчивости Дмитрий Тупицын dt@nevesomo.com HighLoad++   2008  
  • 2. Структура доклада  Преимущества EC2  Проблемы EC2  Дополнительные службы  Simple Storage Service (S3)  SimpleDB (SDB)  Simple Queue Services (SQS)  Языки и библиотеки    
  • 3. Часть 1 Преимущества EC2    
  • 4. Простота  Простой интерфейс к EC2 и другим службам  Просто запускать сервера  Время запуска/останова инстанции (обычно)  меньше 1 минуты  Не нужен системный администратор  Нет проблем с сетью и железом    
  • 5. Минимизация затрат  Временное добавление серверов  Пиковая нагрузка зачастую в 10 и более раз выше  средней но длится 1­3 часа в сутки  Повышенная нагрузки во время PR­акций или сезоных  изменений  Сервера для инфраструктурных,периодических задач  (бакап, подсчет статиситки)  Временное отключение серверов  Часть времени (ночью, выходные) сервера    простаивают  
  • 6. Переход к фактической нагрузке  Обычно:   Параметр ­ пиковая нагрузка  Задача – минимизация количества серверов во время  пиковой нагрузки  В облаках:   Параметр – фактическая загрузка  Задача – минимизация серверов во время всего цикла  работы системы    
  • 7. Снижение рисков  Не требуется больших финансовых вливаний в  инфраструктуру  Особенно важно для нефинансируемых стартапов  Бизнес модель работает?  (ДА) Быстро добавляем сервера  (НЕТ) Не тратимся на аренду    
  • 8. Часть 2 Проблемы EC2    
  • 9. Что изменилось?  Все проблемы с сетью и железом решаются  отключением проблемных и запуском новых  серверов  При выключении сервера теряются все его  данные не сохраненные во внешние службы (S3 и  т.д.)  Новый сервер имеет неизвестный заранее IP  адрес (как внешний так и внутренний)    
  • 10. Проблема: Потеря данных серверов  Диски сервера  /dev/sda1   10Gb / (image образ системы)  /dev/sda2 147Gb /mnt (временный диск)  / ­ при запуске копируется из image  /mnt – при запуске всегда чистый  При остановке сервера/instance ничего не  сохраняется!!!    
  • 11. Решение 1: Simple Storage Service (S3)  Самое простое решение  Неограниченный объем хранилища  Доступен как из EC2 так и ”снаружи”  Цена: 0.15$Гб + $ за количество запросов  Недостаток  чтобы избежать потерь данных при ”падении”  серверов необходимо часто реплицировать данные на  S3    Медлено работает с большим количеством файлов  
  • 12. Решение 2: Elastic Block Store (EBS)  Монтируется как блочное устройство  Размер от 1Гб до 1Тб  Механизм создания снэпшотов в S3  Снэпшоты инкрементальные  Данные реплицируются между несколькими  серверами в одном дата­центре (S3­в разных)  Цена: 0.1$/Гб + 0.1$ за 1М операций    
  • 13. Проблема: Изменение IP адресов  ip remap средствами EC2  Ограничение 5 адресов. Можно увеличить  Фиксированный ip стоит 0.01$/час ~ 7.2$/месяц  Традиционные методы  Развернуть свой DNS сервер  Развернуть свой Proxy сервер    
  • 14. Проблема: Расположение дата-центров  США  Европа  России нет  Это может стать серьезным препятствием для  сервисов нацеленных на российский рынок    
  • 15. Часть 3 Дополнительные службы    
  • 16. Simple Storage Service (S3)  Простой интерфейс  Масштабируемость  Неограниченный объем хранилища и размер  отдельных файлов  Высокая скорость доступа  Отказоустойчивость  Репликация данных в различных дата­центрах    
  • 17. Применение S3  Хранилище (файлы, фотки ..)  Бекапы  Images – образы машин  Снэпшоты EBS  Хранение состояний серверов  Эмуляция файловой системы – плохая идея  (используйте EBS)  Медленно работает с большим количеством    маленьких файлов  
  • 18. SimpleDB (SDB)  Домен = Таблица    
  • 19. Запросы к SDB  Бинарные операторы: =, !=, <, > <=, >=, STARTS­ WITH, AND, OR, NOT, INTERSECTION, UNION  Унарный оператор: SORT  Примеры:  [ 'Type' = 'db' ]  [ 'IP' starts­with '75.101.249.' ]  [ 'Status'='running' ] intersection [ 'Type'='db' ]    
  • 20. Преимущества SDB над БД  Простота  Нет формата данных   Нет  индексирования  Большие объемы (до 10Гб в домене, до 100  доменов/таблиц)  Не требуется администрировать  Масштабируемость  Отказоустойчивость    
  • 21. Недостатки SDB  Примитивные запросы  Нет связей между таблицами  Латентность  Запись распростроняется не мгновенно. При большом  объеме задержка до нескольких секунд  Только лексикографический порядок  Для текстового поиска придется строить свой  индекс    
  • 22. Пример использования SDB  Хранение информации о системе в целом  Адреса серверов  Состояния серверов  Измерения производительности серверов  Логи системы  Время запуска/останова серверов  Обнаруженные ошибки  Время поступление и время обработки заданий    
  • 23. Simple Queue Services (SQS)  Неограниченное количество очередей и  сообщений  Сообщения текстовые до 8Кб  Хранятся 4 дня    
  • 24. Зачем SQS?  Уменьшает связность между серверами  поставщиками заданий и обработчиками  Ассинхронность  Легко масштабировать  Аналогия ­ паттерн цепочка ответственности  Сохранность связи  При падении сервера сообщение не потеряется  Аналоги – Java Message Service, Microsoft Message  Queuing    
  • 25. Передача тяжелых сообщений  Максимальная длинна сообщения 8Кб  Можно использовать ссылки вместо данных  SimpleDB ( ItemID=3752 )  S3 ( storage/images/img436.jpg )  Сервера и данные на нем (server3, /var/storage/user342)    
  • 26. Выводы по службам  Для гибкого управления серверной  инфраструктурой требутся некоторый слой  промежуточного ПО  Можно создавать свое промежуточное ПО  Придется самостоятельно обеспечивать  масштабируемость и отказоустойчивость  Проще воспользоваться службами Amazon (S3,  SDB, SQS ...)    
  • 27. Часть 4 Языки и библиотеки    
  • 28. Библиотеки  ”Родные” библиотеки на aws.amazon.com  EC2: Command­Line tools для unix shell  AWS: Java, C#, Perl, PHP, VB.NET  Python  http://code.google.com/p/boto/  Erlang  EC2: http://code.google.com/p/erlawys/  AWS: http://code.google.com/p/erlaws/    
  • 29. Вопросы? Если возникнут позже, задавайте на dt@nevesomo.com