Как стать автором
Обновить

GOдный контент: 4 поток курса «Golang для инженеров» от Слёрма

Время на прочтение 2 мин
Количество просмотров 507
Блог компании Southbridge

10 октября мы выходим на старт с новым потоком курса по Golang для инженеров с нуля. И это настолько GOдный контент, что мы делаем уже 4 поток.

В этот раз еще больше DevOps-инженеров научатся применять Golang в работе для автоматизации процессов разработки, ускорения программирования и повышения уровня администрирования.

Кстати, наш курс подходит не только инженерам: много пользы от него получат и разработчики, которые часто сталкиваются с инженерными задачами. Курс по Go поможет понять, как эффективнее всего взаимодействовать с микросервисами и высоконагруженными системами.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 0

Прокачаться в асинхронном программировании на Python за 6 недель

Время на прочтение 1 мин
Количество просмотров 1K
Блог компании Southbridge

Через два дня стартует курс по асинхронному программированию на Python от нашего партнёра KTS. Его можно пройти за полтора месяца, если заниматься 8–16 часов в неделю.

Этот курс — маст хев для тех, кто хочет прокачать харды и стать специалистом, который не боится сложных задач. Асинхронное программирование используется для высоко­нагруженных проектов и микросервисов, его спрашивают на собеседованиях в технологически развитых компаниях.

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Комментарии 0

Как выстроить техстратегию: узнайте от СТО ВКонтакте на HighLoad++

Время на прочтение 2 мин
Количество просмотров 628
Блог компании VK Высокая производительность *IT-инфраструктура *Конференции

«Архитектура не нужна, если нет стратегии» — почему так, расскажет технический директор ВКонтакте Александр Тоболь на открытии конференции HighLoad++ 24 ноября. Смотрите трансляцию выступления: будет полезная теория по стратегированию, а также подходы и кейсы из реальной практики СТО высоконагруженного проекта.

Узнать больше
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

3-я встреча Moscow MUG: MySQL и memcached

Время на прочтение 1 мин
Количество просмотров 853
MySQL *
1-го ноября, в 19-00 в аудитории 116 здания ГУ-ВШЭ на Мясницкой, 20 состоится очередная встреча Moscow MySQL User Group. В качестве ведущего выступит Михаил Монашёв.

Михаил расскажет, как он с коллегами использует MySQL с мемкешедом в проекте beon.ru.

Если Вы никогда ранее не работали с мемкешедом, то узнаете что это за зверь и как с его помощью ускорить работу с MySQL-ем.

Если уже используете его в своих проектах, то возможно узнаете, как это можно делать оптимальнее.

Встреча проводится при поддержке клуба «Бизнес в стиле .RU» и для участия в ней необходимо обязательно зарегистрироваться по адресу styleru.net/register, чтобы попасть в здание ГУ-ВШЭ.
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 2

Горизонтальное масштабирование PostgreSQL с помощью PL/Proxy.

Время на прочтение 9 мин
Количество просмотров 26K
PostgreSQL *
Очень тяжело начать писать статью. Т.е очень тяжело придумать вступительное слово. Хочется рассказать обо всём и сразу :) Но нет. Будем последовательны.
Начну с того что совсем недавно проходил Highload++ 2008 на котором мне удалось побывать.
Скажу сразу — мероприятие было проведено по высшему клаcсу, докладов было много и все были очень интересными.
Одной из самых запомнившихся презентаций была лекция Аско Ойя об инфраструктуре серверов баз данных в Skype. Лекция в большей степени касалась различных средств с помощью которых достигается такая производительность серверов.
По словам Аско, база данных Skype выдержит даже если все жители Земли захотят подключится к скайп в один момент.

Приехав домой очень захотелось это всё попробовать в живую. О чём я сейчас и расскажу. Сразу оговорюсь — структура базы данных для теста, взята из примера на сайте самих разработчиков и естественно не имеет ничего общего с реальной загрузкой.
В статье будет описано что распределением нагрузки надо заниматься после того как уже припекло и база падает, но это не совсем так. С помощью данной статьи я как раз хочу подготовить начинающих и не опытных разработчиков и заодно заставить их задуматься о том, что предусматривать возможность распределения нагрузки между серверами надо ещё при проектировании системы. И это не будет считаться той самой «преждевременной оптимизацией» о которой так много пишут и которой так боятся.

