Maven 3 : уличная магияAleksey SolntsevПолной автоматизацией процесса сборки приложения уже никого не удивишь. Не в последнюю очередь благодаря Maven – системе управления жизненным циклом проекта. Однако проекты растут очень быстро: увеличивается количество модулей, тестов, зависимостей, используемых плагинов. И всего лишь за год легковесный проект, на сборку которого уходило 5 минут, превращается в монстра, который пожирает время разработчиков 30-минутной сборкой. Чтобы справится с этой проблемой разработчикам приходится постоянно чистить свой код и бороться со скоростью выполнения тестов. Это верное решение, но не следует забывать о том, что и сам процесс сборки можно улучшить. В этом докладе будет рассмотрено, как при помощи простых и нехитрых шагов можно оптимизировать работу с зависимостями и обогатить скрипты сборки полезными плагинами. Также будут обсуждаться тонкости конфигурации основных плагинов и особенности работы с командной строкой, которые появились в последней версии Maven.
JavaScript-модули "из прошлого в будущее"oelifantievДоклад на первом Ярославском форнтэнд-митапе.
Рассказ об имеющихся методиках описания модулей в JavaScript а также о грядущем стандарте ES6 и, наконец-то, нативной поддержке модулей языком.
Jiramania презентации @augspbGonchik TsymzhitovПривет, Санкт-Петербург!
В разгар летнего сезона, мы поговорим об историях обновлений,
например, с 6.4 до 7.х, с разными трюками, а также об истории исследования разных регрессий на продуктах Atlassian и других плагинов.
Наша программа будет пополняться, и мы рады к сотрудничеству.
Ждем Вас на встрече в Яндекс Деньгах.
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыOleg NenashevРассказ о Configuration as Code в Jenkins и возможностях Pipeline: DSL, Multi-Branch, Pipeline Model Definition, восстановление после ошибок, параллелизация задач, интеграции. В каком направлении развивается экосистема?
Общая концепция системы развёртывания серверного окружения на базе SaltStack ...Positive Hack Days1. Проектирование системы обновлений.
2. О SaltStack.
3. Реализация update-сервера и примеры.
Основы и нюансы параллельного тестрованияbearoffДоклад на конференции Selenium Camp 2012.
http://seleniumcamp.com/program/#parallel-testing
Видео: http://video.yandex.ru/users/xpinjection/view/105/#hq
Сергей Морковкин "Разработка realtime SPA с использованием VueJS и RethinkDB"FwdaysВ процессе доклада мы рассмотрим преимущества использования связки VueJS + RethinkDB для создания realtime SPA приложений, построим базовый проект, рассмотрим ключевые особенности VueJS, а также установим socket- соединение с авторизацией.
Continuous Delivery with Jenkins: Lessons LearnedAleksandr TarasovСейчас только ленивый не говорит про DevOps, краеугольным камнем которого является организация потока непрерывной доставки ценности клиенту. Continuous Delivery перестаёт быть опцией и становится обязательным требованием.
В докладе будут рассмотрены:
- общие подходы к организации Continuous Delivery на базе Jenkins-а в совсем не тепличных условиях
- практики и подходы, которые позволяют быстро настраивать и собирать десятки микросервисов
- подводные камни, с которыми пришлось столкнуться, и способы борьбы с ними
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"FwdaysEvery company comes to a point where it’s infrastructure no longer fits team and business needs, and kludges are not working anymore. That’s the time to re-think and redesign the whole infrastructure. This is exactly where our company was half a year ago. I will talk about our experience dealing with this challenge while balancing between existing technology, costs, today’s reality and future needs.
Java 9 - кратко о новомЛеонид СтавилаОсновные новшества Java 9, которые, на мой взгляд, наиболее актуальны.
Здоровая критика и дополнения приветствуются. Есть текстовый документ, где всё это расписано немного подробнее.
JavaScript-модули "из прошлого в будущее"oelifantievДоклад на первом Ярославском форнтэнд-митапе.
Рассказ об имеющихся методиках описания модулей в JavaScript а также о грядущем стандарте ES6 и, наконец-то, нативной поддержке модулей языком.
Jiramania презентации @augspbGonchik TsymzhitovПривет, Санкт-Петербург!
В разгар летнего сезона, мы поговорим об историях обновлений,
например, с 6.4 до 7.х, с разными трюками, а также об истории исследования разных регрессий на продуктах Atlassian и других плагинов.
Наша программа будет пополняться, и мы рады к сотрудничеству.
Ждем Вас на встрече в Яндекс Деньгах.
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыOleg NenashevРассказ о Configuration as Code в Jenkins и возможностях Pipeline: DSL, Multi-Branch, Pipeline Model Definition, восстановление после ошибок, параллелизация задач, интеграции. В каком направлении развивается экосистема?
Общая концепция системы развёртывания серверного окружения на базе SaltStack ...Positive Hack Days1. Проектирование системы обновлений.
2. О SaltStack.
3. Реализация update-сервера и примеры.
Основы и нюансы параллельного тестрованияbearoffДоклад на конференции Selenium Camp 2012.
http://seleniumcamp.com/program/#parallel-testing
Видео: http://video.yandex.ru/users/xpinjection/view/105/#hq
Сергей Морковкин "Разработка realtime SPA с использованием VueJS и RethinkDB"FwdaysВ процессе доклада мы рассмотрим преимущества использования связки VueJS + RethinkDB для создания realtime SPA приложений, построим базовый проект, рассмотрим ключевые особенности VueJS, а также установим socket- соединение с авторизацией.
Continuous Delivery with Jenkins: Lessons LearnedAleksandr TarasovСейчас только ленивый не говорит про DevOps, краеугольным камнем которого является организация потока непрерывной доставки ценности клиенту. Continuous Delivery перестаёт быть опцией и становится обязательным требованием.
В докладе будут рассмотрены:
- общие подходы к организации Continuous Delivery на базе Jenkins-а в совсем не тепличных условиях
- практики и подходы, которые позволяют быстро настраивать и собирать десятки микросервисов
- подводные камни, с которыми пришлось столкнуться, и способы борьбы с ними
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"FwdaysEvery company comes to a point where it’s infrastructure no longer fits team and business needs, and kludges are not working anymore. That’s the time to re-think and redesign the whole infrastructure. This is exactly where our company was half a year ago. I will talk about our experience dealing with this challenge while balancing between existing technology, costs, today’s reality and future needs.
Java 9 - кратко о новомЛеонид СтавилаОсновные новшества Java 9, которые, на мой взгляд, наиболее актуальны.
Здоровая критика и дополнения приветствуются. Есть текстовый документ, где всё это расписано немного подробнее.
Процесс разработки и тестирования с Docker + gitlab ciАлександр СигачевДоклад - https://www.youtube.com/watch?v=lJsqRwULRVA
Какие проблемы решаем?
быстрый вход нового разработчика в проект
стандартизация настроек разработчиков
переключение между проектами - разные версии ПО и библиотек (mysql 5.6/5.7, node 0.12/7.2)
приучаем разработчиков к сетевому взаимодействию компонентов
Microservice - масштабирование/разделения разработки
Делим ресурсы staging среды между проектами
Cеминар в Виннице (22.03.2014)Alexander BabichПрезентация моего семинара для разработчиков, который состоялся 22.03.2014, на конференции по поводу открытия офиса компании "Миратех" в г.Винница,
Jelastic для разработчиков ПОDmitry LazarenkoJelastic - гибридная платформа как сервис(PaaS) для компаний- разработчиков ПО на Java, Ruby, .NET, ASP.NET, PHP, Node.JS и Docker. Позволяет строить автомасштабируемые, отказоустойчивые среды для приложений, управлять множеством сред для разработки и тестирования
Владимир Никонов "Вызовы при разработке enterprise продукта"FwdaysВ докладе мы рассмотрим этапы развития приложения, начиная от монолитного Web приложения, до распределенной платформы по управлению бизнес-процессами. Покажем этапы развития, задачи и вызовы, которые возникали на каждом их них. Проанализируем различные аспекты, влияющие на развитие архитектуры, такие как бизнес-требования, технологические тренды и возможные ограничения.
Микросервисная архитектура на базе CoreOS и KubernetesDenis Izmaylov13 июля 2016 состоялся восьмой Node.js Meetup в Москве. В этом докладе мы рассмотрели Scale Cube, Docker, CoreOS и кратко Kubernetes и Concourse CI.
В следующем докладе взглянем более подробно на Kubernetes и Concourse CI, посмотрим как с помощью этих быстрых и прекрасных инструментов построить Deployment Automation.
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...UNETAПрезентация к докладу: «Высокопроизводительные приложения на базе Windows Azure. Пример реального проекта». Докладчик: Александр Фещенко – MVP (SQL Azure), .Net Team Lead в DCT.
В докладе будут рассмотрены методики поиска узких мест в веб-приложениях, их устранения, а также способы повышения производительности при помощи облачной инфраструктуры Windows Azure.
4. Терминология
Инфраструктура - совокупность окружений организации/сервиса, состоящая
из сервисов приложения и вспомогательных сервисов.
Production - окружение сервиса, доступное для внешнего пользования.
5. Проблема 1
● В команде 3-5 разработчиков
● Нужно настраивать инфраструктуру
● Нужно автоматизировать рутинные задачи
● Никто не знает, как это сделать хорошо
6. Проблема 2
● Недостаток знаний об инфраструктуре
● Отсутствие коммуникаций с Operations
● “У меня локально все работает”(с).
7. Алгоритм управления инфраструктурой
● Разделение задачи на несколько предметных областей
● Выбор базовых продуктов
● Баланс между простотой и соответствии задачам
● Описание задачи в исходном коде + версионирование
9. Платформа
Удаленный хостинг
● Оборудование на стороне провайдера
● Свобода в выборе ОС/программного стека
● Необходимо заранее заказывать железо
● Отсутствие API
Решения: Hetzner, OVH
10. Платформа
Private cloud
● Платформа виртуализации поверх железа
● Развертывание ВМ по требованию
● Ограничение - аппаратные ресурсы
● Кластеризация
● Возможен сторонний хостинг
● Наличие API
Решения:
● Платформы - VMware, OpenStack
● Хостинг - Rackspace, Selectel
11. Платформа
PAAS
● Решение большинства проблем
● Развертывание application/DB серверов
● Поддержка железа от провайдера
● Вспомогательные сервисы (DNS/mail/CI)
● Гибкая ценовая политика
Решения: DigitalOcean, Heroku
12. Платформа
Public Cloud
● Полноценная инфраструктура
● Внешние сервисы как часть продукта
● Нет ограничений в ресурсах
● Автоматизированное масштабирование
● Многофункциональный API
Решения: AWS, GCP, MS Azure
13. Виртуализация
● Изоляция на уровне ОС
● Запрос ресурсов по требованию
● Кроссплатформенность
● Абстрагирование от железа
● Overhead в производительности
14. Контейнеризация
● Изоляция на уровне процесса
● Отсутствие конфликтов зависимостей
● Быстрый старт
● Отсутствие накладных расходов
● Повторение production-окружения
● Единый стандарт поставки продукта
Решения: Docker, rkt
15. Docker
● Простота
● Масштабируемость
● Долгосрочная поддержка
● Минимизация конфигурации серверов
● Описание артефакта в DSL-коде
Но..
● Не подходит для stateful-сервисов/БД
● Все еще есть баги
19. Системы управления конфигурациями
● Автоматизация настройки серверов
● Декларативное описание
● Замена документации
● Инфраструктура как код
● Отсутствие configuration drift
Решения: Ansible, Chef, Puppet, SaltStack
30. DevOps
● Это культура + совокупность
практик
● Основа состоит из Agile и CALMS*
● Это не про технологии
● Это нельзя купить/продать
● DevOps-инженеры - фикция
* CALMS - Culture, Automation, Lean, Measurement, Sharing
31. SRE
● Посади разработчика в Operations
● Работает в нескольких
технологических компаниях
● Automation, self-healing systems,
velocity etc.
● Не может работать везде по
определению
32. Best practices
● Рассматривайте всю компанию как единую команду
● Больше общайтесь с людьми
● Делайте акцент на постановку задачи и планирование
● Потребности клиента в первую очередь
33. Выводы
● Управлять инфраструктурой не так сложно, как кажется
● Старайтесь автоматизировать установку и конфигурацию
● Стремитесь описать все процессы в исходном коде
● Чем лучше сделаете, тем больше времени останется на разработку