SlideShare ist ein Scribd-Unternehmen logo
1 von 13
YouTrack: как ради
производительности
высоконагруженного
приложения мы разработали
собственный язык и базу
данных
Филипп Торчинский
philip.torchinsky@jetbrains.com
@JetBrains_Ru
Как приложению не становиться
высокопроизводительным?
Как приложению сделать вид, что оно
работает быстро?
Филипп Торчинский
philip.torchinsky@jetbrains.com
@JetBrains_Ru
3
YouTrack
JIRA
Bugzilla
Bugster
4

удобство

скорость

интеграция

front-end

workflow

back-end
REST API
5
Как закалялся YouTrack
BDB
YouTrack
k=v
YouTrack
JIRA
MPS
6
Урок
интегрированные БД - палка о двух
концах
7

Поиск
− язык запросов
− командная строка

Нотификации
− сложность и решение
Где требуется производительность
demo
8

200 мс .. 2 с

искусство формулировать запросы

можно делать AJAX-фильтрацию
(только это нагрузит сервер)
− можно сделать в виде
third-party UI
Долго ли искать заявку?
9

TeamCity

Jabber

E-mail

закрывать issue можно через
commit message на GitHub
(#<issueid> command)
Интеграция
10
Как улучшить производительность

кластер

AJAX-фильтрация

интеграция без фанатизма
(automatic exceptions issue creating)

ВАЖНО: ощущения. Поэтому
простота интерфейса - ключевой
момент
demo
11
Мощь и красота Workflow

назначение дежурного

реализация бизнес-логики (запрет
перехода из open в fixed, если
посередине должно быть verified)

добавление +1 (кстати, votes)
12
Материалы для изучения

jetbrains.tv

devnet.jetbrains.com

blogs.jetbrains.com

@JetBrains_Ru

jetbrains.com
13
Спасибо!
Q&A?
philip.torchinsky@jetbrains.com
@JetBrains_ru

Weitere ähnliche Inhalte

Was ist angesagt?

Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥Oleg Poludnenko
 
Алексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHPАлексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHPOleg Poludnenko
 
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...Ontico
 
Кроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и противКроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и противDotNetConf
 
10 reasons I love RubyOnRails
10 reasons I love RubyOnRails10 reasons I love RubyOnRails
10 reasons I love RubyOnRailsPavel Gabriel
 
Egor Fedorov "Behavior-driven development in Python"
Egor Fedorov "Behavior-driven development in Python"Egor Fedorov "Behavior-driven development in Python"
Egor Fedorov "Behavior-driven development in Python"Fwdays
 
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...Sergey Ponomarev
 
Python в ядре Яндекс.Диска
Python в ядре Яндекс.ДискаPython в ядре Яндекс.Диска
Python в ядре Яндекс.ДискаYandex
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGDataArt
 

Was ist angesagt? (10)

Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥Макс Волошин: Php + shell = ♥
Макс Волошин: Php + shell = ♥
 
Алексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHPАлексей Иванкин: Highload + PHP
Алексей Иванкин: Highload + PHP
 
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
 
Кроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и противКроссплатформенная библиотека для Android и iOS: за и против
Кроссплатформенная библиотека для Android и iOS: за и против
 
10 reasons I love RubyOnRails
10 reasons I love RubyOnRails10 reasons I love RubyOnRails
10 reasons I love RubyOnRails
 
Egor Fedorov "Behavior-driven development in Python"
Egor Fedorov "Behavior-driven development in Python"Egor Fedorov "Behavior-driven development in Python"
Egor Fedorov "Behavior-driven development in Python"
 
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...
 
C#5 What's new?
C#5 What's new?C#5 What's new?
C#5 What's new?
 
Python в ядре Яндекс.Диска
Python в ядре Яндекс.ДискаPython в ядре Яндекс.Диска
Python в ядре Яндекс.Диска
 
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNGДмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
Дмитрий Лукьяненко: Первый фреймворк на Selenium + TestNG
 

Ähnlich wie «Как ради производительности высоконагруженного приложения мы разработали собственный язык и базу данных»

Филипп Торчинский, JetBrains
Филипп Торчинский, JetBrainsФилипп Торчинский, JetBrains
Филипп Торчинский, JetBrainsDiana Dymolazova
 
Владислав Моргун
Владислав МоргунВладислав Моргун
Владислав МоргунSEO.UA
 
Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08
Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08
Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08Vladislav Morgun
 
Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииVoximplant
 
Как сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпутиКак сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпутиAndrew Mayorov
 
Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
 Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва... Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...Nikolay Samokhvalov
 
Александр Белоцерковский "Microsoft Bot Framework" - EdHack
Александр Белоцерковский "Microsoft Bot Framework" - EdHackАлександр Белоцерковский "Microsoft Bot Framework" - EdHack
Александр Белоцерковский "Microsoft Bot Framework" - EdHackchatbotscommunity
 
Игорь Кашкута
Игорь КашкутаИгорь Кашкута
Игорь КашкутаCodeFest
 
Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)Alexander Babich
 
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...Yandex
 
