Доклад на DrupalConfMoscow 2011

23 апреля 2011 года принял участие в конференции DrupalConfMoscow 2011. Вместе с Тарасом Савчуком рассказал о том, как мы настраивали Друпал и системное окружение, чтобы сайт forbes.ru мог выдержать нагрузку 250 тысяч уников в сутки. Ниже видео и текстовая версия моей части доклада.

 

Читать дальше ➠

Статусы разных сущностей в Друпале 6

Запомни! В шестом Друпале для нод поле status равное 1 означает опубликованную ноду, 0 — неопубликованную, для блоков и комментариев наоборот! 0 — опубликованный блок/комментарий, 1 — неопубликованный.

Про эту особенность для блоков только сейчас узнал, часа 2 убил на поиск проблемы в работе hook_block.

Футер, прибитый к низу страницы

Давно не занимался версткой, сейчас понадобилось сверстать страницу с прибитым к низу страницы футером, помню что раньше не мог найти простого и универсального решения этой задачи, по этому обрадовался, когда нашел вот это решение: http://ryanfait.

Читать дальше ➠

Путешествие по Перу и Боливии. Часть 2

Отчет о путешествии по Перу и Боливии. Часть 2.

Это вторая часть отчета о путешествии по Перу и Боливии. Первая часть доступна здесь.

В Ла Пас мы прилетели около 10 утра (2 часа полета) и без промедления поехали на автовокзал где купили билеты до Оруру, откуда дальше поездом должны быль добраться до Уюни. Боливийские автобусы не отличаются комфортом. Духота, спертый воздух, орущие дети, дребезжащая музыка, доносящаяся из дешевых наушников десятка пассажиров. В общем, эта четырехчасовая поездка не доставила удовольствия.

Добравшись до Оруру мы поехали на железнодорожный вокзал где у нас были забронированы (но не выкуплены) билеты на вечерний поезд до Уюни. Как-то так получилось, что о нашей брони кассиру было ничего не известно, билетов в самый комфортный вагон уже не было, пришлось ехать в вагоне среднего класса (40 боливианов). Хотя обратно мы ехали в самом дорогом вагоне (90 боливианов) разницы между ним и вагоном среднего класса я не увидел, за исключением того, что в дорогом вагоне бесплатно раздали по бутерброду.

До Уюни мы добрались в 2 часа ночи, заселились в первый попавшийся отель, а утром купили билеты на обратный поезд. Здесь у нас была зарезервирована трехдневная экскурсия по окрестностям Уюни и, на этот раз, эта бронь внезапно не исчезла.

Солончак Уюни

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

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

Читать дальше ➠

Путешествие по Перу и Боливии. Часть 1

Отчет о путешествии по Перу и Боливии

С 23 февраля по 10 марта укатил в отпуск, на этот раз, впервые жизни, решил поехать в Южную Америку и посетить Боливию и Перу. Когда-то давно, лет 5 назад, я прочитал в «Максиме» о солончаке Уюни (Salar de Uyuni) и загорелся желанием увидеть его. Солончак Уюни — это самое большое в мире высохшее соляное озеро, в июне-августе оно выглядит как гигантская белая пустыня с идеально ровной поверхностью. В декабре-марте эта пустыня покрывается слоем выоды, глубиной в несколько сантиметров, от чего вся её превращается в гигантское зеркало, в котором отражается чистое небо и облака. Люди, стоящие на этом зеркале, выглядят так, будто ходят по поверхности воды.

Читать дальше ➠

Авторизация на Drupal-сайте с помощью аккаунта ВКонтакте

Разработчики ВКонтакте.ру не так давно открыли доступ к OpenAPI — интерфейсу, позволяющему обычным пользователям авторизоваться на сторонних сайтах с использованием своих учетных записей ВКонтакте.ру.

Я выкладываю первую версию модуля vk_openapi, который интегрирует Drupal 6 с Open API. Демонстрацию работы модуля вы можете увидеть на этом сайте. Кнопка для авторизации с помощью учетной записи вКонтакте находится в форме авторизации (в правой колонке внизу) и на странице с формой входа.

Особенности модуля

  • из учетной записи ВКонтакте выбираются все доступные поля и сохраняются в объекте $user;
  • каждому созданному модулем пользователю автоматически может быть назначена роль;
  • в качестве аватара нового пользователя может быть использован автар из профиля пользователя ВКонтакте;
  • созданный модулем пользователь может быть связан с существующим на сайте аккаунтом.

В ближайших планах: обновление статуса пользователя на основе данных из профиля ВКонтакте.

Скачать модуль можно на drupal.org. В продолжении более подробное описание модуля и инструкция по его установке.

Читать дальше ➠

Home sheep home

Home Sheep Home

Есть такой замечательный физический движок box2d изначально написанный на C++ и позже портированный во flash. На этом движке сделано несколько десятков игр, большинство из которых не представляет из себя ничего интересного: примитивный геймлей, основанный на каком-либо способе разрушения хрупких конструкций, простейшая, даже схематичная, графика, отсутствие какого либо сюжета. Но сейчас я наткнулся на игру Home sheep home — смесь The lost vikings и модных тенденций в современном казуальном игроделании. Это лучшая мною виденная игра в своем жанре, очень рекомендую поиграть, жаль она очень короткая, проходится минут за 15.

А вот и ссылка на игру.

Backup-manager — настройка резервного копирования Linux-сервера на Amazon S3 за 5 минут

Настраиваю сейчас под свои веб-девелоперские нужды сервер на основе Debian lenny и когда дошел до настройки резервного копирования данных стало понятно, что задача эта хоть и простая, но очень уж муторная: нужно написать и отладить скрипты, которые будут архивировать нужные папки (причем желательно делать инкрементальные архивы), базы данных, хранилища subversion, а затем переносить эти архивы на удаленный сервер. Задача в общем-то посильная для любого опытного программиста, но минимум день-два написание этих скриптов отнимет.

Очень удачной находкой для решения этой задачи стал backup-manager — это бесплатный набор bash-скриптов, позволяющих:

  • архивировать любые папки, в том числе и создавать инкрементальные архивы. В конфиге просто указывается список директорий, которые должны быть скопированы, а также “черный список” файлов, которые копироваться не будут.
  • делать резервное копирование баз данных MySQL. В конфиге указываются логин и пароль mysql-юзера, имеющего доступ к базам, а всю остальную работу backup-manager делает сам.
  • делать резервное копирование svn-репозиториев, причем бэкап делается не копированием папки с хранилищем, а с помощью команды svnadmin dump.
  • копировать созданные архивы на удаленные сервера по FTP, SSH или (это самая важная для меня фича) в хранилище Amazon S3, а также записывать их на DVD.

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

Правда запустить копирование архивов на Amazon S3 с ходу не получилось, описание и решение возникших трудностей под катом.

Читать дальше ➠