
Sergey
11.12.2017
10:32:15
ай не смотрите... так себе вышло...

f4rt~
11.12.2017
10:32:37
ждем

Maksim
11.12.2017
10:32:45
да эт понятно, что так себе) но посмотреть хочется)

Sergey
11.12.2017
10:33:11
@oldenby может расскажет, там было два доклада ж помимо и ничагошные

Google

Alexander
11.12.2017
10:34:09
рендерим к вечеру должно все быть
пошарю сюда

f4rt~
11.12.2017
10:34:21
?

Pavel
11.12.2017
12:25:38
https://webmasters.googleblog.com/2017/12/rendering-ajax-crawling-pages.html
Что-нибудь меняет?

Fayozjon [CybernatiC]
11.12.2017
13:11:47
Ребят помогите поднять SOAP SERVICE
из WSDL
2 неделю мучаюсь
об стенку бьюсь

Anton
11.12.2017
13:15:45
Я ведь правильно понимаю, что ini_set объявленный в одном скрипте - будет действовать на все другие классы вызываемые из него?
Или лучше сразу идти в необходимые конечные скрипты и там везде проставлять memory_limit? =|

Fayozjon [CybernatiC]
11.12.2017
13:17:56
Либо index.php самый основной входной файл решает

Anton
11.12.2017
13:18:50
Ок, спасибо

Google

Борис
11.12.2017
13:32:20
Либо index.php самый основной входной файл решает
Ээээ.... ну как-бы нет. Решает момент выполнения ini_set (это должно быть вызвано ДО того, как тебе понадобится что-то от этого зависящее), а не как глубоко это будет по callstackу. ini_set работает до конца данного запроса, так что
$this->setSomeIniVar($value);
$value = $this->getSomeIniVar()
будет соответствовать.

Роман
11.12.2017
13:33:14
как преобразовать дату в виде 7 Years 10 Months 10 Days
на Y/m/d

Anton
11.12.2017
13:33:53
Ребят помогите поднять SOAP SERVICE
я как-то поднимал. но я не по wsdl а наоборот поднимал сервис и генерил wsdl. и это было очень давно. я даже не уверен какая версия пхп.
но я могу поискать.
если тебя говнокод устроит.

Fayozjon [CybernatiC]
11.12.2017
13:33:57

Яўген
11.12.2017
13:33:59

Anton
11.12.2017
13:35:05

Роман
11.12.2017
13:35:31
DateModify
у меня есть инфа 7 Years 10 Months 10 Days , тоисть дата со времени регистрации, как найти именно дату регистрации

Fayozjon [CybernatiC]
11.12.2017
13:37:10
На
говнокод

Яўген
11.12.2017
13:37:34
http://php.net/DateTimeImmutable изучи

Anton
11.12.2017
13:38:06

Яўген
11.12.2017
13:39:41
если есть утечки памяти, то лучше оптимизируй демона
подожди когда доклад Трофимов будет доступен. Как раз про демонов на php

Fayozjon [CybernatiC]
11.12.2017
13:40:33

Anton
11.12.2017
13:41:04
если есть утечки памяти, то лучше оптимизируй демона
Это логично. Но при текущих входящих данных для обработки утечек нет и всё хорошо работает. Но кто знает, что будет через год-два, когда уже не смогу поддерживать этот проект =/
Повесится сервер и бд в один прекрасный день)

Яўген
11.12.2017
13:42:50
если демону не будет хватать памяти, он не сможет выполнить свою работу. Что от него толку тогда? лучше уж пусть fatal выпадет и кто-то исправит утечку

Anton
11.12.2017
13:44:01
ну да


Борис
11.12.2017
13:59:15
Допустим у меня есть startDaemons.php файл, в котором перед вызовом каждом из демонов (внешний php класс) перезадаётся php_ini на память.
Чтобы мелким демонам выделять мегабайт 200, а крупным 2-3-10 гб. И если мелкие начнуть херню творить ввиду моей криворукости - их уронят принудительно по лимиту в 200мб.
Или Я вообще горожу велосипед и есть какой-то адекватный способ ограничивать моих демонов по памяти?
твой скрипт делает pctnl_fork ? Если у тебя демоны создаются форком, то я уже не помню, вроде бы должно все-равно работать одна установка. Вообще ты можешь это потестить var_dump(ini_get()).
Да, ты городишь велосипед. Есть минимум десяток либ для управления дочерними процессами, зависит от того, что тебе нужно. symfony/process для вызова unix команд (или php кода), bernard для очередей, или phppm для форков php...
Короче, если времени много (и ты уверен в своих силах) то лучше заюзать что-то готовое. Если уже более-менее работает, и тебе это поддерживать не нужно будет - мой тебе совет, просто увеличь память и сдай проект ;)


Anton
11.12.2017
14:01:13
твой скрипт делает pctnl_fork ? Если у тебя демоны создаются форком, то я уже не помню, вроде бы должно все-равно работать одна установка. Вообще ты можешь это потестить var_dump(ini_get()).
Да, ты городишь велосипед. Есть минимум десяток либ для управления дочерними процессами, зависит от того, что тебе нужно. symfony/process для вызова unix команд (или php кода), bernard для очередей, или phppm для форков php...
Короче, если времени много (и ты уверен в своих силах) то лучше заюзать что-то готовое. Если уже более-менее работает, и тебе это поддерживать не нужно будет - мой тебе совет, просто увеличь память и сдай проект ;)
=)) Времени никогда много не бывает свободного, но у себя потом опробую. Спасибо за инфу)

