.
29 апреля 2016

Отладка в Битрикс

https://marketplace.1c-bitrix.ru/solutions/scrollup.bxd/

Для установки решения на демо сайт — сначала ставим его на сайт с лицензией, далее копируем модуль в демо сайт — после чего активируем в админке!
Папка модуля /bitrix/modules/scrollup.bxd/

Отличное бесплатное решение для отладки в Битрикс (далее текст с Маркета).

Описание решения
Решение позволяет выводить отладочную информацию в удобном виде.

1. Вывод в виде разворачивающегося дерева с подсветкой элементов, выводом типа и размера элемента.

Для этого достаточно в любом месте кода вызвать функцию __ () и передать ей нужную переменную для вывода.
Например: __ ($arResult);

По-умолчанию, вывод будет происходить до вывода информации всего сайта.

Если второй параметр задать true, то вывод будет там, где вы вызывали: __ ($arResult, true);

2. Вывод в консоль браузера.

Для вывода в консоль нужно вызвать функцию _c () и передать ей нужные данные для вывода.
Например: _c ($arResult);

3. Иногда нужно посмотреть какие-то данные, но вывести их на экран нельзя.
Для этого есть третий параметр у функции __ ()
Если вызвать функцию, например, вот так: __ ($arResult, false, true);, то результат сохранится в лог файл. За это отвечает третий параметр.
При вызове функции _l (); будет выводится результат из него в таком же удобном виде дерева. Сохраняется только один последний вызов.

Еще описание в моем блоге: http://olegorestov.ru/this/bitrix_debug_module/

Хотите что-то добавить, изменить или улучшить? https://github.com/ancorp/bitrix-debug
Жду ваших pull реквестов.

Post to Twitter ReTweet

рубрики: Bitrix, Полезности | Комментарии (0)

28 апреля 2016

Кэширование меню в Битрикс

Хочу поделиться довольно интересным наблюдением на счёт кэширования в Битриксе!
Собственно, на одном из поддерживаемых мной проектов в менюшке должен появляться новый пункт в зависимости от ... (от чего именно не особо важно)
Факт в том, что кэширование об этом не знает :) и пункт не появлялся пока кэш не обновится.
Пришлось кэш вырубить и ради интереса померил я время формирования меню без кэша
bitrix:menu: 0.003 с; Запросов: 1 (0.0004 с)
Довольно быстро!
Иду назад — врубаю кэш, делаю замер — получаю
bitrix:menu: 0.0032 с
обновляю
bitrix:menu: 0.0028 с
со сбросом кэша доходило до
bitrix:menu: 0.0063 с; Запросов: 2 (0.0012 с)

Вывод — для простых компонент, не делающих запросы к БД проще обходиться вообще без кэша (т.к. сам механизм кэширования так же создает какую то минимальную нагрузку).

Post to Twitter ReTweet

рубрики: Bitrix | Комментарии (0)

19 апреля 2016

Экзамен Битрикс «Интеграция дизайна и настройка платформы» сдан!



Ура, наконец-то проверили мой экзамен (почти 10 дней прошло) — жестоко конечно, но я был уверен в результатах!
Хотя сдал не идеально — косячки были ... нужно было перепроверить раза на три, время было (я за 2.5 часа управился).
Собственно, сертификатик


битрикс экзамен Интеграция дизайна и настройка платформы 700


Что позволило подтвердить партнерский статус «Сертифицированный партнер»


сертифицированный партнер 300


Ну и ещё один баннер «до кучи» :)


Битрикс программа качества 350

Post to Twitter ReTweet

рубрики: Bitrix | Комментарии (0)

17 апреля 2016

Я.Вембастер Beta — обратная связь «Я все исправил»

Как я уже писал ранее один из моих сайтов поймал АГС, ссылки то я почистил, далее встал вопрос как бы ускорить рассмотрение Яндексом обновленной версии сайта?
В бета версии Я.Вебмастер я нашел, что хотел — тут в проекте сайта кнопка обратной связи присутствует кнопка «Я все исправил». Которую я конечно нажал — теперь вот жду, и надеюсь, что кнопка действительно работает :)

webmaster

P.S.
Тема работает — уже 21 апреля АГС был снят!

Post to Twitter ReTweet

рубрики: SEO, Полезности | Комментарии (1)

16 апреля 2016

CSS эффект — увеличение с поворотом

Просто и красиво :)

weather

img.gt:hover {
transform: scale(1.15) rotate(5deg);
}
img.gt {
box-shadow: 0 0 1px rgba(0, 0, 0, 0);
display: inline-block;
transform: translateZ(0px);
transition-duration: 0.3s;
transition-property: transform;
}

Post to Twitter ReTweet

рубрики: Вёрстка, Полезности | Комментарии (0)

15 апреля 2016