UPD: Как правильно заметил хабраюзер descentspb в статье присутствует досаднейшая ошибка. В следствие своей невнимательности я подумал что PgBouncer надо устанавливать между прокси и клиентом. Но, как оказалось, та проблема которую я решал с помощью PgBouncer не решится если установить его именно так. Правильнее надо устанавливать боунсер между нодами и прокси. Мало того, именно так и рекомендуется делать в оффициальном мануале на сайте PL/Proxy.
В любом случае использование PgBouncer так как указано на моей схеме также даст прирост производительности. (Разгрузит Proxy).


Читать дальше →
Всего голосов 52: ↑49 и ↓3 +46
Комментарии 46

Realplexor: производительный Comet-сервер с API для PHP и Javascript (realtime)

Время на прочтение 5 мин
Количество просмотров 20K
Высокая производительность *
Dklab Realplexor — это Comet-сервер, позволяющий держать одновремено сотни тысяч долгоживущих открытых HTTP-соединений с браузерами пользователей. JavaScript-код, запущенный в браузере, подписывается на один или несколько каналов Realplexor-а и вешает обработчик на поступление данных. Сервер может в любой момент записать сообщение в один из таких каналов, и оно будет моментально передано всем подписчикам (хоть одному, хоть тысяче), в режиме реального времени и с минимальной нагрузкой для сервера.

Хотя идейным вдохновителем Realplexor-а был предыдущий проект, dklab_multiplexor, код Realplexor-а не имеет с ним практически ничего общего. Поэтому я и решил сменить название. Несопоставимы также возможности продуктов (см. ниже), да и размер кода увеличился в 7 раз.

Realtime-направление сейчас довольно активно развивается на Западе, и в нем особенно выделяется продукт Tornado — событийно-ориентированный веб-сервер на языке Python. Правда, Tornado — это не столько Comet-сервер, сколько инструмент, с помощью которого можно запрограммировать «в том числе» и Comet-сервер. Ключевые слова: Comet, Push Server, Long polling, JavaScript, XMLHttpRequest.

Главные преимущества Realplexor-а:
  • простота использования: наличие API для JavaScript, API для PHP (в будущем — и для других языков);
  • простота конфигурирования;
  • широкий функционал (либо отстутствующий, либо недоступный напрямую в аналогах).

Лучше один раз увидеть...


Я сделал отдельную онлайн-песочницу, чтобы продемонстрировать функционал нового Realplexor-а и то, для чего вообще нужны Comet-серверы (кстати, это физически тот же самый демон Realplexor-а, что использует мой новый стартап РуТвит). Песочница реализует что-то типа многоканального чата: зайдя, вы получите как будто бы 2 независимых «браузера», запущенных на разных компьютерах.
  • Верхний «браузер» отображает каналы — в них моментально появляются новые сообщения, как только кто-то их туда отправляет на стороне сервера. Конечно же, эту страницу могут просматривать одновременно сотни тысяч пользователей, и они все будут видеть одно и то же (реализовано с использованием Realplexor JavaScript API). Можно «на лету» добавлять новые каналы (подписка) или скрывать уже имеющиеся (отписка).
  • Нижний браузер содержит формы, позволяющие добавлять сообщение в произвольный канал, указав его имя. Форма AJAX-ом отправляется на сервер, и уже там PHP-скрипт записывает в Realplexor полученный текст через PHP API. (И да, так можно чатиться.)
По умолчанию на странице открыто 3 канала с именами Alpha, Beta и RuTvit. Но, конечно, вы можете закрыть эти каналы и открыть новые. Вот, например, страница с единственным открытым каналом по имени Habrahabr: http://rutvit.ru/realplexor/demo?ids=Habrahabr.



Песочница демонстрирует следующие функции Realplexor-а:
Читать дальше →
Всего голосов 99: ↑92 и ↓7 +85
Комментарии 141

Конференция для разработчиков в Оренбурге