Google

Dmitry
11.12.2017
14:19:26
должны работать memory_limit после форка по идее

Wan
11.12.2017
14:38:52
Может кто занает как мне файлы на шаред хостинге открывать через сублайм текст? Работаю в убунту. конструкция subl имя_файла работает только с локальными файлами
подключаюсь к хостингу через терминал ssh login@server

Виктор
11.12.2017
14:41:12
Примонтировать удаленную папку
Если линукс
или через любой ftp клиент. Они могут автоматически деплоить при изменениях на сервер

Sergo
11.12.2017
15:27:07

Wan
11.12.2017
15:27:51

Vitaly
11.12.2017
15:29:43
https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh

Антон
11.12.2017
15:33:16
ты пробовал phpstorm?
возвращаться не захочешь на саблайм

Fayozjon [CybernatiC]
11.12.2017
16:08:06
Кто нибудь юзал Yandex Speech Kit ?

Fayozjon [CybernatiC]
11.12.2017
16:08:21
почему то постоянно ошибку 400 Bad request выблевывает

Kirill
11.12.2017
19:09:55
если при инициализации передать в конструктор объекта массив болшого размера он скопируется?
стоит ли передавать по ссылке, при том, что не будешь его менять в объекте?

Anton
11.12.2017
19:10:36
все объекты передаются по ссылке

Kirill
11.12.2017
19:11:05
я создаю объект, в параметре массив

Anton
11.12.2017
19:11:06
и твой вопрос легко проверить даже в php -a
а если массив
то тогда скопируется

Google

Kirill
11.12.2017
19:11:40
а если по ссылке?

Anton
11.12.2017
19:12:24
блин, ну возьми и проверь. глупый вопрос же получается

Kirill
11.12.2017
19:23:03
массив на 20к элементов, никак не сказываться кординально, на несколько байт меняется размер

Anton
11.12.2017
19:23:24
размер чего?
можешь показать пример?

Kirill
11.12.2017
19:24:04
блин.. там наверное деструктор вызвался, ещё тест надо
если в конструкторе класса добавить большой массив в какое-то свойство,он в любом случае копируется, а так не важно, по ссылке или нет

Admin
ERROR: S client not available

Kirill
11.12.2017
19:28:24
если не нужно изменять, без ссылки на несколько байт меньше

Anton
11.12.2017
19:30:28
покажи пример того, что ты делаешь.
пахнет очень сильно ненужным кодом.

Kirill
11.12.2017
19:31:15
да ничего ненужно, разбираюсь как выгодно по памяти работать с большим массивом

Борис
11.12.2017
19:31:19
off documentation*

Kirill
11.12.2017
19:32:52

Борис
11.12.2017
19:34:16

Kirill
11.12.2017
19:34:25
ок
я правильно понимаю, что в рекурсии если передавать на каждый проход вглубь по какой-то части массива,то на каждый проход будет создаваться новый zval для массива?
если так, то получается тут нужно вручную удалять перед проходом вглубь

Anton
11.12.2017
19:46:22
для рекурсий массивы лучше передавать поссылке. (если при этом сами массивы будут изменятся)

Google

Anton
11.12.2017
19:47:02
но опять же я не понимаю что ты делаешь
очень тяжело давать такие советы

Kirill
11.12.2017
19:47:20
написал бинарный поиск рекурсивно
вот анализирую

Anton
11.12.2017
19:48:28
если честно, то рекурсии — не самое хорошее, что есть в программировании. Это красиво с точки зрения кода. но это не хорошо с точки зрения рантайма

Борис
11.12.2017
19:48:49
Короче, еще раз - если только читаешь то не парься (при поиске вроде только читать нужно... но мало ли ты умелец^_^) А вообще, если хочешь толковый совет - выложи код, как уже антон сказал.

Kirill
11.12.2017
19:49:59
https://pastebin.com/6TQuEFFA

Anton
11.12.2017
19:51:12
по крайней мере при первом прочтнеии

Alexander
11.12.2017
19:52:42
В resolve есть что оптимальнее сделать
Но к копированию изначального массива целиком это не имеет отношения

Anton
11.12.2017
19:53:42
во 1-х я не вижу что там массив отсортированный приходит

Kirill
11.12.2017
19:54:09
это по условию, гарантированно отсортированный на вход подается

Anton
11.12.2017
19:54:16
какие-то непонятные проверки на half

Alexander
11.12.2017
19:54:19

Anton
11.12.2017
19:54:22
очень все запутанно

Борис
11.12.2017
19:54:48
да, и array_slice это не подмассив, а новый массив, так что память будет выделяться , и не будет copy-on-write.

Alexander
11.12.2017
19:54:56
Класс реализует бинарный поиск. Но на вход принимает просто любой массив :-)

Борис
11.12.2017
19:55:25
@appleboy в следующий раз выкладывай на gist там комментить код можно.