Опыт Автоматизации тестирования
Опыт Автоматизации тестированияОпыт Автоматизации тестирования
Опыт Автоматизации тестированияAgile Ukraine
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NETMedia Gorod
 
мониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBAмониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBASlach
 
Microsoft Visual Studio 2010
Microsoft Visual Studio 2010Microsoft Visual Studio 2010
Microsoft Visual Studio 2010Alexander Babich
 
Когда технологий много - iForum 2013
Когда технологий много - iForum 2013Когда технологий много - iForum 2013
Когда технологий много - iForum 2013Andrey Listochkin
 
Проектирование большого интернет-магазина
Проектирование большого интернет-магазинаПроектирование большого интернет-магазина
Проектирование большого интернет-магазинаArtem Markov
 
Разработка интернет-магазина: от идеи до реализации
Разработка интернет-магазина: от идеи до реализацииРазработка интернет-магазина: от идеи до реализации
Разработка интернет-магазина: от идеи до реализацииsportgid
 

Ähnlich wie «Как ради производительности высоконагруженного приложения мы разработали собственный язык и базу данных» (20)

Филипп Торчинский, JetBrains
Филипп Торчинский, JetBrainsФилипп Торчинский, JetBrains
Филипп Торчинский, JetBrains
 
Владислав Моргун
Владислав МоргунВладислав Моргун
Владислав Моргун
 
Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08
Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08
Автоматизация SEO-процессов в продуктовых компаниях - DVOMA.pro 30.08
 
Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложении
 
Как сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпутиКак сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпути
 
Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
 Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва... Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
 
Александр Белоцерковский "Microsoft Bot Framework" - EdHack
Александр Белоцерковский "Microsoft Bot Framework" - EdHackАлександр Белоцерковский "Microsoft Bot Framework" - EdHack
Александр Белоцерковский "Microsoft Bot Framework" - EdHack
 
Игорь Кашкута
Игорь КашкутаИгорь Кашкута
Игорь Кашкута
 
Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)
 
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...
 
Опыт Автоматизации тестирования
Опыт Автоматизации тестированияОпыт Автоматизации тестирования
Опыт Автоматизации тестирования
 
[Add 4] crossplatform .net
[Add 4] crossplatform .net[Add 4] crossplatform .net
[Add 4] crossplatform .net
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET
 
мониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBAмониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBA
 
Microsoft Visual Studio 2010
Microsoft Visual Studio 2010Microsoft Visual Studio 2010
Microsoft Visual Studio 2010
 
Когда технологий много - iForum 2013
Когда технологий много - iForum 2013Когда технологий много - iForum 2013
Когда технологий много - iForum 2013
 
Appery.io Ukraine_2016
Appery.io Ukraine_2016Appery.io Ukraine_2016
Appery.io Ukraine_2016
 
DevOps для 1С
DevOps для 1СDevOps для 1С
DevOps для 1С
 
