@prophp7

Страница 668 из 1387
Gaiaz Iusipov
09.10.2017
14:50:19
если только в конфиге апачевском не отключены htaccess

Dmitriy
09.10.2017
14:50:57
ну в общем по итогу все было найдено в оф. документации

даже там советуют, я видимо пропустил эти настройки когда начинал

Gaiaz Iusipov
09.10.2017
14:51:50
попробуйте сломать htaceess напишите чтонибудь невалидное туда, если посыпятся 500 - то он хотябы читается

Google
Dmitriy
09.10.2017
14:51:50
http://symfony.com/doc/current/setup/web_server_configuration.html

из /web который ?

Gaiaz Iusipov
09.10.2017
14:52:10
да

только он и нужен, все остальные htaccess - защита от дурака, их можно вообще удалить

Dmitriy
09.10.2017
14:54:14
ок, через часок пощупаю, отпишусь

спасибо

странно что все выборочно так работает

/app.php сработал

а просто / только индекс выводит, а роуты сломаны

буду ломать htaccess

Gaiaz Iusipov
09.10.2017
15:02:24
ничего тут странного

мод реврайт как раз по ключу срабатывает когда файл не найден

Alexander
09.10.2017
15:13:16
Подскажите как мокнуть в тестах private function createProcess() { return new Process('ls'); } Или надо заменять на какую-нибудь ProcessFactory?

Google
Борис
09.10.2017
15:20:25
можно поколдовать с visibility в рантайме (через рефлексию) или воспользоваться mock фреймворком который сделает это за тебя http://phake.readthedocs.io/en/2.1/mocks.html#calling-private-and-protected-methods-on-mocks НО ПРАВИЛЬНО будет ProcessFactory вот тут написано почему https://stackoverflow.com/questions/5937845/mock-private-method-with-phpunit

Alexander
09.10.2017
15:22:47
Спасибо. Так и думал :)

Яўген
09.10.2017
15:23:47
а зачем вообще такой метод?

tdd проповедует dependency injection. Тогда и плясок не будет

сейчас вот попытался придумать для чего этот метод был выдуман и не нашел достойного примера

Alexander
09.10.2017
15:26:24
Что конкретно? Зачем создавать Process?

Яўген
09.10.2017
15:26:57
зачем метод приватный, который создает и возвращает объект

будь это требование интерфейса, тогда все понятно. Но приватный...

Alexander
09.10.2017
15:28:17
Чтобы не писать всю логику в одном методе, разделил на несколько приватных методов

Яўген
09.10.2017
15:28:41
создать объект - логика?

можно ли этот объект передать извне? Если можно, то это выход

Alexander
09.10.2017
15:29:59
Передать нельзя. Уже переделал через ProcessFactory

Anton
09.10.2017
15:30:21
gitlab норм

Ivan
09.10.2017
20:03:35
что можно почитать о вебсокетах? а то я нуб в этом

Sergey
09.10.2017
20:08:15
что можно почитать о вебсокетах? а то я нуб в этом
а что тебе надо знать о вэбсокетах? вот скажем почитай википедию и скажи чего именно тебе еще надо знать

Ivan
09.10.2017
20:08:40
хочу понимать что вообще такое сокет

%
09.10.2017
20:10:01
так википеия же

Sergo
09.10.2017
20:10:03
а что тебе надо знать о вэбсокетах? вот скажем почитай википедию и скажи чего именно тебе еще надо знать

Sergey
09.10.2017
20:10:16
хочу понимать что вообще такое сокет
начни с википедии и кликай по незнакомым словам

Андрэ
09.10.2017
20:25:00
О, мучаюсь с сокетом, захожу, а тут про них) правда я про unix сокет. Кому-нибудь приходилось с docker engine api работать, обращаясь с сокету? Понимаю, что несколько не по теме(

Google
%
09.10.2017
20:34:49
а в чем вопрос?

с tls, наверно?

Андрэ
09.10.2017
20:39:26
Да не, читать-то читаю, но странный ответ получаю. После заголовков перед данными идет шестнадцатиричное число - размер данных. И нигде не нахожу инфо откуда оно там

Но буквально только что нашел, что встроенный curl умеет опцию CURLOPT_UNIX_SOCKET_PATH начиная с php 7.0.7 вроде. оно и решило мой вопрос, нормально данные получил, не работая напрямую с socket_read и тп

Ruslan
10.10.2017
05:22:55
Всем хай

Aleksandr
10.10.2017
06:02:12
Коллеги, я сейчас конечно наброшу на вентилятор, но рискну. Почему мне для регионального E-commerce проекта стоит выбрать Laravel, а не Symfony (естественно последних версий) лет так на 3-5. Хочется услышать доводы за и против. Мне в Laravel не по душе принцип фасадов и вообще наличие всяких "плюшек" в ядре вроде очередей, редиректор и прочего. И немаловажный вопрос насколько геморно решать нестандартные задачи (из реального мира, те которые не описаны в документации)

Dmitriy
10.10.2017
06:05:28
Никто тебе на этот вопрос не ответит

Ты лучше нас знаешь нюансы своего проекта

Наговнокодить можно с любым инструментом

Igor
10.10.2017
06:33:33
Мы для e-commerce используем phalcon

Andrey
10.10.2017
06:35:10
Игорь, как там третья версия? Стала постабильнее? Пользовались второй и постоянно натыкались на сюрпризы, либо отсутствие чего либо банального в документации

Igor
10.10.2017
06:39:49
Слушай, стало куда приятней с ним работать. На 2-ой версии даже приходилось их си код править из-за багов. Да и документашка вроде получше стала

Виктор
10.10.2017
06:40:38
Так там же зефирка поверх всего

Главное с пагинацией не переусердствовать в phalcon

Которая с моделями работает

Там типо искуственный cursor scroling используется по данным, который производительность просаживает

Andrey
10.10.2017
06:49:22
Круто, спасибо, посмотрю еще раз че они там придумали))

