@prophp7

Страница 364 из 1387
Vitalii
11.05.2017
11:59:18
ниче се

dypa
11.05.2017
11:59:40
вы как с луны свалились...

Дилмурод
11.05.2017
11:59:55
Спасибо всем вам

Aleserche
11.05.2017
12:00:42
https://github.com/Anahkiasen/underscore-php
старовата, ну да ладно

Google
Ivan
11.05.2017
12:08:08
а есть норм либа для работы с массивами коллекциями?
https://github.com/illuminate/support/blob/master/Collection.php

Aleksandr
11.05.2017
12:45:07
nikic/iter помнится есть такое от Никиты Попова

Aleh
11.05.2017
12:48:33
там он вроде для генераторов, а с ними вообще отдельная история

Aleksandr
11.05.2017
12:54:53
Vadim
11.05.2017
13:27:49
порядок аргументов в array функциях, всегда можно в доке посмотреть

там не банят вроде

Aleh
11.05.2017
13:28:18
а можно поставить норм обертки, где порядок не вызывает вопросов

Альберт
11.05.2017
13:34:11
Я всегда удивляюсь почему в сообществе пхп не прижилась ни одна обертка, которая бы обворачивала все это безобразие стандартных функций

Альберт
11.05.2017
13:36:41
Что бы соблюдался какой то порядок в наименование, порядке аргументов)

Видимо у самих разработчиков языка PHP нет никакого соглашения

Aleh
11.05.2017
13:38:11
а потом BC

Google
Альберт
11.05.2017
13:38:55
BC это что?))

Aleh
11.05.2017
13:39:15
backward compatibility

Альберт
11.05.2017
13:40:22
А ну да)

?
11.05.2017
13:52:30
чтобы с map, reduce, filter, find
https://github.com/nikic/iter

Aleh
11.05.2017
13:52:44
?
11.05.2017
13:53:00
знал?

Aleh
11.05.2017
13:53:18
скидывали выше и когда-то просматривал

ну короч вечером будет что сравнить

Aleksandr
11.05.2017
15:40:18
вообще унифицирование синтаксиса является одной из задач для php 7.2. Проблема есть, ее признают, ее пытаются решить

Alexey
11.05.2017
17:56:50
Ребят помогите пожалуйста, я застрял немного с вот такой задачей... ? Есть воркер на PHP, задача которого принять задание по RabbitMQ, затем стянуть данные по HTTP следуя этому заданию и отправить в другую очередь RabbitMQ При отсутствии заданий в течении ~30м воркер теряет связь с RabbitMQ и из этого состояния уже не выходит, задачи до него не доходят. Для начала я хотел бы, чтобы он в такой ситуации просто падал. А в идеале чтобы сам умел реконнектится. Залипает он на 105 строке $channel->wait(null, true, null); Пришлось обложить код кучей try.. catch, сейчас выглядит некрасиво, но это нисколько не помогло. Вот код : https://gist.github.com/targence/57f74a4e9c03d198f330a61e2e9c3e9a#file-worker-php-L105 Вот так выглядит лог воркера при работе 2017/05/11 17:25:02 Waiting for messages 2017/05/11 17:25:26 [<-] Received task {"id":1,"chat_id":205786,"task":"get_media_caption","params":"BT7gb3SlRD-"} 2017/05/11 17:25:29 [->] Sent to Publisher 2017/05/11 17:25:29 Waiting for messages все, после 30 минут неактивности, воркер завис... Отдельно скажу, что в либе php-amqplib вроде бы как есть всякие параметры типа heartbeat, но то ли они у меня не работают, то ли я не понимаю как их применить правильно, все равно в итоге воркер зависает. ?

Dmitriy
11.05.2017
18:00:05
посмотри настройки консольного пхп

может у вас там стоит "время жизни" 30 минут )

Nick
11.05.2017
18:10:40
кто-нибудь может подсказать, почему не ресолвится статика в доцкере? https://pastebin.com/Q7aqr5r3 https://pastebin.com/Kn7PYfbg

Alexey
11.05.2017
18:15:22
кто-нибудь может подсказать, почему не ресолвится статика в доцкере? https://pastebin.com/Q7aqr5r3 https://pastebin.com/Kn7PYfbg
нельзя так указвать путь к папке ./public:/usr/share/nginx/html, надо $(pwd)/public:/usr/share/nginx/html

может у вас там стоит "время жизни" 30 минут )
а где именно смотреть? я php поднимаю в докере с дефолтными настройками. Вот докер файл. https://github.com/docker-library/php/blob/6844e717a56a5dd8ad87a236a96bea069cc635fd/7.1/alpine/Dockerfile Вот тут env переменные конкретно в моем контейнере, https://gist.github.com/targence/57f74a4e9c03d198f330a61e2e9c3e9a#file-env в тут содержание папки настроек bash-4.3# ls /usr/local/etc/php/conf.d/ -lh total 24 -rw-r--r-- 1 root root 18 Apr 18 22:24 date_timezone.ini -rw-r--r-- 1 root root 20 May 10 12:44 docker-php-ext-bcmath.ini -rw-r--r-- 1 root root 18 May 10 12:44 docker-php-ext-exif.ini -rw-r--r-- 1 root root 16 May 10 12:44 docker-php-ext-gd.ini -rw-r--r-- 1 root root 19 May 10 12:44 docker-php-ext-pcntl.ini -rw-r--r-- 1 root root 16 Apr 18 22:24 memory-limit.ini bash-4.3#

Aleserche
11.05.2017
18:29:24
время жизни консольного скрипта не ограничено по времени. Вроде обсуждали уже. Там 0 захардкодили

Alexey
11.05.2017
18:36:43
Да вроде можно.
да, сорри, просто как то была проблема при которой не работал относительный путь... с тех пор везде указываю через $(pwd), чтобы он разворачивался в абсолютный

время жизни консольного скрипта не ограничено по времени. Вроде обсуждали уже. Там 0 захардкодили
запускать воркер просто как php ./worker.php никаких хитростей тут нет? так?

Google
Kirill
11.05.2017
18:40:00
запускать воркер просто как php ./worker.php никаких хитростей тут нет? так?
очевидно, что лучше через: /usr/bin/nohup php ./worker.php > ./storage/logs/worker.log 2>&1 &

а ещё лучше через супервизор

в каком-нибудь таком виде: [program:some-worker] process_name=%(program_name)s_%(process_num)02d command=php ..../worker.php autostart=true autorestart=true user=www-data numprocs=21 redirect_stderr=true stdout_logfile=/var/log/supervisor/worker.log

Alexey
11.05.2017
18:42:14
очевидно, что лучше через: /usr/bin/nohup php ./worker.php > ./storage/logs/worker.log 2>&1 &
понятно, спасибо, я в docker запускаю, это не нужно... в docker, просто foreground все принято запускать и роль супервизор выполняет сам докер.

Kirill
11.05.2017
18:42:51
по-этому и запускать лучше через ноухоп

чтобы процесс не лочить

ну т.е. воркер же в том же контейнере где fpm стартует?

Aleh
11.05.2017
18:43:33
да не

Alexey
11.05.2017
18:43:39
ну т.е. воркер же в том же контейнере где fpm стартует?
там нету web вообще, воркер - это http клиент, а сервера нету.

Aleh
11.05.2017
18:43:39
запускать воркер вместе с fpm не оч заетя

Kirill
11.05.2017
18:43:52
Aleh
11.05.2017
18:44:16
ну сразу надо думать, как его менеджить, чтоб не падал, как логи из него тянуть, как мониторить

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

Kirill
11.05.2017
18:44:36
так в стдаут натравить или файл и вуаля

Aleh
11.05.2017
18:44:37
удобно

