定制 rollun-com/rollun-callback 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

rollun-com/rollun-callback

最新稳定版本:8.1.0

Composer 安装命令:

composer require rollun-com/rollun-callback

包简介

Callback

README 文档

README

rollun-callback - библиотека, которая кроме полезных callable объектов дает возможность передавать код на выполнение другому процессу, машине или очереди. Так же эта библиотека дает возможность быстро поднять endpoint для работы webhook - сервис, который сразу же возвращает управление, несмотря на длительность возможных операций.

Переход на версию php 8

При переходе на PHP v.8 и Laminas выявлены следующие проблемы.

1. Проблема с ресурсами CURL

По цепочке зависимостей, которую удалось установить, тянется пакет guzzle/guzzle: v3.9.0. В этом пакете используется расширение php-curl. В версиях php < 8 функции типа curl_init возвращали ресурс, и в коде самого пакета guzzle/guzzle: v3.9.0 есть много проверок типа

    // В одних местах
    $handler = curl_init();
    ...
    // В других местах 
    if (!is_resource($handler)) {
        throw new Exception();
    }

Так как $handler теперь обьект, эти проверки не проходят и выбрасываются исключения.

Единственное решение, которое смог придумать, форкнуть устаревший пакет (уже давно не поддерживается и находится в архиве) guzzle/guzzle и переписать условия проверки с is_resource на instanceof.

2. Проблемы с тестами

Все закомментировал, нужно отдельно разбираться.

2.1. Метод \Rollun\Test\Functional\Callback\Queues\Adapter\SqsAdapterTest::testCreateAdapterWithDeadLetterQueue()

При попытке получить с контейнера сервис DeadLetterQueue::class, выбрасывается исключение. Такой сервис не сконфигурирован.

2.2. Класс \Rollun\Test\Functional\Callback\PidKiller\WorkerManagerTest

В данном классе все тесты вызывают метод \rollun\callback\PidKiller\LinuxPidKiller::ps(), который был удален 25.06.2019 Поправил

2.3. Класс \Rollun\Test\Unit\Callback\Queues\Adapter\SqsAdapterTest

Закомментировал все тесты

统计信息

  • 总下载量: 10.41k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 4
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 7
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0
  • 更新时间: 2017-02-21