Lightning Memory-Mapped Database (LMDB) - представляет собой интересный, во многом уникальный, движок базы данных класса Berkeley DB / Level DB. Будучи относительно малоизвестным, LMDB показывает чемпионскую производительность по чтению и предлагает ряд компромиссов для достижения невероятной производительности по записи.
LMDB был создан для использования внутри известного проекта OpenLDAP с открытым исходным кодом. Как разработчик и поставщик решений для «больших телекомов», компания «Петер-Сервис» решила задействовать связку OpenLDAP+LMDB в одном из своих проектов. Это был вход в кротовую нору, всё было как в сказке – чем дальше, тем страшнее...
В результате мы сделали клон/fork исходного проекта и создали высокопроизводительное стабильное решение промышленного масштаба с открытым исходным кодом. Расскажу о внутреннем устройстве LMDB, о выявленных недостатках и наших доработках для их устранения.
TMPA-2015: Multi-Platform Approach to Reverse Debugging of Virtual MachinesIosif Itkin
Multi-Platform Approach to Reverse Debugging of Virtual Machines
Pavel Dovgalyuk, Maria Klimushenkova, Denis Dmitriev and Vladimir Makarov, Novgorod State University
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Инкапсуляция сетевой топологии при помощи ПКСARCCN
Доклад Павла Ликина, Нижегородский государственный технический университет им. Р. Е. Алексеева, на семинаре "Технологии программно-конфигурируемых сетей в научной и образовательной среде"
2 июля 2011, Я.Субботник в Екатеринбурге
Алексей Андросов "HTML5 в Я.Почте"
О докладе:
Вопросы практического применения современных технологий передачи и хранения данных в браузере на примере Яндекс.Почты, проблемы и ограничения, с которыми можно столкнуться, а также способы их решения.
Для чего нужны WebSocket, localStorage и кроссдоменные AJAX запросы? Как реализовать их поддержку с учетом старых браузеров, которые не поддерживают эти технологии? Как обойти проблемы и баги в этих технологиях?
В докладе я расскажу, как выглядит World of Tanks Server (кластер кластеров) со всеми веб-сервисами, которые существуют вокруг. Какие узкие места с точки зрения отказоустойчивости есть внутри кластера, между кластерами, во взаимодействии с внешними веб-сервисами. Как мы решаем возникающие проблемы технически, процессно, проектно.
Lightning Memory-Mapped Database (LMDB) - представляет собой интересный, во многом уникальный, движок базы данных класса Berkeley DB / Level DB. Будучи относительно малоизвестным, LMDB показывает чемпионскую производительность по чтению и предлагает ряд компромиссов для достижения невероятной производительности по записи.
LMDB был создан для использования внутри известного проекта OpenLDAP с открытым исходным кодом. Как разработчик и поставщик решений для «больших телекомов», компания «Петер-Сервис» решила задействовать связку OpenLDAP+LMDB в одном из своих проектов. Это был вход в кротовую нору, всё было как в сказке – чем дальше, тем страшнее...
В результате мы сделали клон/fork исходного проекта и создали высокопроизводительное стабильное решение промышленного масштаба с открытым исходным кодом. Расскажу о внутреннем устройстве LMDB, о выявленных недостатках и наших доработках для их устранения.
TMPA-2015: Multi-Platform Approach to Reverse Debugging of Virtual MachinesIosif Itkin
Multi-Platform Approach to Reverse Debugging of Virtual Machines
Pavel Dovgalyuk, Maria Klimushenkova, Denis Dmitriev and Vladimir Makarov, Novgorod State University
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Инкапсуляция сетевой топологии при помощи ПКСARCCN
Доклад Павла Ликина, Нижегородский государственный технический университет им. Р. Е. Алексеева, на семинаре "Технологии программно-конфигурируемых сетей в научной и образовательной среде"
2 июля 2011, Я.Субботник в Екатеринбурге
Алексей Андросов "HTML5 в Я.Почте"
О докладе:
Вопросы практического применения современных технологий передачи и хранения данных в браузере на примере Яндекс.Почты, проблемы и ограничения, с которыми можно столкнуться, а также способы их решения.
Для чего нужны WebSocket, localStorage и кроссдоменные AJAX запросы? Как реализовать их поддержку с учетом старых браузеров, которые не поддерживают эти технологии? Как обойти проблемы и баги в этих технологиях?
В докладе я расскажу, как выглядит World of Tanks Server (кластер кластеров) со всеми веб-сервисами, которые существуют вокруг. Какие узкие места с точки зрения отказоустойчивости есть внутри кластера, между кластерами, во взаимодействии с внешними веб-сервисами. Как мы решаем возникающие проблемы технически, процессно, проектно.
Осознанный выбор. Python 3 для реализации сервисного шлюза клиента World of T...Levon Avakyan
Доклад о том, зачем нам понадобился сервисный шлюз для клиента WoT, как выбирались и проверялись технологические решения, плюсы и минусы использования Python 3 + asyncio в этом конкретном случае. +Бонус: выбор, отслеживание и визуализация метрик приложения
This document discusses third party patches for MySQL that provide quick wins and new features. It summarizes five such patches: 1) Slow query filtering which helps identify expensive queries, 2) Index statistics which helps determine unused indexes, 3) An InnoDB dictionary limit which constrains memory usage, 4) A global long query time setting, and 5) A "fix" for InnoDB group commit performance regressions in MySQL 5.0. The document encourages using third party patches to gain features and improvements not yet available in the MySQL core.
The document discusses three common ways to improve performance of a MySQL database that is experiencing high load:
1. Upgrade hardware by adding more RAM, faster disks, or more powerful CPUs. This provides a temporary fix but can become exponentially more expensive and does not address underlying issues.
2. Change MySQL configuration settings like tmp_table_size or sort_buffer_size to optimize for specific bottlenecks shown in global status variables, but there are no "silver bullets" and misconfigurations must be addressed.
3. Improve indexing and tune queries by addressing issues like temporary tables on disk, full table scans, and lack of indexes causing full joins or sorting, which can have long term benefits over simply adding resources
2. Предпосылки Стремительный рост социального графа Возросшие требования к аппаратной части (сервера с большим объемом RAM) Необходимость обеспечения стабильности всей системы Устойчивость к выходу из строя нескольких серверов
3. Техническое задание Линейно маштабируемая система Увеличение производительности Рост базы Устойчивость к выходу из строя нескольких серверов Сохранения полной работоспособной базы Быстрое переключение на реплики
4. Разбиение базы n непересекающихся частей Равномерное распределение вершин Хранение прямых и обратных связей n 1 ... 4 3 2
9. Сложные запросы Cluster . . . ... player Lite BackEnds ... ... путь общие друзья друзья друзей
10. ТТХ кластера 6 непересекающихся частей Размер одной части – 6.5 млн. пользователей Предельная производительность Селекты - 150.000 rps Апдейты - 75.000 rps Время холодного старта – 90с Среднее время выполнения запроса - 0.8мс