Проектирование большого интернет-магазина
Проектирование большого интернет-магазинаПроектирование большого интернет-магазина
Проектирование большого интернет-магазина
 
Разработка интернет-магазина: от идеи до реализации
Разработка интернет-магазина: от идеи до реализацииРазработка интернет-магазина: от идеи до реализации
Разработка интернет-магазина: от идеи до реализации
 

Mehr von Nata_Churda

Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"
Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"
Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"Nata_Churda
 
Алексей Аболмасов "Критерии сильного HR-решения"
Алексей Аболмасов "Критерии сильного HR-решения"Алексей Аболмасов "Критерии сильного HR-решения"
Алексей Аболмасов "Критерии сильного HR-решения"Nata_Churda
 
«Хайлоад в рассылке почты: как спать спокойно»
«Хайлоад в рассылке почты: как спать спокойно»«Хайлоад в рассылке почты: как спать спокойно»
«Хайлоад в рассылке почты: как спать спокойно»Nata_Churda
 
«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...
«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...
«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...Nata_Churda
 
«Механизмы обновления платформы и окружений пользователей в Jelastic»
«Механизмы обновления платформы и окружений пользователей в Jelastic»«Механизмы обновления платформы и окружений пользователей в Jelastic»
«Механизмы обновления платформы и окружений пользователей в Jelastic»Nata_Churda
 
«PRFLR - OpenSource инструмент для анализа производительности кода»
«PRFLR - OpenSource инструмент для анализа производительности кода»«PRFLR - OpenSource инструмент для анализа производительности кода»
«PRFLR - OpenSource инструмент для анализа производительности кода»Nata_Churda
 
«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...
«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...
«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...Nata_Churda
 
«Облачная платформа Windows Azure для высоконагруженных проектов»
«Облачная платформа Windows Azure для высоконагруженных проектов»«Облачная платформа Windows Azure для высоконагруженных проектов»
«Облачная платформа Windows Azure для высоконагруженных проектов»Nata_Churda
 
Алена Новоселова, Яндекс.Деньги
Алена Новоселова, Яндекс.ДеньгиАлена Новоселова, Яндекс.Деньги
Алена Новоселова, Яндекс.ДеньгиNata_Churda
 
Артем Кумпель, ITmozg
Артем Кумпель, ITmozgАртем Кумпель, ITmozg
Артем Кумпель, ITmozgNata_Churda
 
Белогрудов Владислав, EMC
Белогрудов Владислав, EMCБелогрудов Владислав, EMC
Белогрудов Владислав, EMCNata_Churda
 
Александр Ильин, Oracle
Александр Ильин, OracleАлександр Ильин, Oracle
Александр Ильин, OracleNata_Churda
 
Анатолий Кондратьев, Exigen Services
Анатолий Кондратьев, Exigen ServicesАнатолий Кондратьев, Exigen Services
Анатолий Кондратьев, Exigen ServicesNata_Churda
 
Алексей Николаенков, Devexperts
Алексей Николаенков, DevexpertsАлексей Николаенков, Devexperts
Алексей Николаенков, DevexpertsNata_Churda
 
Анна Ященко, Google
Анна Ященко, GoogleАнна Ященко, Google
Анна Ященко, GoogleNata_Churda
 
Акулов Егор, Mail.ru Group
Акулов Егор, Mail.ru GroupАкулов Егор, Mail.ru Group
Акулов Егор, Mail.ru GroupNata_Churda
 
Елизавета Штофф, iChar
Елизавета Штофф, iCharЕлизавета Штофф, iChar
Елизавета Штофф, iCharNata_Churda
 
Шпунтенко Ольга, Mail.ru Group
Шпунтенко Ольга, Mail.ru GroupШпунтенко Ольга, Mail.ru Group
Шпунтенко Ольга, Mail.ru GroupNata_Churda
 
Екатерина Евсеева, ITmozg
Екатерина Евсеева, ITmozgЕкатерина Евсеева, ITmozg
Екатерина Евсеева, ITmozgNata_Churda
 
