Как стать автором
Обновить
0

Drupal *

Система управления сайтом

Сначала показывать
Порог рейтинга
Уровень сложности

Сравнение скорости исполнения кода Drupal для PHP 5.3-5.6 и 7.0. «Битва оптимизаторов кода» apc vs xcache vs opcache

Время на прочтение 10 мин
Количество просмотров 37K




В продолжение статьи:

Ускорение и оптимизация PHP-сайта. Какие технологии стоит выбирать при настройке сервера под PHP




В отличии от предыдущего материала, в этой статье сделан упор на сравнение скорости отклика и интерпретации кода для различных версий PHP, включая PHP 7 beta3.

Для ранних версий PHP, проведено тестирование между оптимизаторами кода apc, xcache и opcaсhe.
Эта статья не содержит тестов на производительность, таких как нагрузочные тесты ab и siege. Возможно, об этом я напишу в одной из следующих статей.
В данном случае, меня не интересует сколько страниц за секунду способна сгенерировать та или иная версия php-интерпретатора, скорее то, с какой скоростью она сгенерирует мне страницу и с какой задержкой.
В данном случае разница в том, что тесты производительности замеряют отношение скорости интерпретатора к общим ресурсам сервера, а так же подготовленности других связанных компонентов web-системы к работе на повышенных нагрузках.
Остановимся на скорости и отклике. Очевидно что производительность зависит от скорости, но высокая скорость не может гарантировать высокую производительность. Это, возможно, связанно с тем, что недостаточно хорошо настроен web-сервер или база данных, а также с какими-то не было ограничениями, например сетевого стека.
Что бы не заниматься попыткой объять необъятное, мы просто замерим скорость и отклик работы интерпретаторов php, на мощном сервере без нагрузки, с одинаковыми конфигурациями web-сервера, базы данных и операционной системы для всех испытуемых. Используем конфигурацию php-fpm + nginx. База данных MariaDB. Все технические детали скрыты под спойлером ниже.

Читать дальше →
Всего голосов 16: ↑13 и ↓3 +10
Комментарии 41

Ускорение и оптимизация PHP-сайта. Какие технологии стоит выбирать при настройке сервера под PHP

Время на прочтение 7 мин
Количество просмотров 55K


Эта статья поможет ответить на вопросы владельцев, разработчиков и системных администраторов PHP-сайтов:



  • Как оптимизировать сайт и ускорить его работу?
  • С какой скоростью будет и может работать сайт, в соответствии с теми технологиями на которых он будет запущен?
  • Какие технологии следует использовать настраивая сервер или VPS?


Типичная проблема:
В какой-то момент сайт начинает открываться и работать слишком медленно. Бывает, что хостинговая компания блокирует сайт за превышение нагрузки или перерасход ресурсов. Что же делать в такой ситуации?

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

И если говорить о серверах для PHP, то такой проблемой является способ исполнения php кода, ровно как и другие значимые настройки окружения на сервере.
Не зависимо от того, есть ли проблема в вашем коде или её нет, высокая у вас посещаемость или нет, от настроек сервера зависит очень многое. Что бы все сказанное не звучало пустыми словами и была написана эта статья.

В этом обзоре я протестирую только что установленный сайт на одном из самых распространённых движков управления контентом Drupal 7.33.

Для теста выбрана лишь одна составляющая php-хостинга. Мы будем тестировать web-серверы Nginx и Apache2, модули mod_php и php-fpm, версии php php53 и php56, посмотрим, как влияют оптимизаторы apc и opcache на скорость работы сайта.

Читать дальше →
Всего голосов 29: ↑20 и ↓9 +11
Комментарии 59

Continuous Success и почему об этом нельзя забывать при разработке проекта (на примере Drupal)

Время на прочтение 5 мин
Количество просмотров 3.8K
Ваша цель — это надежный и дееспособный продукт на Друпале (да, впрочем, на чем угодно, но Друпал мне ближе по духу, посему буду концентрировать примеры на нем)?

Если да, то длинный и тернистый путь непрерывной интеграции (Continuous Integration), непрерывной инспекции и непрерывного фидбека — это ваш путь. Как Вы могли догадаться, путь тоже непрерывен.
Читать дальше →
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 4

Дайджест интересных материалов из мира Drupal #11

Время на прочтение 5 мин
Количество просмотров 7.2K
Всем привет!

Это одиннадцатый выпуск Drupal-дайджеста на хабре. Мы собираем полезные статьи и свежие новости из мира Drupal и делимся с вами раз в месяц.



По-русски


