Taras
20.09.2017
09:27:52
Всем злого утра :)
Michael
20.09.2017
09:28:37
омг
Daniel
20.09.2017
09:28:48
Ха! Почему-то только данный чат не работает
Artemiy
20.09.2017
09:29:28
Очень itшное предложение ?
Google
Daniel
20.09.2017
09:29:32
ЛОООЛ
Dmitriy
20.09.2017
09:29:49
ух )
Daniel
20.09.2017
09:30:04
Ребята, вопрос по рейс кондишенам и архитектуре согласованности в очередях
1)Админом обновляется юзер - регистрируется задача #update-1 в очрееди на обновление юзера в 1С
2)Эта задача #update-1 начинает выполняться - происходит ошибка из-за таймаута коннекта к 1С - она кладется в очередь отложенных обработок
3)Админу похеру: пока там задача пытается выполнится - он еще раз обновляет юзера, добавляя еще какие-то правки - создается задача #update-2 на обновление юзера в 1С
4)Вот теперь 2 задачи не могут выполниться какое-то время и прыгают по очереди из отложенной очереди в основную через определенный интервал
5)К этому времени, неожиданно начинает работать 1С и к этому времени пытается выполниться задача #update-2 - она выполняется успешно и только после начинает выполняться #update-1, который затирает изменения #update-2 - последние изменения, которые хотел сделать админ
Roman
20.09.2017
09:30:32
что то вообще?
Pavel
20.09.2017
10:14:27
public function getCacheDir()
{
return '/tmp';
}
Не?
Daniel
20.09.2017
10:23:42
Ребята, вопрос по рейс кондишенам и архитектуре согласованности в очередях
1)Админом обновляется юзер - регистрируется задача #update-1 в очрееди на обновление юзера в 1С
2)Эта задача #update-1 начинает выполняться - происходит ошибка из-за таймаута коннекта к 1С - она кладется в очередь отложенных обработок
3)Админу похеру: пока там задача пытается выполнится - он еще раз обновляет юзера, добавляя еще какие-то правки - создается задача #update-2 на обновление юзера в 1С
4)Вот теперь 2 задачи не могут выполниться какое-то время и прыгают по очереди из отложенной очереди в основную через определенный интервал
5)К этому времени, неожиданно начинает работать 1С и к этому времени пытается выполниться задача #update-2 - она выполняется успешно и только после начинает выполняться #update-1, который затирает изменения #update-2 - последние изменения, которые хотел сделать админ
У меня реббит, если это важно
так очередь можно и по времени формировать
Можешь кейс описать?
https://habrahabr.ru/post/235983/
https://github.com/rabbitmq/rabbitmq-delayed-message-exchange
твое с первой задачей всегда выйдет с очереди первым
Да с плагином проблема ставить его
Google
Daniel
20.09.2017
10:23:52
Слишком дофига* бумаг надо
У меня разруливается через x-message-ttl и x-dead-letter-exchange
Возможно буду делать через https://symfony.com/doc/current/components/filesystem/lock_handler.html
На каждую каку создавать
Sergey
20.09.2017
10:24:43
таймстампы ставь сообщениям в очереди
и протухшие отбрасывай в приложении
скажем если пришла новая запись update2, то update1 уже не пройдет
Anton
20.09.2017
10:59:01
app.cache сервис называется. Это FilesystemAdapter, настроенный в %kernel.cache_dir%/pools
Daniel
20.09.2017
12:58:24
Спасибо
Gaiaz Iusipov
20.09.2017
13:22:19
Sergey
20.09.2017
13:33:45
привет, есть консьюмер rabbitmq, падает с ошибкой ORMException::entityManagerClosed - The EntityManager is closed.
как бороться?
Sergey
20.09.2017
13:35:53
Sergey
20.09.2017
13:36:10
Sergey
20.09.2017
13:36:29
https://github.com/php-enqueue/enqueue-dev/tree/master/pkg/enqueue-bundle/Consumption/Extension
Sergey
20.09.2017
13:36:30
а вообще EM закрывается только если была ошибка в базе на записи
Sergey
20.09.2017
13:36:36
вот еще примерчик как можно хэндлить
Sergey
20.09.2017
13:36:46
это не то
Sergey
20.09.2017
13:37:01
а да, там только реконнект
Google
Sergey
20.09.2017
13:39:08
посмотрел метод EntityManager::persist там кидается исключение если соединение закрыто. Не пойму в какой момент надо реконнект делать
Sergey
20.09.2017
13:41:41
em переоткрыть нельзя
только новый создать
Sergey
20.09.2017
13:42:10
вот так не будет работать?
$connection = $em->getConnection();
if (!$connection->ping()) {
$connection->connect();
}
Sergey
20.09.2017
13:46:43
и погрусти
Sergey
20.09.2017
13:46:59
коннект открыть можно заново
ем нельзя
хз почему
Sergey
20.09.2017
13:48:22
а как убить консьюмер?)
Sergey
20.09.2017
13:48:31
throw new \Exception
exit(1)
Sergey
20.09.2017
13:58:24
Sergey
20.09.2017
13:58:48
ой не
лучше юзать entity registry
мы просто тушим консьюмера
Sergey
20.09.2017
13:59:25
(\Closure::bind(function ($em){
$em->closed = false;
}, null, EntityManager::class))($em);
Google
Sergey
20.09.2017
13:59:36
ем закрывается только в редких случаях
Sergey
20.09.2017
13:59:50
Daniel
20.09.2017
17:08:07
Самое главное - закрывать подключение к бд в консумерах :D
Aleksey [R10]
20.09.2017
17:19:54
Созрел вопрос по твигу
есть страница
на ней попапы, у каждого попапа есть тело и скрипт
Admin
Aleksey [R10]
20.09.2017
17:20:35
вынести это всё в отдельный файл и потом обратно собрать?
что бы скрипт был со всеви остальными скриптаби в блоке скриптов
Alexandr
21.09.2017
14:37:01
кто-нибудь сталкивался с необходимостью в fos_oauth_server настроить авторизацию по одной из двух сущностей? ... есть user с логопассом, есть его карта (пластиковая) с логопассом ... обе эти сущности реализуют UserInterface ... упёрся в то, что fos записывает юзера в access_token ... и ничего кроме юзера там видеть не желает ... не могу найти где это можно сконфигурировать и можно ли вообще
Виктор
21.09.2017
20:28:40
ПОдскажите как-то можно быстро подключить телеграм бота, надо получить ид чата и пихать туда сообщения
Andrew
22.09.2017
08:13:10
Alexandr
22.09.2017
08:13:48
у карты есть номер и пинкод ... заказчик хочет иметь два типа авторизации - по логопасу юзера и по номеру-пину карты
поэтому получается что карта - это независимая авторизующая сущность))
Andrew
22.09.2017
08:16:49
Alexandr
22.09.2017
08:18:05
да, я тоже смотрю в эту сторону уже
Roman
22.09.2017
09:21:46
Подскажите пожалуйста, стоит задача создать копию сущности, у которой есть много различных связей и у этих связей тоже есть связи, глубина где-то до 5 уровня.
Нашел 2 бандла для клонирования, может кто подскажет, что лучше юзать?
https://github.com/evalandgo/EVCopyBundle
https://github.com/myclabs/DeepCopy
Sergey
23.09.2017
06:15:42
Привет,ребята. У меня есть сущность, у которой один из атрибутов json строка. Как правильно сериализовать этот объект в json с помощью jms.serializer чтобы этот атрибут без изменений записывася в конечный json?
Gaiaz Iusipov
23.09.2017
07:06:25
Вроде можно на объекте реализовать интерфейс jsonSerializeble так как доктрина дергает json_encode. Jms выкидывайте нафиг гадость редкостная
Google
Gaiaz Iusipov
23.09.2017
07:07:30
К томуже jms сериализует не в минифицированном виде
Denis
24.09.2017
07:45:39
Gaiaz Iusipov
24.09.2017
08:18:50
Valentin
24.09.2017
08:19:55
В конфиге jms_serializer > visitors > json > options
Gaiaz Iusipov
24.09.2017
08:21:46
О спасиб
Valentin
24.09.2017
08:22:19
Там собственно дефолтная битмаска от json_encode, можно и все остальные константы втыкать по желанию, не только JSON_PRETTY_PRINT
@doozookn Можно воспользоваться вот этим: https://jmsyst.com/libs/serializer/master/reference/annotations#handlercallback
Либо назначить хендлер кастомный для объекта: http://jmsyst.com/libs/serializer/master/handlers#introduction
Sergey
24.09.2017
09:37:08
Я просто обозначил атрибут как
@Serializer\Type("string")
Denis
24.09.2017
09:51:30
Как?
jms_serializer:
visitors:
json:
options: JSON_PRETTY_PRINT
https://github.com/FriendsOfSymfony/FOSRestBundle/issues/773#issuecomment-43661420
Gaiaz Iusipov
24.09.2017
09:52:45
pretty print как я понимаю и включает эти отступы и переносы строк?
Denis
24.09.2017
09:55:37
Gaiaz Iusipov
24.09.2017
09:57:09
Понял спасибо. У нас на проекте JMS но в новом коде хочется все таки использовать симфоневский сериализатор.
Хотелось бы узнить кто почему JMS использует?
Dmitry
24.09.2017
11:42:27
jms хорош декларативным подходом, плюс аннотации подхватываются документаторами апи
Gaiaz Iusipov
24.09.2017
12:00:58
Dmitry
24.09.2017
12:03:29
эм ;)
Nurlan
24.09.2017
13:34:04
Может у кого-то случилось это?
https://stackoverflow.com/questions/46390491/doctrine-event-listener-must-specify-the-event-attribute