Александр Ильин, Oracle
Александр Ильин, OracleАлександр Ильин, Oracle
Александр Ильин, OracleNata_Churda
 

Mehr von Nata_Churda (20)

Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"
Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"
Александра Алябьева "Поиск IT-специалистов. Шагнем за рамки привычного?"
 
Алексей Аболмасов "Критерии сильного HR-решения"
Алексей Аболмасов "Критерии сильного HR-решения"Алексей Аболмасов "Критерии сильного HR-решения"
Алексей Аболмасов "Критерии сильного HR-решения"
 
«Хайлоад в рассылке почты: как спать спокойно»
«Хайлоад в рассылке почты: как спать спокойно»«Хайлоад в рассылке почты: как спать спокойно»
«Хайлоад в рассылке почты: как спать спокойно»
 
«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...
«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...
«Лучшие предложения aviasales.ru, или как не упустить важное среди 150 миллио...
 
«Механизмы обновления платформы и окружений пользователей в Jelastic»
«Механизмы обновления платформы и окружений пользователей в Jelastic»«Механизмы обновления платформы и окружений пользователей в Jelastic»
«Механизмы обновления платформы и окружений пользователей в Jelastic»
 
«PRFLR - OpenSource инструмент для анализа производительности кода»
«PRFLR - OpenSource инструмент для анализа производительности кода»«PRFLR - OpenSource инструмент для анализа производительности кода»
«PRFLR - OpenSource инструмент для анализа производительности кода»
 
«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...
«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...
«Делимся опытом разработки высоконагруженных мобильных приложений на примере ...
 
«Облачная платформа Windows Azure для высоконагруженных проектов»
«Облачная платформа Windows Azure для высоконагруженных проектов»«Облачная платформа Windows Azure для высоконагруженных проектов»
«Облачная платформа Windows Azure для высоконагруженных проектов»
 
Алена Новоселова, Яндекс.Деньги
Алена Новоселова, Яндекс.ДеньгиАлена Новоселова, Яндекс.Деньги
Алена Новоселова, Яндекс.Деньги
 
Артем Кумпель, ITmozg
Артем Кумпель, ITmozgАртем Кумпель, ITmozg
Артем Кумпель, ITmozg
 
Белогрудов Владислав, EMC
Белогрудов Владислав, EMCБелогрудов Владислав, EMC
Белогрудов Владислав, EMC
 
Александр Ильин, Oracle
Александр Ильин, OracleАлександр Ильин, Oracle
Александр Ильин, Oracle
 
Анатолий Кондратьев, Exigen Services
Анатолий Кондратьев, Exigen ServicesАнатолий Кондратьев, Exigen Services
Анатолий Кондратьев, Exigen Services
 
Алексей Николаенков, Devexperts
Алексей Николаенков, DevexpertsАлексей Николаенков, Devexperts
Алексей Николаенков, Devexperts
 
Анна Ященко, Google
Анна Ященко, GoogleАнна Ященко, Google
Анна Ященко, Google
 
Акулов Егор, Mail.ru Group
Акулов Егор, Mail.ru GroupАкулов Егор, Mail.ru Group
Акулов Егор, Mail.ru Group
 
Елизавета Штофф, iChar
Елизавета Штофф, iCharЕлизавета Штофф, iChar
Елизавета Штофф, iChar
 
Шпунтенко Ольга, Mail.ru Group
Шпунтенко Ольга, Mail.ru GroupШпунтенко Ольга, Mail.ru Group
Шпунтенко Ольга, Mail.ru Group
 
Екатерина Евсеева, ITmozg
Екатерина Евсеева, ITmozgЕкатерина Евсеева, ITmozg
Екатерина Евсеева, ITmozg
 
Александр Ильин, Oracle
Александр Ильин, OracleАлександр Ильин, Oracle
Александр Ильин, Oracle
 

«Как ради производительности высоконагруженного приложения мы разработали собственный язык и базу данных»