TGViewer
Пых Пых @phpyh · 7.87K subscribers
Post #784 14.1K
Thesis Amqp 1.0.0

Многие заметили, что в проекте Thesis уже несколько месяцев подряд происходит какая-то движуха. Если вкратце, мы с Вадимом решили под этим именем выпустить набор современных асинхронных компонентов для PHP, а в будущем, вероятно, и свой фреймворк.

Основной фокус на ближайшее время — реализация недостающих в экосистеме неблокирующих драйверов для эффективного взаимодействия с инфраструктурой (в планах NATS, Kafka, gRPC, Cassandra, YDB).

Сегодня мы рады анонсировать стабильный, готовый к продакшну релиз пакета thesis/amqp:
• под капотом файберы и AMPHP 3, так что клиент можно использовать как в асинхронных, так и синхронных рантаймах,
• API для работы с подтверждениями в режиме publisher confirms,
• API для работы с возвратами при отправке сообщений с флагом mandatory,
• API итераторов для упрощённого чтения сообщений из очереди,
• API публикации и получения сообщений эффективными батчами (меньше вызовов, потенциально умещаем несколько фреймов в 1 TCP-пакет),
• встроенная поддержка RPC,
• гибкая конфигурация и хорошо типизированный код.


$client = new Client(Config::default());

$channel = $client->channel();
$channel->confirmSelect();

$confirmation = $channel->publishBatch([
new PublishMessage(
message: new Message(
body: 'Hello!',
deliveryMode: DeliveryMode::Persistent,
timestamp: new DateTimeImmutable(),
),
exchange: 'x',
routingKey: 'y',
mandatory: true,
),
// ...
]);

$result = $confirmation->await();

foreach ($result->unconfirmed as $unconfirmedMessage) {
// ...
}

foreach ($result->unrouted as $unroutedMessage) {
// ...
}


Мы сделали чат Thesis Community, где вы можете задавать вопросы, делиться идеями и предлагать улучшения.

У нас к вам две просьбы:
⭐️ поставить звезду thesis/amqp,
👩‍🎨 помочь с логотипом для проекта Thesis — лучший скетч (можно использовать ИИ) мы отдадим дизайнеру на отрисовку, а автору подарим слоника Пых.
GitHub GitHub - thesis-php/amqp: Non-blocking (fiber based) client for AMQP 0.9.1. Non-blocking (fiber based) client for AMQP 0.9.1. Contribute to thesis-php/amqp development by creating an account on GitHub.
  • 👍 47
  • 🔥 32
  • ❤ 12
  • ❤‍🔥 4
More from @phpyh
  1. Sep 15, 2026Сейчас один человек с AI может выполнять работу целого IT-отдела. Только хуёво
  2. Sep 12, 2026Спасибо за заявки! Всем напишу в понедельник. Осталось 1 место.
  3. Sep 11, 2026Хардкорный курс асинхронного PHP https://hardcourse.ru/php/async
  4. Sep 11, 2026Ещё полчасика надо — сайт готов, расписываю программу! 🙏
  5. Sep 10, 2026Краткое содержание: завтра в 12:00 открываю набор на Хардкорный курс асинхронного PHP с уч…
  6. Sep 10, 2026Post #1011
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →