codefest 2016 - go в openprovider

21
Go в Openprovider Игорь Должиков, Team Leader

Upload: igor-dolzhikov

Post on 22-Jan-2017

301 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Codefest 2016 - Go в Openprovider

Go в OpenproviderИгорь Должиков, Team Leader

Page 2: Codefest 2016 - Go в Openprovider

• Openprovider - это быстрорастущая компания с штаб-квартирой в Голландии (г. Роттердам) и представительством в Новосибирске.

• Предоставление интернет сервисов для больших корпораций, а так же компаний среднего и малого масштаба.

• Трижды попадала в список Deloitte Fast50 (50 самых быстрорастущих компаний).

• А также в списке Emea Fast 500 самых быстрорастущих компаний на рынках EMEA, предоставляющих инновационные сервисы.

Page 3: Codefest 2016 - Go в Openprovider

Go & PHP что общего?

?

Page 4: Codefest 2016 - Go в Openprovider

Низкий порог вхождения

Page 5: Codefest 2016 - Go в Openprovider

Подходит широкому кругу программистов

Page 6: Codefest 2016 - Go в Openprovider

Обширная сфера применения

Page 7: Codefest 2016 - Go в Openprovider

В чем секрет популярности?

Page 8: Codefest 2016 - Go в Openprovider

Простой, но с большими возможностями

Page 9: Codefest 2016 - Go в Openprovider

Богатая стандартная библиотека

Page 10: Codefest 2016 - Go в Openprovider

В нужное время в нужном месте• Как появился PHP?

• Нужен сайт или Web страница.

• HTML не достаточно, JavaScript только начал развиваться.

• PHP оказался простым и эффективным решением.

Page 11: Codefest 2016 - Go в Openprovider

Тренды текущего времени

Page 12: Codefest 2016 - Go в Openprovider

Язык Go• Низкий порог вхождения.

• Развитая стандартная библиотека.

• Быстрая компиляция в один binary файл.

• Встроенная организация каналов и процессов.

• Сборщик мусора.

Page 13: Codefest 2016 - Go в Openprovider

Как мы перешли на Go?• Переход на Go - не значит все переписать на Go.

• Мы используем Go для сетевых микро сервисов.

• Сервисы на Go у нас служат уже не один год.

• Надежно, без утечек памяти, месяцами без перезагрузок.

Page 14: Codefest 2016 - Go в Openprovider

Whois сервис

• Один из первых проектов компании на Go.

• Легко настраивается под любой формат ответа.

• База данных Elasticsearch

• Проект в opensource, с помощью контрибьютеров реализован коннектор для базы MySQL

Page 15: Codefest 2016 - Go в Openprovider

Spawn• Синхронные обновления между узлами по HTTP запросам.

• Как балансер при чтении данных.

• Данный проект также opensource.

Page 16: Codefest 2016 - Go в Openprovider

Версия биллинга на PHP

Page 17: Codefest 2016 - Go в Openprovider

Версия биллинга на Go

Page 18: Codefest 2016 - Go в Openprovider

Биллинговая система на Go• Персональные стоимости и промо акции на продукт.

• Была реализована на PHP/MySQL

• На Go ускорение выдачи стоимости примерно в 100 000 раз.

• Одна позиция прайса в среднем 30-50 нано секунд.

• 10 тыс. цен - 200-300 мили секунд.

• Подробнее в презентации: http://golang.services/ru/talks/gomeetup

Page 19: Codefest 2016 - Go в Openprovider

Генерация PDF по URL

• Создание документа из страницы по URL ссылке или из raw html

• Сервис поставляется в Docker image.

• Генерация PDF документа для головной страницы mail.ru - 3 сек.

Page 20: Codefest 2016 - Go в Openprovider

Статус домена

• Проверяет занят ли кем-то домен или свободен.

• Нужно обрабатывать тысячи запросов в секунду в разные регистратуры.

• На данный момент в процессе разработки.

Page 21: Codefest 2016 - Go в Openprovider

Go в OpenproviderПакеты и сервисы с открытым исходным кодом:

• https://github.com/openprovider

• https://github.com/takama

Биллинговая система:

https://www.youtube.com/watch?v=STCoDD51mHs

Презентация: http://golang.services/ru/talks/codefest2016