О, кстати, а с решениями основанными на ReactPHP кто нить в проде живёт?)

Oscar
10.10.2017
06:53:59
Php pm использую

Nurik
10.10.2017
06:54:01
О, кстати, а с решениями основанными на ReactPHP кто нить в проде живёт?)
Живут. В чатике уже спрашивали (и я в том числе). Ищется по reactphp.

Google
Oscar
10.10.2017
06:54:08
Оно на базе реакта

Прирост неплохой

Andrey
10.10.2017
06:54:56
php-pm тестили, да, года полтора назад, воркеры дохли спустя 10 реквестов под нагрузкой

Oscar
10.10.2017
06:55:20
А о какой нагрузке речь?

Andrey
10.10.2017
06:56:08
штука огонь, по своей задумке, отдельно порадовало то что почти ниче менять не надо в существующем проекте на симфони

1к рпс дали

Oscar
10.10.2017
06:58:10
А какое время жизни у воркеров было?

Я эмулировал схожую нагрузку, но такого не было

Andrey
10.10.2017
06:59:27
видимо это был баг, даже issue в гитхабе был у них

что они помирают

а swoole кто нить юзает? читал про него, активности на гитхабе почти ноль, из инфы в инете пара статей-переводов китайской доки

Oscar
10.10.2017
07:00:20
Ещё неприятный баг с сессиями был, но его подправили, но он был в мосте для лары

Хотя может уже готовый адаптер есть для http kernel

Roman
10.10.2017
07:16:55
В Symfony свойство public в сервисе отвечает за его видемость в контейнере?

Sergey
10.10.2017
07:26:03
да, чтобы он мог быть доступен через $container->get()

Roman
10.10.2017
07:30:28
public = false, а зачем такое делать? что б все сервеси сразу не грузилися?

Andrey
10.10.2017
07:32:44
Мы использовали это для того, чтобы кто нибудь из разработчиков нечайно не обратился к сервису напрямую, а работал через фасад

в который этот сервис был внедрен как зависимость

Google
Andrey
10.10.2017
07:33:21
Не думаю, что это свойство как-то влияет на производительность

Roman
10.10.2017
07:33:25
а дергать сервис через get->() - ето плохо?

Andrey
10.10.2017
07:33:50
нет, но в случае этого конкретного сервиса было плохо

Roman
10.10.2017
07:34:08
ясно, спасибо

Andrey
10.10.2017
07:34:27
у нас была сложная логика работы с двумя связанными сущностями, за каждую из сущностей отвечал свой сервис, третий сервис эти два сервиса получал в конструктор и работал с ними двумя

вот мы не хотели чтобы первые два сервиса кто то дергал напрямую

Roman
10.10.2017
07:34:49
понятно

Andrey
10.10.2017
07:34:49
а вся работа должна была идти через третий, он был public, остальные нет

Sergey
10.10.2017
07:34:49
public = false, а зачем такое делать? что б все сервеси сразу не грузилися?
для оптимизаций контейнером. если не нужно обращаться к сервису напрямую, то он будет его либо удалять, либо инлайнить

Andrey
10.10.2017
07:35:45
Сергей, а инлайнить это что имеется ввиду? и как это влияет на производительность?

например если такой сервис где-то используется как зависимость, то удалить его не получится уже, а если не используется, то нафиг он вообще нужен

Роман, кстати посмотри в самой симфони есть куча сервисов с public=false, будет как пример использования

Roman
10.10.2017
07:39:41
а где посмотреть?)

Sergey
10.10.2017
07:43:27
Сергей, а инлайнить это что имеется ввиду? и как это влияет на производительность?
для публичных сервиосв на каждый сервис генерируется своя функция для получения этого инстанса если например есть 3 класса A, B, C и A зависит от B, B зависит от C, и только A публичный, у тебя будет всего 1 функция для получения А. Остальные сервисы будут созданы внутри A даже без регистрации в контейнере

Andrey
10.10.2017
07:44:32
ну это же минимальный оверхед, и то только на компиляцию контейнера

похоже на экономию на спичках, к тому же с наличием opcache

Борис
10.10.2017
07:45:30
а вся работа должна была идти через третий, он был public, остальные нет
Прикол в том, что public=false заперщает достать зависимость только через $container->get(). Но оставляет возможность достать зависимость через конструктор. Если тебе нужно "хакнуть" public=false то делаешь свой публичный сервис который в конструкторе принимает приватный и вуаля. В связи с этим вариант с производительностью выглядит здраво, хоть я лично и не могу это подтвердить.

Sergey
10.10.2017
07:45:39
плюс выбрасываться будут сервисы, которые предоставляют другие бандлы и либы. если тебе в приложении не нужен твиг, но он подключен. он его не будет в контейнере даже

Страница 668 из 1387