Свои переменные в почтовых шаблонах Битрикса

Уже 3й пост за сегодня :) Долго не писал — был занят над проектом, да и в офлайне дела какие то всё появлялись
сейчас чуток освободился — и так сказать «всё что накопилось» ...

По сабжу довольно много информации в сети, даже не один внешний модуль лежит в маркете, но я всё же хочу поделиться своим опытом в данном вопросе т.к. мне показался самым простым и эффективным! а к чужим внешним модулям я вообще с опаской отношусь — мало ли чего там ...

Итак — правим init.php
Публикую чистый код, т.к. всё предельно понято

AddEventHandler('main', 'OnBeforeEventSend', Array('myClass', 'OnBeforeEventSendHander'));
class myClass {
function OnBeforeEventSendHander(&$arFields, &$arTemplate) {
//получим сообщение
$mess = $arTemplate["MESSAGE"];
if(strpos($mess,'#MY_VARIABLE')) {
$arFields['MY_VARIABLE'] = "значение своей переменной, собственно при доступном массиве arFields - можно вытащить, что угодно";
}
}
}

Post to Twitter ReTweet

рубрики: Bitrix, Полезности, Программирование | Комментарии (0)

15 апреля 2016

Настройка кэширования в Битриксе — что если не работает ?

Случай конечно можно сказать уникальный!
Но тем не менее решил я поделиться и таким опытом.

Обращаются ко мне с определённым ТЗ (не имеет отношение к сабжу) ... и я в процессе ознакомления с сайтом, замечаю приличные тормоза (до 10 сек) при открытии страниц.
А конктретно — страничка с компонентом видео потока ютуба. Посмотрел код — вызывается компонент step2use:youtube.subscribe.
Поковырял — смысл простой — тащит канал с ютуба, парсит, результат кэширует и выводит.
Ладно, 10 секунд для запроса канала с ютуба я ещё понимаю, но почему при повторномо открытии такие тормоза?
Проверил — кэш компонента включен! Чудеса!
Тут к бабке не ходи — кэш глючит!
Накинул самый простой скрипт для проверки кэша
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
$cache = new CPHPCache();
if($cache->InitCache(3600, '12356356gt' , '/' )) {
echo "cache";
$res = $cache->GetVars();
$arResult = $res['arResult'];
} elseif ($cache->StartDataCache()) {
echo "no cache";
$arResult = array(1,2,3,4,5);
$cache->EndDataCache(array("arResult"=>$arResult));
}
?>

и тот хоть ты тресни выводит «no cache» — что говорит о том, что кэш не работает!

Далее посмотрел в dbconn.php и .setting.php — кэш настроен на memcashed (кэширование в памяти)
Перенастроил на файловый кеш — скрипт отработал и всё залетало!
Страничка стала генерироваться за 0.2 секунды ! ускорение в 50 раз!

Но всё же решил кэш настроить как и задумано на memcached!
дал рутом
#service restart memcashed
а самого сервиса то и нет! :)

Ну далее, всё как в книжке
# yum -y install memcached

настройки я сделал как в статье (чуть увеличил)
в файле /etc/sysconfig/memcached

MAXCONN = «1024» — количество одновременных подключений (по умолчанию 1024) — больше думаю не понадобится
CACHESIZE="2048" — объем выделяемой памяти для кеша (по умолчанию 64MB) — я дал 2 гига
USER="bitrix" — пользователь, от которого будет запущен memcache
OPTIONS="-t 16 -s /tmp/memcached.sock" — количество потоков и путь к сокету — у меня один домен на сервер, можно и через сокет — быстрее вроде

# /etc/init.d/memcached start
# chkconfig memcached on

ВСЕ залетало!
Страничка с компонентом место 10 секунд стала открываться за 0.1 секунду — т.е. прирост в скорости в 100 раз! :)

После экспериментов с кэшами я подумал, что не помешало бы сделаать полную очистку кэша (чтоб все с нуля и в память! и лишнее место на диске почистить)
Запустил чистку и ... сервер встал наглухо!
Смотрю top — 99% на mysqld
Поставил mytop — смотрю там удаление из таблицы b_cache_tag с параметром каким то (уже не помню)
Зашел в phpmyadmin — и охренел, таблица b_cache_tag — почти 30 миллионов записей и под 4 гигабайта размером!
Что это за наследие «прошлого» я разбираться не стал — очистил всю табличку
TRUNCATE TABLE b_cache_tag (таблица для управляемого кэша, а я все равно весь кэш чистить собрался)
и далее уже ещё раз из панели «очистить весь кэш» — на этот раз кэш нормально очистился, и теперь сайт живёт совсем другой жизнью :)

Post to Twitter ReTweet

рубрики: Bitrix, Администрирование, Полезности | Комментарии (0)

Яндекс.Метрика