Список полезных советов по оптимизации MySQL
Top 1000 SQL Performance Tips
Скринкасты Percona
http://www.percona.tv/
Список полезных инструментов для MySQL
По этому адресу — список полезных инструментов для тюнинга mySQL: http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html
Установка связки nginx_php-fpm_php под FreeBSD
В общем-то это ссылки по теме: ссылка на статью на сайте лиссяры: Веб сервер на много коннектов и высокую нагрузку (nginx+php-fpm+mysql); очень всё банально и просто — из портов без настройки: http://habrahabr.ru/blogs/server_side_optimization/67152/; очень хорошая статья про настройку этого дела: http://habrahabr.ru/blogs/server_side_optimization/70167/ В каждой из статей куча ссылок на другие. Ссылки по настройке NginX — https://blog.bullgare.com/2009/10/настройка-nginx-ссылки/
Настройка NginX: ссылки
Здесь собираются ссылки по настройке сервера NginX. http://sysoev.ru/nginx/ http://wiki.nginx.org/ http://habrahabr.ru/blogs/nginx/66764/ http://habrahabr.ru/blogs/server_side_optimization/70167/ http://habrahabr.ru/blogs/nginx/66764/ http://habrahabr.ru/blogs/nginx/66115/ http://habrahabr.ru/blogs/nginx/56497/
XSLT: Создание и применение шаблона безотносительно путей в XML
Такой шаблон принимает на вход «массив», и выполняет над ним нужные действия в не зависимости от того, откуда этот массив был передан, главное, чтобы объекты в нём имели необходимые свойства. Создание шаблона:
|
1 2 3 |
<xsl:template match="item" mode="basket"> ... </xsl:template> |
Применение шаблона:
|
1 |
<xsl:apply-templates select="/page/data/coll/item" mode="basket"/> |
Триггеры в mySQL 5.0
Ссылка на статью. Для чего они нужны: — чтобы проверить и предотвратить вставку некорректных данных — чтобы изменить или отменить процедуры INSERT, UPDATE, DELETE — чтобы отслеживать изменения данных внутри сесии. Триггер — это фактически хранимая процедура, выполняющаяся при определённом событии, относящемся к определённым данным (хотя и с некоторыми нюансами). Синтаксис:
|
1 2 3 4 5 6 |
CREATE TRIGGER <trigger name> { BEFORE | AFTER } { INSERT | UPDATE | DELETE } ON <table name> FOR EACH ROW <triggered SQL statement> |
При этом доступны …
Использование VIEW в mySQL 5.0. Проблемы с производительностью.
Для тех, кто не знает, что это такое — ссылка Вкратце: созздаёт, фактически, «временную таблицу» (более правильно сказать — виртуальную таблицу или результат выборки в виде таблицы), в которой могут храниться данные из других таблиц и результаты применения аггрегирующих функций к ним. При этом если хранятся только данные, то эта таблица обновляется при обновлении входящих …
Генерация XML из массива
Сначала основная подзадача указанной задачи: Нужно генерировать массивы указанной структуры
|
1 |
array('#name' => '', '#value' => '', '#attrs' => array(), '#type' => '') |
Причём входные массивы могут быть различными: «простой тег»
|
1 |
array('tag' => 'value') |
«сложный тег»
|
1 |
array('#name' => 'tag', '#value' => 'value') |
и массив тегов
|
1 |
array('tag' => array(array('nested_tag' => array('nested' => 'value1')), array('nested_tag' =>'value2'))) |
Причём они могут вкладываться друг в друга для генерации сложных XML-структур. Без tdd, ясное дело, не обошлось. В итоге имеем класс для генерации подобных массивов с тестами к …
XSLT: объявление переменной
Объявление переменной в зависимости от условия