Время на прочтение 1 мин
Количество просмотров 597
Я пиарюсь

Программа конференции


  1. Открытие конференции. Борис Вольфсон (руководитель отдела веб-разработки Softline в г. Оренбург), Ларьков Сергей (руководитель представительства Softline в г. Оренбурге) — 15 минут
  2. Scrum — гибкий фреймворк для управления проектами. Вольфсон Борис (руководитель отдела веб-разработки Softline в г. Оренбург) — 1 час
  3. Облачные вычисления: Windows Azure. Калдузов Алексей (старший разработчик) — 1 час
  4. Перерыв — 15 минут
  5. Современные методы тестирования программного обеспечения. Обложихин Михаил (тестировщик) — 1 час
  6. Архитектура высоконагруженных проектов. Видинеев Юрий (системный администратор) — 1 час
Читать дальше →
Всего голосов 29: ↑22 и ↓7 +15
Комментарии 17

Повышение производительности за счет блочного кеширования

Время на прочтение 5 мин
Количество просмотров 5.5K
Высокая производительность *
Тема блочного кеширования и ssi не раз проскакивала на Хабре. Ниже я представлю еще одну реализацию, использующего блочное кеширование, а также исходники фреймворка, использующего эти принципы, которые можно найти тут. А как это работает — прочитать ниже.
схема кеширования блоками
Читать дальше →
Всего голосов 56: ↑49 и ↓7 +42
Комментарии 60

Видео с пользовательской конференции по Sphinx (~8часов)

Время на прочтение 1 мин
Количество просмотров 961
Высокая производительность *
Поскольку новость не пробежала на Хабре, но однозначно (с) будет интересна многим:

«Видео с пользовательской конференции по Sphinx (~8часов)
http://devconf.tv/user/sphinx».
Всего голосов 26: ↑23 и ↓3 +20
Комментарии 9

Быстрый автокомплит с использованием libscgi

Время на прочтение 3 мин
Количество просмотров 1.5K
Разработка веб-сайтов *
Недавно была опубликована статья "libscgi — эффективное решение для простых и быстрых скриптов". Хотелось бы продолжить ранее представленую тему с более практической стороны. Как уже догадались из название — речь пойдет об скрипте автокомпита.

Пользователей, и меня в частности, всегда разражали эти уж медленные автокомплиты. Бывает наберешь уже почти все слово, как появляется выпадающая менюшка. Понятно, что JavaScript сам по себе медленный. Но если еще автокомплит будет тормозить на стороне сервера, то вообще как-то кисло получается. Выход есть, если на серверной части использовать, что-то более быстрое, как вариант можно использовать бинарный скрипт с использованием libscgi. Исходники тут. Чуть ниже подробности.
Читать дальше →
Всего голосов 14: ↑8 и ↓6 +2
Комментарии 11

HandlerSocket на AddConf Санкт-Петербург 29-30 апреля

Время на прочтение 1 мин
Количество просмотров 966
MySQL *
На AddConf будет мой доклад «Ускоряем MySQL в десятки раз с использованием HandlerSocket».

В докладе будут рассмотрены практические вопросы использования HandlerSocket в системе билинга и сбора статистики, будет рассмотрен протокол HandlerSocket, рассказаны приемы отладки, применяемые утилиты и методы, возможные острые углы.

А так же будет обозрение и результаты использования совместно с технологией sphinx и в качестве модуля nginx и обзор аналогичной технологии innoDb-memcache.

Хочется услышать пожелания к материалам доклада (что добавить а что наф. не нужно), а так же приглашаю его прослушать в живую.

Презентация

PS. Графика при конвертации немного сбилась. В оригинале этого нет.

Промокод на 5% скидку «Александр Календарев — читаю» .

ссылки по теме:
Первый опыт работы с Handler Socket & php_handlersocket
Некоторые тонкости Update & Insert в Handler Socket
nginx модуль
Всего голосов 24: ↑22 и ↓2 +20
Комментарии 8

Основные тезисы конференции HighLoad++ 2011

