SlideShare a Scribd company logo
1 of 6
Download to read offline
IronWorker




Эффективная эксплуатация
Что это?
●   Заливаем код (Ruby/Java/JS/binaries) в
    сервис
●   Командуем сервису запустить нужное кол-
    во экземпляров этого кода
●   PROFIT
Зачем это?
    Offloading нужного, но не срочного:
●   Рассылка почты
●   Обработка пользовательских файлов
●   Рендеринг PDF
●   You name it :)
Disclaimer



Капитан Очевидность
Антипаттерны
●   Хардкодинг изменяемых данных вместо
    передачи их в payload
●   «Работает и ладно»
Get the most out of it
●   Сегментирование функциональности
●   Master-slave
●   Координация воркеров
●   Пускаем произвольные бинарники

More Related Content

Viewers also liked

Ускорение разработки с использованием облачной платформы Cloud Foundry
Ускорение разработки с использованием облачной платформы Cloud FoundryУскорение разработки с использованием облачной платформы Cloud Foundry
Ускорение разработки с использованием облачной платформы Cloud FoundryOlga Lavrentieva
 
Оцениваем решения NoSQL: какая база данных подходит для вашей системы
Оцениваем решения NoSQL: какая база данных подходит для вашей системыОцениваем решения NoSQL: какая база данных подходит для вашей системы
Оцениваем решения NoSQL: какая база данных подходит для вашей системыOlga Lavrentieva
 
Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop
Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» HadoopОбзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop
Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» HadoopOlga Lavrentieva
 
Что такое Data Science
Что такое Data ScienceЧто такое Data Science
Что такое Data ScienceOlga Lavrentieva
 
ActiveRecord Callbacks. Готовим правильно.
ActiveRecord Callbacks. Готовим правильно.  ActiveRecord Callbacks. Готовим правильно.
ActiveRecord Callbacks. Готовим правильно. Olga Lavrentieva
 
Big data dive amazon emr processing
Big data dive amazon emr processingBig data dive amazon emr processing
Big data dive amazon emr processingOlga Lavrentieva
 
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийПрактический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийOlga Lavrentieva
 
«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»
«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»
«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»Olga Lavrentieva
 
Travis CI – what's inside?
Travis CI – what's inside?Travis CI – what's inside?
Travis CI – what's inside?Olga Lavrentieva
 
Быстрое развертывание среды разработки c Vagrant
Быстрое развертывание среды разработки c VagrantБыстрое развертывание среды разработки c Vagrant
Быстрое развертывание среды разработки c VagrantOlga Lavrentieva
 
«NoSQL Databases and Polyglot Persistence»
«NoSQL Databases and Polyglot Persistence»«NoSQL Databases and Polyglot Persistence»
«NoSQL Databases and Polyglot Persistence»Olga Lavrentieva
 
Geospatial Rails applications
Geospatial Rails applicationsGeospatial Rails applications
Geospatial Rails applicationsOlga Lavrentieva
 
Обработка больших массивов данных в облачной платформе Windows Azure
Обработка больших массивов данных в облачной платформе Windows AzureОбработка больших массивов данных в облачной платформе Windows Azure
Обработка больших массивов данных в облачной платформе Windows AzureOlga Lavrentieva
 
«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...
«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...
«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...Olga Lavrentieva
 
Реальный опыт работы с Jenkins
Реальный опыт работы с JenkinsРеальный опыт работы с Jenkins
Реальный опыт работы с JenkinsOlga Lavrentieva
 
Обучение 3.0: знания ближе, чем вы думаете
Обучение 3.0: знания ближе, чем вы думаете Обучение 3.0: знания ближе, чем вы думаете
Обучение 3.0: знания ближе, чем вы думаете Olga Lavrentieva
 
«Анализ больших данных и их подготовка перед применением методов машинного об...
«Анализ больших данных и их подготовка перед применением методов машинного об...«Анализ больших данных и их подготовка перед применением методов машинного об...
«Анализ больших данных и их подготовка перед применением методов машинного об...Olga Lavrentieva
 
Использование Elasticsearch для организации поиска по сайту
Использование Elasticsearch для организации поиска по сайтуИспользование Elasticsearch для организации поиска по сайту
Использование Elasticsearch для организации поиска по сайтуOlga Lavrentieva
 

Viewers also liked (20)

