Этот пост возможно не будет великим откровением для супер-гуру, но!
А вы знали, что drush комманды можно выполнять для удаленных сайтов? Вот, например, как можно получить дамп продакшен сайта из локальной машины:
drush @sitename.live sql-dump > localdump.sql
Стоп-стоп-стоп, что за @sitename.live?
Отвечаю: эта штука называется drush-алиас. Его можно задать, в три шага:
Создание drush-алиаса в 3 шага
Создать файл sitename.aliases.drushrc.php внутри директории .drush в вашей домашней директории (т.е. конечный путь должен выглядеть так ~/.drush/sitename.aliases.drushrc.php).
Внутри этого файла прописать следующее:
<?php
// Ключ массива будет подставляется после точки в алиасе
$aliases['live'] = array(
// Урл вашего сайта
'uri' => 'my-site-name.com',
// Путь к корню друпал-инсталяции на диске
'root' => '/var/www/domains/my-site-name.com',
// IP-адрес или домен удаленного сервера
'remote-host' => 'my-site-name.com',
// SSH пользователь
'remote-user' => 'ssh-username',
// SSH опции, обычно путь к ключу, который вы используете для подключения по SSH
'ssh-options' => '-i /Users/alex/.ssh/skeleton-key.pem',
);
?>
После сохранения файла, можете проверить все ли сработало выполнив: drush @sitename.live status
Главной целью практически любого ревью является отсев деффектов, а в последнюю очередь просев форматирования. Посему, именно на них стоит концентрировать внимание в первую очередь при прогоне глазами кода.
Вот этапы, которые лично я использую в ревью (можно предлагать в комментах дополнения):
«Наших» модулей оказалось довольно много и, даже просто рассказывая в одном предложении про каждый из модулей, мы бы потратили не один час. Очень порадовало то, что были вопросы о том, как опубликовать свой модуль? какие преимущества? и др.
Сейчас процедура получения права на публикацию модуля усложнилась, но это к лучшему. Благодаря такой процедуре, будут отсеиваться бесполезные модули и те, которые дублируют без особых причин функционал уже существующих модулей.
В то время как ваш модуль может находиться в песочнице длительное время, вы можете уже сейчас публиковать патчи, которые исправляют ошибки или добавляют новые фичи в существующие contrib-модули, разработчиком которых вы не являетесь.
Contrib-модулями называются модули, которые были созданы и опубликованы на drupal.org сторонними разработчиками. Любой желающий может их использовать (contribution).
23-го апреля в Москве состоялась конференция DrupalConf. Наша доблестная команда в составе 4х человек тоже посетила событие, поэтому, спешу поделиться впечатлениями.
Конференция прошла в районе ВДНХ. Я был в Москве первый раз, поэтому все время был под впечатлением окружающих соружений и памятников:
Сжатие файлов уменьшает трафик от сервера к посетителю сайта, а значит посетитель сможет быстрее загрузить страницу и сервер не будет передавать "лишний" трафик.
Мы с вами рассмотрим:
Какие бывают виды сжатия?
Что предлагает ядро Drupal для решения этой проблемы?
Ведение проектов веб-студии требует наличия ряда инструментов:
Система управления проектами (планирование, задачи)
Багтрекер (ведение разработки и учет деффектов)
Система управления кодом (администрирование репозиториями)
Система документооборота (хранение общей и проектной документации)
Система биллинга времени (слежение за расходом времени на задачи)
Система рассчетов и бухгалтерии
Существует масса конкретных продуктов и решений для каждой из этих категорий, и я не буду расписывать все их. Вместо этого, я опишу что использовали мы, как эволюциировал наш выбор и на чем вы в конце-концов остановились.
Одним из самых развиваемых направлений сайтостроения в последние годы являются социальные сети, главная задача такого сайта дать большему количеству людей площадку для общения. Количество пользователей сайта возрастает и уследить изменения которые они делают ставится все сложнее. Для удобного наблюдения за активностью сайта или пользователя существуют специальные модули, которые мы сейчас и рассмотрим.
Цель рассматриваемых модулей отследить действия пользователя и вывести в удобном виде. Чем больше действий модуль может фиксировать тем лучше. Другой важный показатель — интеграция с другими модулями и наличие развитого API.
В последнее время NoSQL стало модным словом в веб-разработке. Некоторые проекты используют подобные БД для узких частей архитектуры, некоторые мигрируют на них полностью. Такие БД как правило отличаются от реляционных простой архитектурой и высокой масштабируемостью. На данный момент нас интересует MongoDB как одна из наиболее популярных NoSQL баз данных. Постараемся выделить сильные и слабые стороны, рассмотреть некоторые особенности разработки, область применения в друпале, а также постараемся понять на практическом примере что означает термин Map/Reduce.
MongoDB это что-то среднее между key-value хранилищами (которые обычно быстры и масштабируемы) и традиционными реляционными базами данных (MySQL, PostgreSQL и т.п.), которые предоставляют расширенные запросы и богатый функционал.
В первой части статьи про составное CCK-поле это поле было создано. Настало время добавить к этому полю отрисовку графиков в реальном времени. Этому и будет посвящена вторая часть статьи.
Напомню, что в конце первой части статьи мы получили вот такое поле: