@symfony_php

Страница 297 из 1418
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
public function getCacheDir() { return '/tmp'; } Не?
не, там по умолчанию так и стоит куда я и хочу писать - var/cache

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
привет, есть консьюмер rabbitmq, падает с ошибкой ORMException::entityManagerClosed - The EntityManager is closed.
самый простой способ убить консьюмера и он поднимется заново

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
а вообще EM закрывается только если была ошибка в базе на записи
в логах нет больше ошибок, а эта появляется в момент вызова persist()

посмотрел метод 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
вот так не будет работать?
посмотри метод close у entity manager

и погрусти

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
ПОдскажите как-то можно быстро подключить телеграм бота, надо получить ид чата и пихать туда сообщения

Alexandr
22.09.2017
08:13:48
у карты есть номер и пинкод ... заказчик хочет иметь два типа авторизации - по логопасу юзера и по номеру-пину карты

поэтому получается что карта - это независимая авторизующая сущность))

Andrew
22.09.2017
08:16:49
у карты есть номер и пинкод ... заказчик хочет иметь два типа авторизации - по логопасу юзера и по номеру-пину карты
ну из этого абсолютно не следует что карта должна быть сущностью, которая представляет собой пользователя, тебе нужно по идее написать юзер провайдера, который по пин-коду будет возвращать юзера, что-то типа https://symfony.com/doc/current/security/api_key_authentication.html. Хз как там в реальности требования, но я бы так попробовал

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 сериализует не в минифицированном виде

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 но в новом коде хочется все таки использовать симфоневский сериализатор. Хотелось бы узнить кто почему JMS использует?
имхо он выгоднее на простых задачах, которые покрываются аннотациями. А родной лучше когда требуется сложная логика, которую проще описать императивно. Но я обычно стараюсь делать DTO, так что вся сложная логика становится задачей конструктора DTO

jms хорош декларативным подходом, плюс аннотации подхватываются документаторами апи

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

Страница 297 из 1418