Время на прочтение 6 мин
Количество просмотров 4.1K
Я пиарюсь
imageВ октябре 2011 года в Москве проходила ежегодная конференция разработчиков высоконагруженных проектов HighLoad++.
Решил поделиться с читателями основными тезисами с конференции. Поскольку вся информация открыта и доступна на странице конференции, решил что собрать все тезисы вместе будет не такой уж и плохой затеей. Сразу отмечу, что в отчёте не содержится детальной информации о каждом докладе — затронуты лишь ключевые моменты.
Итак, о чём говорилось на HighLoad++ 2011.
Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Комментарии 2

Как я делал самый популярный сайт о выборах

Время на прочтение 10 мин
Количество просмотров 15K
Разработка веб-сайтов *MODX *
Из песочницы
Статистика President2012.ru Друзья, я хочу вам рассказать историю развития проекта president2012.ru. Сайт является лидером по тематике выборов президента России, за 3 месяца его посетило около 2 млн. человек, в пике имел до 20 тыс. посетителей онлайн и более 1 млн. хитов в сутки, задействовано было 3 сервера облака.

Интересных моментов в процессе работы над проектом набралось столько, что держать в себе эти знания я не могу, и хочу поделится с вами. Я понимаю, что многое, о чем я сейчас собираюсь рассказать, уже описано качественнее в специализированных разделах, и ничего нового я не открою. Моя задача скорее в том, чтобы через отдельные нюансы передать ту атмосферу, в которой проходила работа над проектом. А так же в миллионный раз с помощью success story показать таким же как я людям, что всё возможно и всё в их руках.

Кому это может быть интересно? Всем, кто так или иначе занимается созданием тематичных веб-сайтов и рассчитывает работать с высоконагруженными проектами.
Читать дальше →
Всего голосов 274: ↑253 и ↓21 +232
Комментарии 214

Отладка сложных веб-приложений — эффективная багодробилка на production-серверах

Время на прочтение 12 мин
Количество просмотров 26K
Блог компании Битрикс24 Разработка веб-сайтов *
Всем привет!

Сегодня расскажу, как на боевых серверах во время нагрузки, в пыли и грязи, эффективно отлавливать узкие места в производительности больших веб-приложений на PHP, а также искать и устранять «нестандартные» ошибки. Многие из описанных техник мы с успехом применяем на нашем облачном сервисе «Битрикс24».
Информация, надеюсь, пригодится системным администраторам и разработчикам, обслуживающим сложные веб-проекты, а также менеджерам, которые хотят выстроить эффективный и быстрый процесс поиска и устранения узких мест и ошибок проектов на PHP.

Читать дальше →
Всего голосов 109: ↑91 и ↓18 +73
Комментарии 30

DEV {web} — конференция о Highload веб-разработке

Время на прочтение 1 мин
Количество просмотров 5.9K
Блог компании e-legion Разработка веб-сайтов *PHP *
13 октября в Санкт-Петербурге пройдет конференция о веб-разработке сложных высоконагруженных проектов — DEV {web}.

image

Если вам интересно как правильно использовать в проектах с многомиллионной посещаемостью Java, PHP, MySQL, Postgres, что делать для балансировки нагрузки и как правильно кэшировать и работать с сессиями пользователей — регистрируйтесь и приходите!
Всего голосов 33: ↑29 и ↓4 +25
Комментарии 14

Силовые тренировки: раскатываем HTTPS под высокими нагрузками

Время на прочтение 6 мин
Количество просмотров 16K
Блог компании VK
В сентябре Почта Mail.Ru включила HTTPS-шифрование для всех пользователей.

Преимущества защищенного соединения очевидны всем разработчикам крупных интернет-проектов. Большинство современных web-серверов (nginx, Apache, etc) и браузеров поддерживают HTTPS. В то же время сайтов, на которых безопасный протокол включен всегда и по умолчанию, не так много. Почему это так? С какими трудностями мы столкнулись при поддержке HTTPS? Читайте под катом.
Читать дальше →
Всего голосов 49: ↑42 и ↓7 +35
Комментарии 33

2 апреля в Петербурге состоится High Performance Conference 4.0

