@ru_python

Страница 7821 из 9768
Роман
22.01.2019
12:51:56
с тебя стотыщ

которые я с удовольствием уступлю тому, кто объяснит проблему с пайпами

хотя я начинаю подозревать, что дело-то не в пистоне, а в пайпах на уровне операционки

Google
Terminator
22.01.2019
12:55:39
@Sirex0011 будет жить. Поприветствуем!

Роман
22.01.2019
12:56:23
@Tishka17 вот так запускаю процесс

Всем привет, вновь возник вопрос. Буду очень благодерен за помощь. Вот я запускаю процесс при помощи Popen: Popen(command, stdout=PIPE, stderr=STDOUT, bufsize=0)

Глеб
22.01.2019
12:56:32
какие framework-и на python-е есть?

Terminator
22.01.2019
12:56:42
@kornov будет жить. Поприветствуем!

Роман
22.01.2019
12:56:50
я пока не понял вопроса
Он пишет много всего интересного в лог

Alex
22.01.2019
12:56:55
Глеб
22.01.2019
12:57:16
разные
А именно может по опыту скажешь?

Роман
22.01.2019
12:57:17
какие framework-и на python-е есть?
ты ведь не до конца понимаешь, что имеешь ввиду, да?

я пока не понял вопроса
но потом перестает(блокируется на месте записи в лог). И это вроде нормально

Т.к. из stdout этого процесса я к тому времени ничего не прочел еще

Маришка
22.01.2019
12:58:25
Google
Роман
22.01.2019
12:59:31
но меня изначально смутило, что я выставил в bufsize=0, и поэтому ожидал, что запись в лог не будет блокироваться

а лог разве не в stderr пишется?
а там у меня перенаправление stderr в stdout

Tishka17
22.01.2019
12:59:52
где?ё

Роман
22.01.2019
13:00:07
где?ё
вот жежь: `Popen(command, stdout=PIPE, stderr=STDOUT, bufsize=0)`

stderr=STDOUT

Tishka17
22.01.2019
13:00:19
ну он и пишет в stdout твой

а не в PIPE который к stdout аттачишь

не?

или я путаю?

Роман
22.01.2019
13:01:05
ну насколько я понял, он пишет в stdout, потом stdout пишет в PIPE

Tishka17
22.01.2019
13:01:16
проверь

Роман
22.01.2019
13:01:16
у которого уже есть буфер на уровне операционки

Terminator
22.01.2019
13:01:34
@midasinc будет жить. Поприветствуем!

Tishka17
22.01.2019
13:02:04
имхо это работает так: Есть stdout=2 и stderr=3 Ты создаешь pipe=4 и перенаправляешь прогу stderr->2, stdout->4

Роман
22.01.2019
13:02:11
проверь
а как? в доках чет не очень понятно написано, я поэтому и стал здесь теребить

Tishka17
22.01.2019
13:02:30
напишитестовую прогу, проверь

пусть она одну строку выводит

Alex
22.01.2019
13:03:15
а в чем собственно вопрос?

как работает bufsize?

Google
Tishka17
22.01.2019
13:03:37
куда попадет stderr проги? в тот же пайп или на твой stdout?

вот жежь: `Popen(command, stdout=PIPE, stderr=STDOUT, bufsize=0)`

Alex
22.01.2019
13:03:52
Tishka17
22.01.2019
13:04:03
я и говорю, пусть проверит

Роман
22.01.2019
13:04:19
а в чем собственно вопрос?
изначально вопрос был почему блокируется запись в лог в процессе, который запущен через Popen

В.
22.01.2019
13:05:43
ну засовываешь в onPlayerStateChange вызов метода на бэке и пишешь нужную инфу
а как это на python реализовать? связывать с javascript?

Роман
22.01.2019
13:05:44
ну bufsize разве не задает его? или как я и подозревал, у пайп на уровне операционки имеется буффер?

а как это на python реализовать? связывать с javascript?
на бэк отправить — заходит пользователь тебе на сайт, шлеш своему скрипту аяксом запрос, пишешь, что тебе нужно

