Sysbench - утилита для тестирования производительности MySQL (и других СУБД), а также параметров операционной системы. Подобный инструмент незаменим для предварительного тестирования эффективности системы с (потенциально) высокой нагрузкой. Sysbench позволяет оценить производительность сервера СУБД и операционной системы в различных условиях при различной нагрузке.
Читать далее…

Одним из основных принципов разработки масштабируемых и эффективных приложений является выбор подходящих технологий для решения той или иной задачи. Многие современные РСУБД представляют из себя решения универсальные, но во многих случаях в них просто нет необходимости.
Одним из альтернативных решений для хранения и обработки данных является СУБД Mongo DB (”humongous” - огромный, невероятный).
Читать далее…
Rediska - удобный PHP клиент c внушительным списком возможностей для key-value базы Redis.
Читать далее…

В этой статье поговорим о кешировании страниц и их частей, а также о том, какие плюсы это дает.
Если на Вашем сайте практически нет динамики (например, новостной сайт или блог), то Вы легко можете складывать все его страницы в кеш и практически не делать запросов к бекенду. Но что делать если на сайте есть авторизация, и зависящая от этого логика?
В этой статье речь пойдет о том, как кешировать страницы с персональными данными используя Varnish и язык ESI.
Читать далее…

Apache Solr - это расширяемая поисковая платформа от Apache. Система основана на библиотеке Apache Lucene и разработана на Java. Особенности ее в том, что она представляет из себя не просто техническое решение для поиска а именно платформу, поведение которой можно легко расширять/менять/настраивать под любые нужды - от обычного полнотекстового поиска на сайте до распределенной системы хранения/получения/аналитики текстовых и других данных с мощным языком запросов.
Читать далее…

После статьи об архитектуре connect.ua многие спрашивали о подсистеме обслуживания медиа файлов, поэтому в этой статье речь пойдет о масштабируемых и производительных системах обслуживания медиа.
Что такое подсистема хостинга медиа вообще? Это часть системы, которая отвечает за загрузку, сохранение, преобразование (транскодирование) и отдачу медиа файлов. Зачастую эта система является наиболее ресурсоемкой ввиду больших объемов данных и процессорных затрат.
Читать далее…

Рекламной моделью сегодня пользуется большинство интернет проектов, тем более крупных. А это значит, что практически все пользуются баннерными системами.
Любая баннерная система оказывает влияние на скорость работы Вашего сайта для посетителей. При использовании стандартных механизмов открутки рекламы, которые обычно нацелены на максимальную скорость установки (но не работы!), Вы можете очень сильно снизить скорость загрузки Ваших страниц, тем самым подорвать лояльность аудитории.
Почему так происходит и что делать?
Читать далее…

Connect.ua - это первый украинский социальный сервис. За два года проект вырос в достаточно крупный, а следовательно имеет свою собственную историю масштабирования и роста.
Во время роста мы перепробовали большое количество технологий и подходов, которыми я и хочу поделиться в этой статье.
Читать далее…

Google analytics имеет расширенные возможности, которые далеко не ограничиваются подсчетом количества просмотров страниц Web сайтов. В GA есть возможность собирать статистику пользовательских событий. На основе этой статистики можно собирать практически любую информацию о пользователях и их действиях.
Рассмотрим, как использовать Google Analytics, чтобы отслеживать скорость загрузки страниц Вашего Web сайта у пользователей.
Читать далее…

При оптимизации приложения важно не забывать о том, что оптимизируем мы прежде всего для клиента. Сайт, который работает медленно, это всегда неудобно и плохо.
Главный критерий оптимизации для клиента - это скорость ответа (т.е. время, за которое Web сервер отвечает на запрос). Если не брать во внимание клиентскую оптимизацию, есть ряд практик, позволяющих быстрее генерировать ответ клиенту (по сути без оптимизации внутренностей).
Читать далее…
Комментарии