Наша любимая рубрика — друпал в рунете.

  1. «Вставка изображений в CKEditor» — подход, который использует @xandeadx, постоянный участник нашего дайджеста.
  2. silrage написал на хабр, как можно использовать Rules, один из столпов друпала, для ограничения доступа к материалу. И хотя поначалу Rules может показаться сложным и громоздким решением, впоследствии изучение этого инструмента окупится сполна.
  3. Автор блога tlito.ru изучает друпал в прямом эфире, записывая свои наблюдения в блог. Вот пара заметок для примера: блокирование пользователей по IP, перемещение модулей в папку sites/all/modules.
  4. Андрей Малеев написал подробно о токенах: зачем нужны, как использовать и расширять.
  5. Разработчики dru.io ведут всю разработку сайта сообщества открыто на гитхабе и делятся своим опытом с нами. Александр Дубовской про то, как деплоить Views без Features.
  6. Там же Chi анонсировал легкий генератор кода для Drupal.
  7. И последнее с Dru.io на сегодня: Drupal foreign key на уровне БД.
  8. Вышла вторая часть большого сравнения производительности MySQL и PostgeSQL. Как всегда в таких вопросах, однозначного ответа нет. Автор, похоже, остановился на постгрес.

Читать дальше →
Всего голосов 15: ↑10 и ↓5 +5
Комментарии 4

Истории

Даем право выбора доступа к странице с помощью Rules

Время на прочтение 3 мин
Количество просмотров 6.7K
При создании новой странички или ноды на Drupal хотелось бы ограничить доступ к ней. Речь пойдет о наделении такой возможности с помощью модуля Rules.

Чекбоксы для задания доступа к странице на Drupal
Читать дальше →
Всего голосов 15: ↑9 и ↓6 +3
Комментарии 3

Дайджест интересных материалов из мира Drupal #10

Время на прочтение 7 мин
Количество просмотров 9.4K
Всем привет!

Безумно рады представить вам десятый, юбилейный, выпуск Drupal-дайджеста! За последний месяц было обработано порядка 100 различных статей, ссылок и видео, — все это, чтобы сэкономить нам всем время на поиск информации об этой замечательной системе. Очень надеемся, что вам понравится.

Читать дальше →
Всего голосов 15: ↑11 и ↓4 +7
Комментарии 13

Дайджест интересных материалов из мира Drupal #9

Время на прочтение 6 мин
Количество просмотров 6.6K
Всем привет!
За месяц у нас накопилось много интересных ссылок для вас. Встречайте девятый выпуск!


По-русски


Весна в русском Drupal-сообществе прошла плодотворно. Ловите десять ссылок на отличные статьи на русском:

  1. В блоге angarsky.ru вышла большая техническая статья «Создание ноды через кастомную форму с использованием модального окна CTools». И хотя этот материал далеко не для новичков, мы с честью открываем им дайджест! Всё очень подробно и грамотно рассказано и показано на реальном коде.
  2. Немного хардкора от того же автора: «Получить программно список обновлений для БД». Эта заметка демонстрирует преимущества открытого фреймфорка Drupal — при желании вы можете сделать всё, что угодно.
  3. Ещё одна практическая статья «Как добавить форму редактирования поля сущности к своей форме» вышла в блоге drupaler.by. Кстати, у Ctools и для полей есть удобные хелперы, чтобы не разбираться с подводными камнями Field API в одиночестве.
  4. Куда ж без андеда и его неповторимого краткого стиля изложения. Модуль Language Domains будем иметь ввиду.
  5. Хотите сделать свой rapidshare c таймером перед скачиванием? Павел Катаев поделился своим модулем Delay Download для этой цели, правда пока что модуль не доступен с drupal.org.
  6. И ещё код: «Как программно редактировать профиль пользователя».
  7. Пётр Лозовицкий рассказал, как переводил сайт с MySQL на PostgreSQL.
  8. Новенькое на сайтах сообщества. На drupal.ru читайте про настройку сервера на основе конфига nginx-джедая Perusio.
  9. На dru.io вышла заметка про любимые Drush-команды Василия Устинова.
  10. Ребята из DrupalSPB.org провели очередной митап (презентации смотрите на страницах докладов) и Global Training Day, за что им большое уважение!

Читать дальше →
Всего голосов 13: ↑10 и ↓3 +7
Комментарии 9

Как быстро собрать мейлер для колл-центра

Время на прочтение 3 мин
Количество просмотров 11K
Мы организуем конференцию для веб-разработчиков и решили обзвонить Челябинские веб-студии. Нужно было как-то сразу после звонка отправить красивое письмо. Также важно получать отчеты о доставке писем и “кликабельности” ссылок (первое на случай опечатки, а второе для оценки затеи). Да, и это все нужно “еще вчера”, а программисты не доступны.

Челлендж принят! И элегантное решение уже под катом…
Читать дальше →
Всего голосов 22: ↑15 и ↓7 +8
Комментарии 8

Дайджест интересных материалов из мира Drupal #8

Время на прочтение 5 мин
Количество просмотров 8.6K
Всем привет!

Самое интересное и полезное из мира Drupal за прошедшие 3 недели в нашем восьмом выпуске.

image
Читать дальше →
Всего голосов 22: ↑17 и ↓5 +12
Комментарии 1

Дайджест интересных материалов из мира Drupal #7

Время на прочтение 5 мин
Количество просмотров 6.9K
Всем привет!

Самое интересное и полезное из мира Drupal за прошедшие 3 недели в нашем седьмом выпуске.

image

По-русски


Начнём с материалов в рунете:

  1. По традиции несколько полезных сниппетов от xandeadx: «Оплата доступа к ноде с помощью Робокассы», «Taxonomy Menu и названия пунктов меню из поля термина», «Программно авторизовать пользователя по uid».
  2. Павла Китаева не отпускает Form API :) Читайте его статью «Создание новых типов элементов формы HTML5».
  3. Макс Корейченко размышляет на тему производительности и делится своим подходом к аяксификации.
  4. «Такой замечательный баг нашел, или это фича?» — пишет автор блога «Make You Live Better | Сексуальные опыты с Drupal CMF» после ночи с модулем Context :)
  5. @kalabro рассказала, как можно подключать PHP-файлы в своём модуле.

Читать дальше →
Всего голосов 11: ↑8 и ↓3 +5
Комментарии 4

Дайджест интересных материалов из мира Drupal #6

Время на прочтение 6 мин
Количество просмотров 8.7K
Всем привет!

Самое интересное и полезное из мира Drupal за прошедшие 3 недели.


Читать дальше →
Всего голосов 13: ↑10 и ↓3 +7
Комментарии 1

Ставим Drupal 7.x + модули + локализацию за несколько минут

Время на прочтение 3 мин
Количество просмотров 23K
Добрый день!
За последнее время всё чаще и чаще выбор платформы под проекты клиентов падает на всеми любимый Drupal 7. В связи с этим приходится чуть-ли не каждый день повторять одну и туже серию операций подготовки «почвы» под будущий сайт:
1) Загрузка Drupal 7.x на сервер по FTP
2) Созданием базы данных
3) Установка Drupal через www.domain.ru/install.php
4) Установка всех необходимых модулей по их URL
5) Добавление русского языка и обновление всех переводов

Всё это отнимает значительное количество времени и в итоге было решено упростить данный процесс посредством установки Drupal полностью через командную строку.
Читать дальше →
Всего голосов 13: ↑10 и ↓3 +7
Комментарии 14

Дайджест интересных материалов из мира Drupal #5

Время на прочтение 3 мин
Количество просмотров 6.4K
В этот замечательный понедельник предлагаем вам подборку свежих статей о Drupal.



По-русски


По традиции начнём с материалов на русском языке:

  1. Павел Китаев написал туториал по Form API в четырёх частях.
  2. В комментариях к прошлому дайджесту всплыла тема best/worst-практик при работе с Drupal. В результате имеем как минимум два новых материала на эту тему: Мои Best Practices от @xandeadx и «Самые распространенные ошибки в Drupal разработке» от holyorb2.
  3. Посмотреть примеры использования drupal_http_request() можно в блоге drup.by.
  4. JOIN таблицы в своем views field handler-е — небольшой Views-сниппет.
  5. Александр Пожарский рассказал, как создать свой CKEditor-плагин в Drupal 8 на примере кнопки вставки исходного кода.
  6. Как добавить в BODY класс и другие волнующие вас вопросы можно обсудить на dru.io.
  7. Прошли DrupalCafe в Москве (фото и видео) и в Новосибирске (материалы пока недоступны). Анонсированы кафе в Омске и Харькове. Присоединяйтесь к сообществу!

Читать дальше →
Всего голосов 22: ↑17 и ↓5 +12
Комментарии 3

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн

Дайджест интересных материалов из мира Drupal #4

Время на прочтение 4 мин
Количество просмотров 9.1K
Всем привет!

Самое интересное и полезное из мира Drupal за прошедшие 3 недели.


Читать дальше →
Всего голосов 20: ↑16 и ↓4 +12
Комментарии 13

Управление конфигурациями в Drupal 8, обзор для разработчиков

Время на прочтение 7 мин
Количество просмотров 16K
Drupal 8 приносит с собой множество улучшений и моё любимое — управление конфигурациями. Я попытаюсь сделать быстрый обзор на эту тему.

Пожалуйста помните, что этот обзор был написан во время релиза Drupal 8 beta 3. Кое-что могло измениться.

Типы информации в Drupal 8


Согласно официальной документации, мы располагаем четырьмя типами информации:
  1. Контент (content)
  2. Сессия (session)
  3. Состояние (state)
  4. Конфигурация (configuration)

Хорошая новость состоит в том, что почти всё кроме контента — это конфигурации: настройки модулей, их состояния, блоки, расположение блоков, типы контента, поля, режимы отображения, и так далее. Вся эта информация обрабатывается во время импорта конфигураций. Это делает процесс деплоя очень простым.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 3

Дайджест интересных материалов из мира Drupal #3

Время на прочтение 3 мин
Количество просмотров 7.9K
Всем привет!

Мы отобрали для вас самое интересное и полезное из мира Drupal за первые недели 2015 года.

Druplicon

По-русски



  1. Во-первых, в тестовом режиме запустилась новая площадка сообщества DrupalifeCommunity. Слово автору:
    Сразу скажу о судьбе проекта. Им я не претендую заменить Drupal.ru, это совершенно отдельное и самостоятельное начинание. Скажем так, альтернативное сообщество, как каким-то пытался стать DrupalSN.

    На новой площадке уже замечено несколько друпал-гуру, а это хороший знак :)
  2. Чуть ли не первая серьёзная статья на русском, в которой одновременно встречаются слова Drupal и Postgres: «Тестирование производительности Drupal: MySQL vs PostgreSQL часть 1». Очень ждём следующих частей!
  3. Продолжая тему баз данных, Роман Агабеков подробно пишет про репликацию master-slave MySQL.
  4. Как же без Panels: в этот раз «Добавляем поддержку Token'ов в настройки Panel Pane».
  5. Рубрика «Антиквариат»: код либрусека пятилетней выдержки.

Читать дальше →
Всего голосов 15: ↑12 и ↓3 +9
Комментарии 21

Drupal — выбор бизнес консультанта

Время на прочтение 9 мин
Количество просмотров 11K
В этой статье как и обящал в 7 лучших инструментов для решения бизнес-задач от бизнес консультанта дженералиста я расскажу почему я выбрал Drupal и чем же он так хорош. Статья написана по мотивам моего доклада на Drupalcamp Moscow 2014.
Моя профессия бизнес-консультант среднего и малого бизнеса. Я работаю со всей компанией в целом, то есть практически со всеми ее частями: веб сайты, оптимизация, 1с, CRM. Все, что я расскажу со своих слов, это мой опыт, который был мной приобретен путем проб и ошибок. Я не боюсь говорить о своих промахах, так как без них не было бы опыта.

Почему я использую drupal для своих проектов?


Читать дальше →
Всего голосов 40: ↑22 и ↓18 +4
Комментарии 30

Дайджест интересных материалов из мира Drupal #2

Время на прочтение 6 мин
Количество просмотров 9.8K
Всем привет!

В этом выпуске вас ждут более 30 новостей, материалов, интересных модулей — всё самое интересное и свежее из мира Drupal.


Читать дальше →
Всего голосов 32: ↑24 и ↓8 +16
Комментарии 10

Несколько советов по ускорению Drupal

Время на прочтение 5 мин
Количество просмотров 10K
Drupal постоянно ругают за его медлительность, за огромное количество запросов к базе данных и неповоротливость. Наиболее часто это решается с помощью Memcached или Varnish. В этой статье я хотел бы добавить еще несколько советов, использование которых позволит не сделать Drupal еще медленее. Тех, кому это интересно, прошу пожаловать под кат.
Читать дальше →
Всего голосов 16: ↑10 и ↓6 +4
Комментарии 3

Былина о том, как я Drupal и Яндекс.ПДД связывал

Время на прочтение 10 мин
Количество просмотров 10K
Некоторое время назад у меня была идея сделать городской сайт (естественно, очередной) для одного небольшого городка на базе Drupal. Как раз незадолго до этого Яндекс расширил функционал своей Почты для доменов и добавил возможность управлять ящиками через API. И в голове зародилась мысль: а почему бы и нет? Почему бы не предоставить пользователям возможность одновременно с регистрацией на городском портале получать почтовый ящик в городском домене? Сама по себе идея, конечно, не удивительна, однако готовых решений не было. Сайт я так и не запустил, а коду без дела лежать грех.

Как известно, Drupal позиционируется как CMS, ориентированная разработчиков и позволяющая благодаря обширной API разработать хоть систему для управления лунной базой. Я не буду вдаваться в своём посте в её восхваление и самые начальные основы разработки модулей под Drupal, однако начинающие Drupal-разработчики наверняка сочтут материал полезным, а опытным буду благодарен за советы и рекомендации.

Читать дальше →
Всего голосов 25: ↑18 и ↓7 +11
Комментарии 16

Вклад авторов