GyaanSetu PHP

PHP, Laravel та WordPress.

28 articlesDeep, practical knowledge

Laravel 13 замінює $fillable, $table та $casts нативними атрибутами PHP

Laravel 13 впроваджує вбудовані атрибути PHP для конфігурації моделей, дозволяючи замінити традиційні властивості $table, $fillable та $casts на типізовані анотації на основі рефлексії без порушення роботи існуючого коду.

PHP · 4 min read

Блокуйте wp-cron.php на рівні сервера, щоб заощадити PHP-воркери та уникнути стрибків навантаження на CPU

Параметр DISABLE_WP_CRON = true лише забороняє WordPress виконувати власний loopback-запит; URL-адреса wp-cron.php залишається доступною, що дозволяє зловмисникам здійснювати масовані запити, вичерпуючи PHP-воркери та спричиняючи відмову в обслуговуванні (DoS) на спільних хостингах.

PHP · 4 min read

Розробник Magento скоротив кількість запитів до БД у 300 разів, але товари, яких немає в наявності, зникли

Заміна 300 окремих викликів репозиторію на один запит до колекції дозволила кардинально зменшити кількість запитів, проте вбудований фільтр наявності Magento видалив усі SKU з нульовою кількістю, залишивши покупців із неповним каталогом.

PHP · 3 min read

Як Edge-Side Includes скоротили навантаження на популярну сторінку з 4000 до <50 запитів на хвилину

Команда розділила головну сторінку на три фрагменти — сітку відео, перемикач мов та динамічний хедер — використовуючи значення Varnish TTL (60 с, 24 год та без кешування), видалила cookies з анонімних частин та застосувала сурогатні ключі для миттєвого очищення кешу.

PHP · 3 min read

Відеоплатформа замінює SQLite FTS5 на OpenSearch, щоб у десять разів скоротити кількість порожніх результатів пошуку

Команда залишила SQLite як основне сховище та створила репліку OpenSearch лише для читання з багаторівневою релевантністю та налаштованим нечітким пошуком, що дозволило у десять разів зменшити кількість порожніх результатів, зберігаючи медіанну затримку нижче 28 мс.

PHP · 3 min read

Як подвійний індекс OpenSearch-SQLite врятував користувачів латиниці від порожніх результатів

Завдяки маршрутизації запитів спочатку через нечітке латинське поле OpenSearch та біграмний аналізатор CJK, а потім перемиканню на SQLite FTS5 у разі таймауту, команда знизила рівень порожніх результатів до 2,1%, не перевищуючи ліміт затримки у 20 мс.

PHP · 4 min read

Cloudflare Workers звели навантаження на CPU для створення мініатюр відеосайту до нуля

Перенісши генерацію мініатюр на Cloudflare Workers, платформа для хостингу відео повністю усунула навантаження на обробку зображень на своїх основних серверах, досягла 96% показника влучання в кеш на периферії та забезпечила стабільну швидкість відповіді із зображеннями менше ніж за секунду по всьому світу.

PHP · 3 min read

Коли люди чують слово «аудит», вони зазвичай уявляють бухгалтерів, електронні таблиці та податковий сезон. У програмному забезпеченні аудит

Коли люди чують слово «аудит», вони зазвичай уявляють бухгалтерів, електронні таблиці та податковий сезон. У програмному забезпеченні аудит — це зовсім інша дисципліна. Це менше про балан…

PHP · 4 min read

Ваш file exists() насправді є мережевим викликом

Ваш file exists() насправді є мережевим викликом. Ви пишете цей рядок тисячі разів: if ( file exists( $path ) ) { Це здається безпечним. Це здається швидким. Але якщо $path вказує на S3-бакет…

PHP · 2 min read

PHP Adds Native Polling API, Giving Fibers OS-Level Speed

The newly merged Polling API wraps epoll, kqueue and IOCP, letting the event loop resume fibers with a single system call. Benchmarks show concurrency overhead drops to zero and CPU usage stays flat even with dozens of streams.

PHP · 3 min read

Optistream об'єднує 12 плагінів WordPress в один без втрати SEO на 1000 сторінках

Команда створила крихітний завантажувач, ізолювала весь CSS, залишила мета-ключі без змін і перевіряла кожен URL за суворим чек-листом після кожної заміни модуля — що гарантувало відсутність падіння статусів 200, битих посилань або збоїв верстки.

PHP · 4 min read