AnyCable: Бродкастер для Laravel

Перекладено ШІ
Оригінал: Laravel News
Оновлено: 17 червня, 2025
Запроваджуючи будь-яке нове рішення для вашого Laravel-додатку, ви, напевно, замислюєтеся про продуктивність і надійність. Відкрийте для себе AnyCable — потужний сервер, який забезпечує реальний обмін даними без необхідності змінювати клієнтський код, і дізнайтеся, чому ця розробка стає все популярнішою

AnyCable — це універсальний сервер для веб-додатків, який забезпечує високу продуктивність і надійність для ваших функцій у режимі реального часу. Спочатку він був розроблений для екосистеми Rails, але команда проєкту тепер презентувала адаптер для Laravel.

Laravel-бродкастер дозволяє вам використовувати AnyCable як просту заміну для Reverb, Pusher або інших сервісів, що підтримуються Laravel Echo. Це означає, що вам не потрібно вносити зміни на стороні клієнта; достатньо оновити конфігурацію сервера та запустити сервер AnyCable.

Згідно з командою AnyCable:

Це дружнє рукопотискання з екосистеми Rails, яке повертає любов після того, як Inertia.js прийшла з Laravel до Rails. Давайте продовжимо будувати мости!

# Основні особливості

Часто команда AnyCable отримує запитання, чому варто вибрати AnyCable замість Reverb чи Pusher, і їхня відповідь проста:

«Це перевірений часом сервер у реальному часі, який використовувався у виробництві на великій масштабі протягом багатьох років. Він має широкий спектр функцій (надійність, підтримка різних протоколів, інструменти спостереження тощо) і безкоштовний у використанні.»

# Встановлення

Ви можете встановити пакет через Composer:

composer require anycable/laravel-broadcaster

Потім налаштуйте додаток, щоб використовувати драйвер anycable, додавши сервіс-провайдер AnyCable до файлу bootstrap/providers.php:

<?php
 
return [
    App\Providers\AppServiceProvider::class,
    // ...
    AnyCable\Laravel\Providers\AnyCableBroadcastServiceProvider::class,
];

Далі зареєструйте драйвер anycable у файлі config/broadcasting.php:

'anycable' => [
    'driver' => 'anycable',
],

Ваш код на стороні клієнта залишиться таким же, як і при налаштуванні Reverb або Pusher.

Нарешті, запустіть сервер AnyCable:

php artisan anycable:server

Примітка: Команда автоматично завантажить двійковий файл AnyCable (якщо це необхідно).

Примітка: ця функція на момент написання знаходиться на стадії попереднього перегляду і має кілька обмежень. Проте команда AnyCable запрошує розробників випробувати її та надати зворотний зв'язок.

Команда AnyCable створила демонстраційний додаток Laravel, який показує, як використовувати AnyCable як бродкастер і бекенд Echo.

Дізнайтеся більше про цей пакет і перегляньте вихідний код на GitHub.