Ускорение разработки с использованием облачной платформы Cloud Foundry
Ускорение разработки с использованием облачной платформы Cloud FoundryУскорение разработки с использованием облачной платформы Cloud Foundry
Ускорение разработки с использованием облачной платформы Cloud Foundry
 
Оцениваем решения NoSQL: какая база данных подходит для вашей системы
Оцениваем решения NoSQL: какая база данных подходит для вашей системыОцениваем решения NoSQL: какая база данных подходит для вашей системы
Оцениваем решения NoSQL: какая база данных подходит для вашей системы
 
Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop
Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» HadoopОбзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop
Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop
 
Что такое Data Science
Что такое Data ScienceЧто такое Data Science
Что такое Data Science
 
ActiveRecord Callbacks. Готовим правильно.
ActiveRecord Callbacks. Готовим правильно.  ActiveRecord Callbacks. Готовим правильно.
ActiveRecord Callbacks. Готовим правильно.
 
Big data dive amazon emr processing
Big data dive amazon emr processingBig data dive amazon emr processing
Big data dive amazon emr processing
 
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийПрактический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
 
Functional programming
Functional programmingFunctional programming
Functional programming
 
«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»
«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»
«Использование GPU для распределенных вычислений Map Reduce (Hadoop)»
 
Travis CI – what's inside?
Travis CI – what's inside?Travis CI – what's inside?
Travis CI – what's inside?
 
Быстрое развертывание среды разработки c Vagrant
Быстрое развертывание среды разработки c VagrantБыстрое развертывание среды разработки c Vagrant
Быстрое развертывание среды разработки c Vagrant
 
«NoSQL Databases and Polyglot Persistence»
«NoSQL Databases and Polyglot Persistence»«NoSQL Databases and Polyglot Persistence»
«NoSQL Databases and Polyglot Persistence»
 
Geospatial Rails applications
Geospatial Rails applicationsGeospatial Rails applications
Geospatial Rails applications
 
Обработка больших массивов данных в облачной платформе Windows Azure
Обработка больших массивов данных в облачной платформе Windows AzureОбработка больших массивов данных в облачной платформе Windows Azure
Обработка больших массивов данных в облачной платформе Windows Azure
 
«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...
«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...
«NoSQL benchmarking v2.0. Исследование производительности современных NoSQL-р...
 
Реальный опыт работы с Jenkins
Реальный опыт работы с JenkinsРеальный опыт работы с Jenkins
Реальный опыт работы с Jenkins
 
Sumas (unidad 4)
Sumas (unidad 4)Sumas (unidad 4)
Sumas (unidad 4)
 
Обучение 3.0: знания ближе, чем вы думаете
Обучение 3.0: знания ближе, чем вы думаете Обучение 3.0: знания ближе, чем вы думаете
Обучение 3.0: знания ближе, чем вы думаете
 
«Анализ больших данных и их подготовка перед применением методов машинного об...
«Анализ больших данных и их подготовка перед применением методов машинного об...«Анализ больших данных и их подготовка перед применением методов машинного об...
«Анализ больших данных и их подготовка перед применением методов машинного об...
 
Использование Elasticsearch для организации поиска по сайту
Использование Elasticsearch для организации поиска по сайтуИспользование Elasticsearch для организации поиска по сайту
Использование Elasticsearch для организации поиска по сайту
 

More from Olga Lavrentieva

15 10-22 altoros-fact_sheet_st_v4
15 10-22 altoros-fact_sheet_st_v415 10-22 altoros-fact_sheet_st_v4
15 10-22 altoros-fact_sheet_st_v4Olga Lavrentieva
 
Сергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive Performance
Сергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive PerformanceСергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive Performance
Сергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive PerformanceOlga Lavrentieva
 
Андрей Козлов (Altoros): Оптимизация производительности Cassandra
Андрей Козлов (Altoros): Оптимизация производительности CassandraАндрей Козлов (Altoros): Оптимизация производительности Cassandra
Андрей Козлов (Altoros): Оптимизация производительности CassandraOlga Lavrentieva
 
Владимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущееВладимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущееOlga Lavrentieva
 
Brug - Web push notification
Brug  - Web push notificationBrug  - Web push notification
Brug - Web push notificationOlga Lavrentieva
 
Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"
Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"
Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"Olga Lavrentieva
 
