Pull to refresh
  • by relevance
  • by date
  • by rating

Приглашаем на Semrush IT meetup «Производительность веб-сервисов»

Semrush corporate blog High performance *Web services testing *Conferences DevOps *

Антон Тужик из Semrush поделится чеклистом для прироста производительности сайтов и веб-приложений. А Алексей Шаров и Игорь Зубов из Wrike расскажут, как спасли важный компонент ускорением Workload.


Программа и спикеры – под катом.


Читать дальше →
Total votes 3: ↑3 and ↓0 +3
Views 1.2K
Comments 0

Backend Performance Meetup

SuperJob corporate blog ManyChat corporate blog High performance *PHP *IT career
ManyChat и SuperJob приглашают PHP-разработчиков на митап по производительности бэкенда. Спикеры из Авито, «Ситимобила», ManyChat и SuperJob поделятся своим опытом и расскажут о практиках, которые позволяют создавать качественные и надежные продукты.

Встреча пройдёт 30 сентября в гибридном формате — офлайн в офисах SuperJob и ManyChat, а также онлайн с YouTube-трансляцией.

Подробности программы, ссылка для регистрации и бонус-трек — под катом.


Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Views 204
Comments 5

MySQL conf в Санта-Кларе: собираем презентации

Website development *
По слухам, все презентации c mysqlconf будут выложены на официальном сайте, но неизвестно когда. Некоторые презентации очень интересные — предлагаю объединить уcилия всем хабралюдям, кто следит за ;) Пока найдено: «Scaling and High Availability Architectures», «Wikipedia: Site Internals, Configuration and Code Examples, and Management Issues», «PHP on Hormones», многочисленные Акена по Scaling и Storage Engines (1, 2) и Зайцева по оптимизации и тюнингу.

Описание презентаций с комментариями — здесь
Total votes 17: ↑16 and ↓1 +15
Views 915
Comments 6

JavaScript: ограничение частоты исполнения функции

Website development *
JavaScript — удивительный язык, с которым порой удаётся вытворять неожиданно классные вещи. Хочу познакомить вас с немножко нестандартным решением одной проблемы быстродействия, с которой я недавно столкнулся. Предупреждение: не для новичков.

Исходные данные: ресурсоёмкая функция, обновляющая определённые элементы на экране по наступлению определённых событий (движение мышки, например).
Проблема: когда события, вызывающие функцию, происходят слишком часто за короткий промежуток времени, интерфейс может начать серьёзно тормозить. Скажем, если событие произойдёт 1000 раз за несколько секунд, то и обновление — столько же. Для интерфейса молниеносная скорость отрисовки изменений может быть не так важна, а вот общее быстродействие, которое в данном случае страдает — очень даже.
Задача: ограничить функцию таким образом, чтобы она исполнялась не чаще, чем раз за определённый промежуток времени. При достаточном малом таком промежутке визуально задержки не будут заметны, зато кол-во вызовов может сократиться в несколько раз, что в свою очередь очень сущесвенно сократит нагрузку и поможет избавиться от торможения.

Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Views 13K
Comments 14

И снова о speed performance вашего сайта

Lumber room
Уф… наконец-то я решился написать свой первый пост.

В этом посте я хочу рассказать вам о некоторых простых, и в тоже время эффективных способах ускорения загрузки вашего сайта.
Все методы основаны на LAMP + nginx + drupal, но я думаю что всё это катит и для остального тоже.
Разговор пойдёт о первой загрузке сайта, то есть когда у клиента нет ещё кеша в браузере.
Читать дальше →
Rating 0
Views 358
Comments 0

И снова о speed performance вашего сайта

Website development *
Уф… наконец-то я решился написать свой первый пост.

В этом посте я хочу рассказать вам о некоторых простых, и в тоже время эффективных способах ускорения загрузки вашего сайта.
Все методы основаны на LAMP + nginx + drupal, но я уверен что всё это верно и для остального тоже.
Разговор пойдёт о первой загрузке сайта, то есть когда у клиента нет ещё кеша в браузере.
Читать дальше →
Total votes 54: ↑47 and ↓7 +40
Views 1.7K
Comments 76

