Size: a a a

2020 August 13

AP

Andrey Postnikov in Drupal RU
alex doma
но ведь нет волшебной таблетки)
Волшебной нет, но есть правило - если нет нужды в высокоточном времени, то используй время, которое пришло в request
источник

AP

Andrey Postnikov in Drupal RU
Comrade Gagarin
т.е. ты придумал это всё прямо на ходу?
источник

ИЛ

Иван Лещёв in Drupal RU
ассетпакаджист ещё наставит зависимостей из npm
источник

ИЛ

Иван Лещёв in Drupal RU
уж лучше зип с гиты
источник

AP

Andrey Postnikov in Drupal RU
Иван Лещёв
ассетпакаджист ещё наставит зависимостей из npm
И тестов с демо данными
источник

C

Comrade Gagarin in Drupal RU
PHP 5.3 отличный аргумент 😂
источник

ИЛ

Иван Лещёв in Drupal RU
ну если они в репе есть, то чито поделать
источник

AP

Andrey Postnikov in Drupal RU
Comrade Gagarin
PHP 5.3 отличный аргумент 😂
Это пример как тебе получить эти цифры на своём железе
источник

C

Comrade Gagarin in Drupal RU
use Drupal\Component\Utility\Timer;

Timer::start('1');
date('Y');
debug(Timer::read('1') . ' ms');

Timer::start('2');
$timestamp = \Drupal::time()->getRequestTime();
\Drupal::service('date.formatter')->format($timestamp, 'custom', 'Y');
debug(Timer::read('2') . ' ms');
источник

C

Comrade Gagarin in Drupal RU
1 = 0.01ms, 2 = 0.2ms
источник

AP

Andrey Postnikov in Drupal RU
Иван Лещёв
ну если они в репе есть, то чито поделать
источник

C

Comrade Gagarin in Drupal RU
сервис на порядок медленнее
источник

AP

Andrey Postnikov in Drupal RU
Comrade Gagarin
сервис на порядок медленнее
Такие вещи не измеряются синтетикой без конкуренции, и для их отлова нужен strace
источник

C

Comrade Gagarin in Drupal RU
да да, конечно
источник

C

Comrade Gagarin in Drupal RU
strace то покажет, что нативная php фунция на порядок медленнее двух сервисов
источник

AP

Andrey Postnikov in Drupal RU
Comrade Gagarin
use Drupal\Component\Utility\Timer;

Timer::start('1');
date('Y');
debug(Timer::read('1') . ' ms');

Timer::start('2');
$timestamp = \Drupal::time()->getRequestTime();
\Drupal::service('date.formatter')->format($timestamp, 'custom', 'Y');
debug(Timer::read('2') . ' ms');
А ты не пробовал дергать \Drupal:: в цикле? Контейнер тоже цену имеет
источник

AP

Andrey Postnikov in Drupal RU
Ты измеряешь вывод или скорост работы контейнера?
источник

C

Comrade Gagarin in Drupal RU
use Drupal\Component\Utility\Timer;

Timer::start('1');
for ($i = 0; $i < 1000; $i++) {
 date('Y');
}
echo Timer::read('1') . ' ms';

Timer::start('2');
$timestamp = \Drupal::time()->getRequestTime();
$date_formatter = \Drupal::service('date.formatter');
for ($i = 0; $i < 1000; $i++) {
 $date_formatter->format($timestamp, 'custom', 'Y');
}
echo Timer::read('2') . ' ms';
источник

C

Comrade Gagarin in Drupal RU
1 = 0.66 ms, 2 = 5.15 ms
источник

AP

Andrey Postnikov in Drupal RU
А теперь запусти это параллельно в 20 потоков
источник