Максим Жилинский: "Контейнеры: под капотом"
Максим Жилинский: "Контейнеры: под капотом"Максим Жилинский: "Контейнеры: под капотом"
Максим Жилинский: "Контейнеры: под капотом"Olga Lavrentieva
 
Александр Протасеня: "PayPal. Различные способы интеграции"
Александр Протасеня: "PayPal. Различные способы интеграции"Александр Протасеня: "PayPal. Различные способы интеграции"
Александр Протасеня: "PayPal. Различные способы интеграции"Olga Lavrentieva
 
Сергей Черничков: "Интеграция платежных систем в .Net приложения"
Сергей Черничков: "Интеграция платежных систем в .Net приложения"Сергей Черничков: "Интеграция платежных систем в .Net приложения"
Сергей Черничков: "Интеграция платежных систем в .Net приложения"Olga Lavrentieva
 
Антон Шемерей «Single responsibility principle в руби или почему instanceclas...
Антон Шемерей «Single responsibility principle в руби или почему instanceclas...Антон Шемерей «Single responsibility principle в руби или почему instanceclas...
Антон Шемерей «Single responsibility principle в руби или почему instanceclas...Olga Lavrentieva
 
Егор Воробьёв: «Ruby internals»
Егор Воробьёв: «Ruby internals»Егор Воробьёв: «Ruby internals»
Егор Воробьёв: «Ruby internals»Olga Lavrentieva
 
Андрей Колешко «Что не так с Rails»
Андрей Колешко «Что не так с Rails»Андрей Колешко «Что не так с Rails»
Андрей Колешко «Что не так с Rails»Olga Lavrentieva
 
Дмитрий Савицкий «Ruby Anti Magic Shield»
Дмитрий Савицкий «Ruby Anti Magic Shield»Дмитрий Савицкий «Ruby Anti Magic Shield»
Дмитрий Савицкий «Ruby Anti Magic Shield»Olga Lavrentieva
 
Сергей Алексеев «Парное программирование. Удаленно»
Сергей Алексеев «Парное программирование. Удаленно»Сергей Алексеев «Парное программирование. Удаленно»
Сергей Алексеев «Парное программирование. Удаленно»Olga Lavrentieva
 
«Почему Spark отнюдь не так хорош»
«Почему Spark отнюдь не так хорош»«Почему Spark отнюдь не так хорош»
«Почему Spark отнюдь не так хорош»Olga Lavrentieva
 
«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»
«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»
«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»Olga Lavrentieva
 
«Практика построения высокодоступного решения на базе Cloud Foundry Paas»
«Практика построения высокодоступного решения на базе Cloud Foundry Paas»«Практика построения высокодоступного решения на базе Cloud Foundry Paas»
«Практика построения высокодоступного решения на базе Cloud Foundry Paas»Olga Lavrentieva
 
«Дизайн продвинутых нереляционных схем для Big Data»
«Дизайн продвинутых нереляционных схем для Big Data»«Дизайн продвинутых нереляционных схем для Big Data»
«Дизайн продвинутых нереляционных схем для Big Data»Olga Lavrentieva
 
«Обзор возможностей Open cv»
«Обзор возможностей Open cv»«Обзор возможностей Open cv»
«Обзор возможностей Open cv»Olga Lavrentieva
 
«Нужно больше шин! Eventbus based framework vertx.io»
«Нужно больше шин! Eventbus based framework vertx.io»«Нужно больше шин! Eventbus based framework vertx.io»
«Нужно больше шин! Eventbus based framework vertx.io»Olga Lavrentieva
 

More from Olga Lavrentieva (20)

15 10-22 altoros-fact_sheet_st_v4
15 10-22 altoros-fact_sheet_st_v415 10-22 altoros-fact_sheet_st_v4
15 10-22 altoros-fact_sheet_st_v4
 
Сергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive Performance
Сергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive PerformanceСергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive Performance
Сергей Ковалёв (Altoros): Practical Steps to Improve Apache Hive Performance
 
Андрей Козлов (Altoros): Оптимизация производительности Cassandra
Андрей Козлов (Altoros): Оптимизация производительности CassandraАндрей Козлов (Altoros): Оптимизация производительности Cassandra
Андрей Козлов (Altoros): Оптимизация производительности Cassandra
 
Владимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущееВладимир Иванов (Oracle): Java: прошлое и будущее
Владимир Иванов (Oracle): Java: прошлое и будущее
 
Brug - Web push notification
Brug  - Web push notificationBrug  - Web push notification
Brug - Web push notification
 
Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"
Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"
Александр Ломов: "Reactjs + Haskell + Cloud Foundry = Love"
 
Максим Жилинский: "Контейнеры: под капотом"
Максим Жилинский: "Контейнеры: под капотом"Максим Жилинский: "Контейнеры: под капотом"
Максим Жилинский: "Контейнеры: под капотом"
 
Александр Протасеня: "PayPal. Различные способы интеграции"
Александр Протасеня: "PayPal. Различные способы интеграции"Александр Протасеня: "PayPal. Различные способы интеграции"
Александр Протасеня: "PayPal. Различные способы интеграции"
 
Сергей Черничков: "Интеграция платежных систем в .Net приложения"
Сергей Черничков: "Интеграция платежных систем в .Net приложения"Сергей Черничков: "Интеграция платежных систем в .Net приложения"
Сергей Черничков: "Интеграция платежных систем в .Net приложения"
 
Антон Шемерей «Single responsibility principle в руби или почему instanceclas...
Антон Шемерей «Single responsibility principle в руби или почему instanceclas...Антон Шемерей «Single responsibility principle в руби или почему instanceclas...
Антон Шемерей «Single responsibility principle в руби или почему instanceclas...
 
Егор Воробьёв: «Ruby internals»
Егор Воробьёв: «Ruby internals»Егор Воробьёв: «Ruby internals»
Егор Воробьёв: «Ruby internals»
 
Андрей Колешко «Что не так с Rails»
Андрей Колешко «Что не так с Rails»Андрей Колешко «Что не так с Rails»
Андрей Колешко «Что не так с Rails»
 
Дмитрий Савицкий «Ruby Anti Magic Shield»
Дмитрий Савицкий «Ruby Anti Magic Shield»Дмитрий Савицкий «Ruby Anti Magic Shield»
Дмитрий Савицкий «Ruby Anti Magic Shield»
 
Сергей Алексеев «Парное программирование. Удаленно»
Сергей Алексеев «Парное программирование. Удаленно»Сергей Алексеев «Парное программирование. Удаленно»
Сергей Алексеев «Парное программирование. Удаленно»
 
«Почему Spark отнюдь не так хорош»
«Почему Spark отнюдь не так хорош»«Почему Spark отнюдь не так хорош»
«Почему Spark отнюдь не так хорош»
 
«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»
«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»
«Cassandra data modeling – моделирование данных для NoSQL СУБД Cassandra»
 
«Практика построения высокодоступного решения на базе Cloud Foundry Paas»
«Практика построения высокодоступного решения на базе Cloud Foundry Paas»«Практика построения высокодоступного решения на базе Cloud Foundry Paas»
«Практика построения высокодоступного решения на базе Cloud Foundry Paas»
 
«Дизайн продвинутых нереляционных схем для Big Data»
«Дизайн продвинутых нереляционных схем для Big Data»«Дизайн продвинутых нереляционных схем для Big Data»
«Дизайн продвинутых нереляционных схем для Big Data»
 
«Обзор возможностей Open cv»
«Обзор возможностей Open cv»«Обзор возможностей Open cv»
«Обзор возможностей Open cv»
 
«Нужно больше шин! Eventbus based framework vertx.io»
«Нужно больше шин! Eventbus based framework vertx.io»«Нужно больше шин! Eventbus based framework vertx.io»
«Нужно больше шин! Eventbus based framework vertx.io»
 

Эффективная эксплуатация IronWorker (Андрей Дягель)

  • 2. Что это? ● Заливаем код (Ruby/Java/JS/binaries) в сервис ● Командуем сервису запустить нужное кол- во экземпляров этого кода ● PROFIT
  • 3. Зачем это? Offloading нужного, но не срочного: ● Рассылка почты ● Обработка пользовательских файлов ● Рендеринг PDF ● You name it :)
  • 5. Антипаттерны ● Хардкодинг изменяемых данных вместо передачи их в payload ● «Работает и ладно»
  • 6. Get the most out of it ● Сегментирование функциональности ● Master-slave ● Координация воркеров ● Пускаем произвольные бинарники