How to Inject New Docker Tag into Docker Compose File

If you follow best practices then you’re tagging each of your Docker images with a unique tag or version whenever it gets updated. These tags might be the git commit hash, a CI/CD Build number or any other value that is usually generated automatically during your build process. You might […]

Laravel – Custom pivot model in Eloquent

Sometimes you may wish to use custom pivot model when working with many-to-many relationships in Eloquent, in order to add some behaviour on top of the core features. There are a few things to consider before you start. First things first: belongsToMany relationship can presented as double hasMany + belongsTo […]

Сине-зеленый деплой

Я и мои коллеги всегда склоняем своих клиентов полностью автоматизировать процесс деплоя. Автоматизация помогает сократить количество конфликтов и задержек, которые возникают в процессе между «завершением» работы над программой и введением в эксплуатацию. Дэйв Фарли (Dave Farley) и Джез Хамбл (Jez Humble) заканчивают книгу «Непрерывная доставка» (Continuous Delivery) на эту тему. […]

Task Scheduling in Packages

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 […]