Время на прочтение 1 мин
Количество просмотров 5K
Блог компании e-legion Высокая производительность *
Впервые конференция по высоким нагрузкам пройдет Петербурге! 2 апреля в Holiday Inn «Московские Ворота» своим опытом поделятся представители из JetBrains, Microsoft, Jelastic и Badoo и Яндекс.Денег.

image

HPC 4.0 соберет программистов, тим-лидов и руководители IT-департаментов и компаний, которые смогут задать вопросы экспертам по высоким нагрузкам и обсудить собственные решения с коллегами.

После докладов состоится after-party с алкоголем и неформальным общением.

Программа мероприятия и акция для Хабрапользователей
Всего голосов 33: ↑28 и ↓5 +23
Комментарии 2

Бесплатный семинар «Построение отказоустойчивых систем и разработка крупных проектов»

Время на прочтение 1 мин
Количество просмотров 6.9K
Блог компании Битрикс24 Разработка веб-сайтов *
Все мы, безусловно, мечтаем о том, что когда-нибудь наши проекты дорастут до масштабов Яндекса, Фейсбука, Гугла, будут работать на тысячах серверов, размещенных в десятках датацентров по всему миру, с аптаймом 99,99999%.

Так, конечно же, когда-нибудь будет. :) Но прежде, чем стать гуру системного администрирования и ассом веб-разработки, все равно нужно начать с азов. Для этого мы 20-го марта 2014 г. проводим в Москве бесплатный семинар «Построение отказоустойчивых систем и разработка крупных проектов».

Немного подробностей и ссылка на регистрацию под катом.

Читать дальше →
Всего голосов 11: ↑6 и ↓5 +1
Комментарии 3

Высоконагруженные системы: решение основных проблем

Время на прочтение 7 мин
Количество просмотров 50K
Блог компании Plarium
Туториал
Привет, Хабр!

Сегодня я хочу рассказать о некоторых решениях проблем, которые возникают во время использования высоконагруженных систем. Все, о чем пойдет речь в этом материале, проверено на собственном опыте: я – Social Games Server Team Lead в компании Plarium, которая занимается разработкой социальных, мобильных, браузерных игр.

Для начала немного статистики. Plarium занимается разработкой игр с 2009 года. На данный момент наши проекты запущены во всех наиболее популярных социальных сетях («Вконтакте», «Мой мир», «Одноклассники», Facebook), несколько игр интегрированы в крупные игровые порталы: games.mail.ru, Kabam. Отдельно существует браузерная и мобильная (iOS) версии стратегии «Правила войны». В базах числятся более 80 миллионов пользователей (5 игр, локализация на 7 языках, 3 миллиона уникальных игроков в день), в итоге все наши серверы получают в среднем около 6500 запросов в секунду и 561 миллион запросов в сутки.

В качестве аппаратной платформы на боевых серверах в основном используются два серверных CPU с 4 ядрами (x2 HT), 32-64 GB RAM, 1-2 TB HDD. Серверы работают на базе Windows Server 2008 R2. Контент раздается через CDN с пропускной способностью до 5 Gbps.
Разработка ведется под .NET Framework 4.5 на языке программирования C#.

Учитывая специфику нашей работы, необходимо не только обеспечить стабильное функционирование систем, но и гарантировать, что они смогут выдержать большой скачок нагрузки. Увы, многие популярные подходы и технологии не выдерживают проверку высокой нагрузкой и быстро становятся узким местом в системе. Поэтому, проанализировав множество проблем, мы нашли оптимальные для нас (как мне кажется) пути их решения. Я расскажу, какие технологии мы выбрали, от каких отказались, и объясню, почему.

Все самое интересное - под катом
Всего голосов 28: ↑23 и ↓5 +18
Комментарии 25

Система для большой науки

Время на прочтение 4 мин
Количество просмотров 5.4K
Блог компании Dell Technologies Высокая производительность *
Мы уже неоднократно знакомили вас со своими разработками для научно-исследовательских центров американских университетов – мощными и производительными системами, благодаря которым современная наука получила возможность развиваться немного быстрее. Но проект, о котором пойдет речь в этом посте, пожалуй, можно назвать самым грандиозным детищем Dell.
Читать дальше →
Всего голосов 9: ↑8 и ↓1 +7
Комментарии 0