Ускорение запуска программ с помощью Preload

Configuring Linux *
Preload — демон, работающий в фоне, который собирает информацию о наиболее часто используемых программах, кеширует их и используемые ими библиотеки, что приводит к повышению скорости загрузки программ. Используя Preload вы можете с пользой потратить гигабайты неиспользуемой оперативной памяти (конечно если они у вас есть).
Читать дальше →
Total votes 42: ↑40 and ↓2 +38
Views 22K
Comments 56

RE: Как правильно писать SQL-запросы

SQL *
по поводу утверждения «Везде, где можно, используйте Prepared Statements» в статье Как правильно писать SQL-запросы могу сказать следующее: Производительность хранимых процедур MS SQL Server 2000
В общем, кэширование кода — это не всегда хорошо.
Total votes 25: ↑19 and ↓6 +13
Views 5.6K
Comments 23

PHP Performance Series: Caching Techniques

PHP *
Translation
Кеширование промежуточного кода (Opcode Caching)
Кэширование кода это один из самых легких и эффективных путей увеличения производительности в PHP. Использовании данного вида кэширования позволит избавиться от большого количества неэффективностей, возникающих при процессе запуска выполнения кода. Кэширование кода сохраняет промежуточный код в памяти для того чтобы не компилировать PHP-код каждый раз при запуске файла.
Читать дальше →
Total votes 59: ↑50 and ↓9 +41
Views 8.8K
Comments 66

Производительность C#

.NET *
Ради интереса хочу показать сообществу график, который демонстрирует производительность C# для матричных операций, по сравнению с C++, C++ с OpenMP, а также Parallel Extensions. По оси X — размер матриц. По оси Y — время выполнения операции умножения в секундах (шкала логарифмическая).



Что уважаемое сообщество думает на эту тему? Имеет ли смысл разрабатывать performance-critical приложения на .NET? Или стоит вкладывать больше энергии в изучение Intel-евских тулов? (Intel TBB, MKL, IPP)? Или просто использовать OpenMP?

P.S.: Картинка снята из моего блога. Полный очерк (на английском) тут.
Total votes 43: ↑33 and ↓10 +23
Views 5K
Comments 63

Разработка на PC и производительность — Memory Latency

Website development *
Herb Sutter (автор Exceptional C++, бывший глава ISO C++ standards committee, мистер Free Lunch Is Over и прочая, и прочая) работает в Microsoft и иногда по средам читает атомные лекции.

Я наконец-то на одну такую попал, и очень радовался. На умных мужиков всегда радостно поглядеть и послушать.
Для отчета — кроме Херба, видел живого Олександреску и живого Walter Bright (который "D").

Лекция называлась «Machine Architecture: Things Your Programming Language Never Told You» (здесь можно скачать презентацию и видео) и была про конкретную часть abstraction penalty — Memory Latency.

Я попытаюсь коротко рассказать о ключевой мысли лекции. Она простая, очевидная и тысячу раз сказанная. Думаю, еще раз повторить азбуку — никогда не повредит.
Читать дальше →
Total votes 142: ↑135 and ↓7 +128
Views 9.1K
Comments 70

Производительность Python 3: Отвлекающий маневр

Lumber room
Translation
Я имел неосторожность обращать пристальное вынимание на производительность языка, но этого больше не повторится. Для работы, которую я делаю, производительность разработки гораздо более значима, чем производительность самого языка. Меня совершенно не беспокоит, что Python 3 чуть-чуть медленнее, чем последний 2.x релиз, который используется в продакшн(2.5). История показала, что разработчики Python достаточно хороши в оптимизации и теперь, когда язык стабилизировался, мы можем рассчитывать на большое количество оптимизаций в 3-ей ветке.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Views 640
Comments 3

PHP Шаблонизатор Quicky версия 0.5.x

