Size: a a a

2020 November 19

AM

Alexander Makarov in Yii Framework 3
Подсунуть по дефолту json_encode / json_decode как MessageSerializerInterface реализацию и будет работать. Так?
источник

В

Виктор in Yii Framework 3
Да
источник

В

Виктор in Yii Framework 3
А, стоп, это ты про amqp драйвер. Тот MessageSerializerInterface немного для другого. Вот внутри его дефолтной реализации используется SerializerInterface
источник

AM

Alexander Makarov in Yii Framework 3
ну сейчас-то да
источник

AM

Alexander Makarov in Yii Framework 3
но если заменить на json_encode ничего не сломается же?
источник

В

Виктор in Yii Framework 3
Сломается
источник

AM

Alexander Makarov in Yii Framework 3
почему?
источник

AM

Alexander Makarov in Yii Framework 3
queue же не гоняет PHP-классы по себе
источник

В

Виктор in Yii Framework 3
Он нужен для сериализации/десериализации поведений сообщений
источник

В

Виктор in Yii Framework 3
Это та часть, которая работает только внутри проекта
источник

AM

Alexander Makarov in Yii Framework 3
м...
источник

В

Виктор in Yii Framework 3
Например, отложенное сообщение
источник

AM

Alexander Makarov in Yii Framework 3
а мы точно так хотим делать?
источник

В

Виктор in Yii Framework 3
Alexander Makarov
а мы точно так хотим делать?
М?
источник

AM

Alexander Makarov in Yii Framework 3
Не лучше это массивом без PHP-специфики передавать?
источник

AM

Alexander Makarov in Yii Framework 3
Типа:

{
  behaviors: [
     {name: x, param1: 42}
  ]
}
источник

В

Виктор in Yii Framework 3
Поведения - это специфичная для конкретного проекта штука. Ничто за пределами проекта не знает, что это такое и что с ним делать.
источник

В

Виктор in Yii Framework 3
Через них же будут работать стратегии обработки ошибок
источник

AM

Alexander Makarov in Yii Framework 3
ну, может предположить :)
источник

В

Виктор in Yii Framework 3
А вот для этого я сделал MessageSerializerInterface)) Чтобы можно было при большой необходимости наладить коммуникацию по поведениям со внешними сервисами
источник