Посты с тэгом highload


Wargaming: тыл — фронту! Узнай что у твоего танка под капотом :-) Python Видео с DevConf 2014




Барышников Максим, Solutions Architect в Wargaming.net
«Очень развитая веб-часть» в реалиях Wargaming — это:
— более 40 отдельных проектов, над которыми работают более 200 человек (только в минской студии);
— 2 млн UDV только на сайте worldoftanks.ru в день релиза;
— подробные досье 60 млн. игроков — это только часть тех данных, которые мы предоставляем игрокам вне игры;
— Public API;
— Мировая война на Глобальной Карте.
Читать дальше →


Кэширование фронтэнда: Flask, Nginx+Memcached+SSI

Достаточно давно мне на глаза попались следующие статьи по этой тематике:


С PHP я дружу, поэтому попробовал примеры и убедился, что это работает. Но всё это имело «фатальные недостатки» :) — PHP, а я фанат Python и по работе занимаюсь в основном бэкен


Заметки для построения эффективных Django-ORM запросов в нагруженных проектах

Написано, т.к. возник очередной холивар в комментариях на тему SQL vs ORM в High-Load Project (HL)

Преамбула


В заметке Вы сможете найти, местами, банальные вещи. Большая часть из них доступна в документации, но человек современный часто любит хватать все поверхностно. Да и у многих просто не было возможности опробовать себя в HL проектах.
Читая статью, помните:
  • Никогда нельзя реализовать HL-проект на основе только одной манипуляции с ORM
  • Никогда не складывайте сложные вещи на плечи БД. Она нужна Вам чтобы хранить инфу, а не считать факториалы!
  • Если вы не можете реализовать интересующую Вас идею простыми средствами ORM — не используйте ORM для прямого решения задачи. И тем более не лезте в более низкий уровень, костыли сломаете. Найдите более элегантное решение.
  • Извините за издевательски-юмористический тон статьи. По другому скучно :)
  • Вся информация взята по мотивам Django версии 1.3.4
  • Будте п


О производительности

На проекте был нежданчик — всё резко стало тормозить на живых пользователях.
Естественно, обновление откатили и уселись медитировать.

Тестовые системы ничего не показывали.
Неделю перетряхивали код, нашли и исправили несколько узких мест. Я, например, ускорил математику раз в 6-7.
Накатываем новое обновление — и опять тормоза, буквально никаких улучшений не заметно.

Проблема, как оказалось, была в следующем — обновление по ошибке включало вывод всех логов на консоль. А развертываемая система не перенаправляла stdout в /dev/null — да и не должна. Если всё правильно настроено — никто в консоль ничего не пишет. Логам место в файлах.

Досадный вывод отключили — и всё взлетело со скоростью необычайной. Такие дела...


Go for IT. Часть первая

Хабы: Высокая производительность, Веб-разработка, Go

Неуловимый Go.


Помните анекдот про неуловимого Джо? Именно восклицанием «Да кому он нужен!», прозвучавшим в форме вопроса "ЗАЧЕМ?", был встречен на Хабре релиз первой стабильной версии GO 1.

Именно на этот вопрос я хочу ответить циклом статей, оформленных в необычном для Хабра формате — в виде пошаговой совместной разработки действующего веб-проекта — с живым обсуждением и добавлением функционала. А чтобы вдвойне оправдать внесение цикла ещё и в хаб «Высокая производительность», мы поставим перед собой задачу создать не просто «хомяка», а проект, который наглядно продемонстрирует habri et orbi способность выдерживать значительные естественные нагрузки.

Вместо аперитива: реализация простейшего динамического веб-приложения на языке Go работает в 5-20 раз быстрее аналогичной Python-реализации. И всего в два р


Архитектура Google 2011



Архитектура Google была одной из первых статьей на Insight IT. Именно она дала толчок развитию проекта: после её публикации посещаемость блога увеличилась в десятки раз и появились первые сотни подписчиков. Прошли годы, информация устаревает стремительно, так что пришло время взглянуть на Google еще раз, теперь уже с позиции конца 2011 года. Что мы увидим нового в архитектуре интернет-гиганта?

Статистика

  • Общее