Kirill
11.05.2017
18:44:57
типа такого: https://github.com/LaravelRUS/laravel.ru/blob/2.0/docker/php/start.sh#L22

Aleh
11.05.2017
18:45:22
ну хз, на любителя

по вопросу чего виснет через 30 минут кролик без идей

Alexey
11.05.2017
18:47:10
ну сразу надо думать, как его менеджить, чтоб не падал, как логи из него тянуть, как мониторить
там все продумано уже =) докер все сам поднимает, если упадет, и логи все агрегируются через stdout, и дальше куда нужно экспортируются.

Google
Aleh
11.05.2017
18:47:24
а если несколько, то нужно все это заворачивать

у нас один процесс на контейнер в докерах и все норм собирается

Alexey
11.05.2017
18:47:45
Aleh
11.05.2017
18:48:50
и не вижу никакой проблемы из готового образа запустить еще один сервис с нужной командой

но опять же, может кому-то зачем-то и удобнее делать как @SerafimArts предлагает

Kirill
11.05.2017
18:50:19
я просто хз как это в отдельном контейнере стартовать =)

там же надо php-cli ставить, а не хочется по 100 раз собирать одно и то же

Aleh
11.05.2017
18:51:05
Admin
ERROR: S client not available

Kirill
11.05.2017
18:51:21
ну так в отдельный контейнер его опять ставить

Aleh
11.05.2017
18:51:29
просто один контейнер запустит первую команду и будет висеть да слушать, а второй запустит fpm

зачем, вы образы не делаете?

Kirill
11.05.2017
18:51:37
и собирать с теми же настройками, что и в fpm контейнере

образы?

:D

Aleh
11.05.2017
18:52:48
))

Kirill
11.05.2017
18:53:22
ну докер компоуз и есть считай образ

Aleh
11.05.2017
18:53:26
не

Kirill
11.05.2017
18:53:31
один большой из нескольких маленьких

Google
Aleh
11.05.2017
18:53:35
докер-компоуз эт про сервисы

Roman
11.05.2017
18:53:54
то есть не рекомендуется в одном контейнере собрать nginx + php + php-fpm?

Kirill
11.05.2017
18:54:11
ну нгинкс и фпм всё же лучше в разных

Roman
11.05.2017
18:54:11
Dockerfile собирает образ

Aleh
11.05.2017
18:54:13
то есть не рекомендуется в одном контейнере собрать nginx + php + php-fpm?
вообще не рекомендуется и об этом написано в доке докера

но бывают ситуации, когда вы можете этого хотеть и тогда выдумывайте себе еще всякие supervisord и прочее

Roman
11.05.2017
18:55:12
хотел бы я написать, что не все мне понятно в доке по докеру, потому что там все на англ, но это мои проблемы, что я плохо знаю англ

Kirill
11.05.2017
18:55:24
а вот fpm и cli юзают один и тот же билд пыхи в докере, по-этому я и хз как в двух разных контейнерах иметь один и тот же билд

Aleh
11.05.2017
18:55:36
контейнер запускается из образа

Kirill
11.05.2017
18:55:42
ну да

Roman
11.05.2017
18:55:47
как же все усложняется, если придерживаться стратегии - один контейнер - один процесс

Kirill
11.05.2017
18:55:51
в from можно путь указать локальный?

Aleh
11.05.2017
18:55:52
если брать аналогии из ооп, то контейнер это объект, а класс это образ)

Kirill
11.05.2017
18:55:57
на другой dockerfile

Aleh
11.05.2017
18:56:29
Dockerfile как раз описывает образ, про локальный хз, не было надобности

про нелокальный очевидно да)

локальный нельзя, он по именам резолвит

Kirill
11.05.2017
18:57:36
ну вот я про это и говорю

Aleh
11.05.2017
18:57:39
про что?

Kirill
11.05.2017
18:57:45
dockerfile стартует fpm

ну и собирает всё

Aleh
11.05.2017
18:58:03
в dockerfile можно указать дефолтную команду

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