Alex
22.01.2019
13:06:58
Alex
22.01.2019
13:07:22
сорри, выше ответил
A pipe has a limited capacity. If the pipe is full, then a write(2) will block or fail, depending on whether the O_NONBLOCK flag is set (see below).

Since Linux 2.6.11, the pipe capacity is 16 pages (i.e., 65,536 bytes in a system with a page size of 4096 bytes). Since Linux 2.6.35, the default pipe capacity is 16 pages, but the capacity can be queried and set using the fcntl(2) F_GETPIPE_SZ and F_SETPIPE_SZ operations. See fcntl(2) for more information.

man 7 pipe

Alex
22.01.2019
13:08:46
это с буферизированным вводом выводом не связано

Роман
22.01.2019
13:09:01
ну да ладно, вернемся тогда к вопросу с перенаправлением, ща допишу тестовую прогу

Google
Admin
ERROR: S client not available

Роман
22.01.2019
13:09:13
спасибо, что указал

Danil
22.01.2019
13:14:23
@Tishka17 (111: Connection refused) while connecting to upstream а с таким не подскажешь, что делать? И гуглил уже, ничгео не помогает(( /etc/nginx/sites-available/redirect_app: server { listen 80 default_server; server_name _; location / { include /etc/nginx/uwsgi_params; uwsgi_pass unix:/tmp/redirect_app.sock; } }

Tishka17
22.01.2019
13:15:18
upstresm значит не запущен

Tishka17
22.01.2019
13:16:16
значит я был не прав

сорри

Роман
22.01.2019
13:16:24
отсюда и блокировка

всем спасибо, леди и джентельмены

стотыщ, которые мне должен @BreakBrain отправляются @cutwater за правильный ответ, но я бы на его месте поделился с @Tishka17, т.к. он тоже внес вклад в раскрытие этого дела

Роман
22.01.2019
13:19:35
ну твоя карма, твое право

Terminator
22.01.2019
13:22:30
@VSGHG будет жить. Поприветствуем!

Роман
22.01.2019
13:31:55
и снова удалил

Terminator
22.01.2019
13:33:40
M V будет жить. Поприветствуем!

Gennady
22.01.2019
13:36:05
Парни, помогите решить проблему. Пытаюсь получить значение поля fias_id из json. Но при принте он выкидывает каждый знак этого id в новой строке. Как получить это значение так, чтобы его потом можно было использовать в другой функции аргументом. def get_fias_id(fias_id_code): data = json.loads(fias_id_code) for suggestion in data['suggestions']: for information in suggestion['data']['fias_id']: print(information)

Gennady
22.01.2019
13:39:57
Как его потом передать функции, например test()?

Google
Владимир
22.01.2019
13:40:45
Как его потом передать функции, например test()?
for suggestion in data['suggestions']: some_func(suggestion['data']['fias_id'])

Gennady
22.01.2019
13:41:34
Огромное спасибо)

Santiago
22.01.2019
13:51:09
#работа В компанию Блокчейн Солюшнс (bitlish.com) требуется мiddle Python разработчик. Заработная плата: 100к - 160к Стек: Python 3.6, Django, Aiohttp, MySQL, PostgreSQL, Docker, Kubernetes Опыт: 2+ лет коммерческой разработки Офис: Москва м. Семеновская График: 5/2 fulltime Микросервисная архитектура, чистый backend, возможность выбора стека для новых сервисов, задачи чётко распределены между сотрудниками (аналитик, девопс, эникейщик и тд). Обсуждение проекта происходит лично, митинги проходят один раз в спринт (2 недели) Гибкое начало дня, офис рядом с метро P.S. Я - разработчик bitlish, можете задавать конкретные вопросы по стеку и процессам.

Jentry
22.01.2019
14:02:40
160к, Москва, офис ?

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
22.01.2019
14:02:53
Tigran
22.01.2019
14:03:26
и 2+ года опыта

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
22.01.2019
14:03:42
Tigran
22.01.2019
14:03:56
ну не супер

Страница 7821 из 9768