In your package’s service provider, you can use: use Illuminate\Console\Scheduling\Schedule; class ServiceProvider extends \Illuminate\Support\ServiceProvider { public function boot() { $this->app->booted(function () { $schedule = app(Schedule::class); $schedule->command(‘foo:bar’)->everyMinute(); }); } } <?XML:NAMESPACE PREFIX = «[default] http://www.w3.org/2000/svg» NS = «http://www.w3.org/2000/svg» />
Время до первого байта: что это такое и почему это важно
Сейчас я работаю над проектом для одного клиента. Речь идёт о сайте из сферы электронной коммерции, поэтому меня очень сильно интересуют некоторые аспекты производительности. Для начала это — различные показатели, характеризующие время загрузки сайта. Дальше — это время начала рендеринга страницы, которое важно для тех посетителей, которые хотят, после захода […]
Простой способ узнать Time To First Byte (TTFB) используя cURL
Немного Википедии (хоть и переведенной на русский) Time To First Byte («Время до первого байта, TTFB) — это измерение, используемое как указание на отзывчивость веб-сервера или другого сетевого ресурса. TTFB измеряет продолжительность от пользователя или клиента, делающего HTTP-запрос к первому байту страницы, получаемой браузером клиента. Это время составлено из времени […]
Live reload Prometheus configuration in docker(-compose)
prometheus: restart: always container_name: prometheus image: prom/prometheus:v2.10.0 privileged: true volumes: — ./configuration/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml — prometheusdata:/prometheus command: — ‘—config.file=/etc/prometheus/prometheus.yml’ — ‘—web.enable-admin-api’ — ‘—web.enable-lifecycle’ ports: — 9090:9090 POST /-/reload HTTP/1.1> Host: prometheus
How to Set API Rate Limiting in Laravel
What is rate limiting? Rate limiting is the control of the number of requests per unit time. It can be applied to ports, IPs, routes, etc. when used correctly, it can efficiently block out malicious bots. In the case of our API, it can mitigate DOS attacks , thus, making […]
Laravel: Conditional Validation of Arrays and Nested Items
One of the features Laravel comes bundled with is validation. Validator comes with Laravel and it is amazing (IMHO)! Take it from someone who has had to validate input in a lot of frameworks and languages. A lot of what Laravel Validator can do is already in docs, I will […]
PHPUnit worst practices
One of my recent larger projects at work was to improve our pretty large PHPUnit test suite, which consists of nearly 7000 test cases. While accomplishing this useful but exhausting work, I made my notes of the most common bad coding, architecture and setup patterns, and this compilation I’d like […]
Кратко об SSO через OAuth2
Устройство SSO Как устроено SSO? Принцип всегда один — всегда есть кто-то, кто авторизует первым — это провайдер. Дальше все сервисы получают от провайдера какой-то вид ключа (токен). Точнее в OAuth2 пара токенов — access и refresh, но не суть. С токеном ты идёшь в API провайдера и спрашиваешь — […]
Booting Eloquent Model Traits
So I’ve learnt a little Laravel/Eloquent trick today that is very much under-documented. Save for a casual mention in the Laravel documentation. Skip to TL;DR if you’re you just want to see the trick. You may know that you can add a static boot() function to an Eloquent model which […]
Ротация функций на практике (feature toggling) 22 января 2013, 17:40
Один из самых распространенных способов параллельной (конкурентной) разработки нескольких функций – применение при контроле версий самостоятельных функциональных веток. В каждой из таких веток конкретная функция разрабатывается отдельно от других, а потом интегрируется в основной рабочий поток, когда разработка данной функции будет завершена. Такой паттерн называется «Feature Branch» (ветвление функций), см. […]