PHP *
Основные изменения по сравнению с 0.4.x: (http://code.google.com/p/quicky/)
[~] {math} теперь компилируется в нативный PHP-код.
[~] Отображаются номера строк при ошибках компиляции, ошибки компиляции выдаются сразу все, а не по одной, показывается тег, в котором ошибка.
[+] Добавлена функция {debug} отображающая debug-консоль (о том почему у Quicky наиболее совершенный дебагер читайте под катом).
Читать дальше →
Total votes 3: ↑3 and ↓0 +3
Views 1.7K
Comments 5

Нагрузочное тестирование и тюнинг популярных веб-приложений

TrueVDS corporate blog Website development *
Мы проводим нагрузочное тестирование для распространенных CMS и веб-приложений. Сейчас это Drupal, Joomla, Wordpress, phpBB и SMF. Результаты тестирования будут публиковаться открыто.

Приглашаю принять участие в тестировании. В обмен участники получат бесплатно годовой хостинг на VDS.

Читать дальше →
Total votes 47: ↑41 and ↓6 +35
Views 5K
Comments 63

Съешь еще этого вкусного сочного CPU (решение проблемы с загрузкой процессора)

Firefox
Во время перекомпиляции или рестарта ASP.NET-приложения я регулярно наблюдал картину, когда процесс firefox использовал процессор не меньше, а то и больше, чем aspnet_wp. С какой, спрашивается, радости он это делает, если он просто ждет ответа от сервера? На что тратится ресурс процессора?

Ответ на этот вопрос был заметен, оказывается, невооруженным взглядом, но он настолько дурацкий, что подумать его было сложно. Процессор кушает… анимация (APNG) крутящегося индикатора загрузки! Достаточно заменить его статическим png (или анимированным gif), чтобы проблема ушла.

Злополучный файл называется loading_16.png. Я нашел его здесь: Mozilla Firefox\chrome\classic.jar\skin\classic\global\icons\, — и заменил на статическую картинку. Также он лежит в skin\classic\aero\global\icons\loading_16.png, но это, видимо, для Висты, а у меня XP. Там я его оставил.

Ура, теперь не надо обдумывать переход на другой браузер! :) Надеюсь, в 3.5 это все-таки исправят, как-то неохота повторять операцию после апдейта.

Другой вариант решения — скопировать вот это в userChrome.css (не пробовал, это информация с баг-трекера Мозиллы).

Ссылки с подробностями:
https://bugzilla.mozilla.org/show_bug.cgi?id=437829
forum.mozilla-russia.org/viewtopic.php?pid=315838#p315838
Total votes 99: ↑89 and ↓10 +79
Views 1.3K
Comments 85

Javascript производительность? А как насчёт производительности перерисовки страниц?

Browsers
Translation
Тесты производительности нынче становятся все агрессивней, при этом похоже, что упор делается исключительно на искусственных тестах, которые могут показать нам производительность лишь некоторых компонентов браузеров в частности производительность выполнения JavaScript функций, выбранных для этих конкретных тестов.

Удивительно, что так мало внимания уделяется другим, более соответствующим аспектам производительности современных страниц, либо вообще не уделяется. Например, как быстро работают браузеры с динамично меняющимся стилем страницы (CSS)?

На Velocity 2009 Линдси Симон из компании Google говорил именно об этом. И на слайдах из презентации есть пара итересных графиков.
opera css change perfomance
Выяснилось, что Оперовский движок очень быстро работает с динамично меняющимся контентом страницы, а это именно то, что используется в интернете повсеместно. Что, если в будущем производительность браузера будет измеряться более комплексно, в отличии от простого JavaScript теста?

Еще одни нюанс, который я отметил в другой день, – это недостаточные и узкоспециальные тесты памяти, которые не принимают во внимание, что различные браузеры работают с памятью по-разному. Например, они игнорируют разделяемую память Хрома, и совсем не похоже, что бы учитывался продвинутый кеш Оперы.

Кроме того Опера очищает кэш от неиспользуемых элементов каждые 10 минут, но не видно что бы это было отражено в отчёте испытания. Мы могли бы очищать кеш все время, но тогда нам пришлось бы пожертвовать производительностью, как по всей видимости, делает Firefox.

В контексте комплексного тестирования JavaScript и памяти Джаракан, похоже, увеличит показатели искусственных JavaScript тестов, но, возможно, за счет использования большего количества памяти.
Total votes 38: ↑31 and ↓7 +24
Views 408
Comments 28