
Viktor
05.12.2018
19:22:46

Винни
05.12.2018
19:23:04
' '.join(list)
можно и циклом, но нету смысола

Viktor
05.12.2018
19:24:30
разобрался, благодарю

Google

Nikolay
05.12.2018
19:24:50
не знаю

Винни
05.12.2018
19:24:57

Сергей
05.12.2018
19:26:24
' '.join(['a', 'b', 'c'])
ты не про это?
У этого метода есть один недостаток - все элементы списка должны быть строкового типа. Есть альтернативный способ вывода списка без скобок и запятых:
print(*list, sep=' ')

Viktor
05.12.2018
19:28:33

LighteR
05.12.2018
19:29:38

Вячеслав
05.12.2018
19:30:32
Всем доброго времени суток.

LighteR
05.12.2018
19:30:53

Tishka17
05.12.2018
19:35:53

LighteR
05.12.2018
19:37:37
Да, запускаю
Ну я вот тоже. Но ведь те, кто считает, что должно быть один процесс - один контейнер, могу сказать: а запустите лучше n контейенров вместо n воркеров
и в целом я не могу сходу придумать аргументов против такого подхода кроме накладных расходов на мастер-процесс

Denis
05.12.2018
19:40:31
n воркеров это почти один процесс

LighteR
05.12.2018
19:41:31

Google

Denis
05.12.2018
19:42:03
А вот это изврат
Кроме uwsgi, под ним могут быть другие контейнеры
Плюс перезапускать их отдельно ты не сможешь

LighteR
05.12.2018
19:42:56

Denis
05.12.2018
19:45:01

LighteR
05.12.2018
19:45:59

Denis
05.12.2018
19:46:38

LighteR
05.12.2018
19:47:31
Есть reload
Я новый конфиг как должен попасить в контейнер с nginx'ом?

Denis
05.12.2018
19:47:48

LighteR
05.12.2018
19:48:09
нет, volume'ы для этого еще большее зло
как это версионировать?

Denis
05.12.2018
19:48:25
Пока не вижу минусов
А зачем конфиги на проде версионировать вместе с кодом? Админ при накатывании разберется
Они могут меняться по не зависящим от кода причинам, и что, коммитить все?

LighteR
05.12.2018
19:49:52

Denis
05.12.2018
19:50:02

LighteR
05.12.2018
19:50:12

Denis
05.12.2018
19:50:18
Код для разработчиков, конфиги для админов

LighteR
05.12.2018
19:50:36
а Dockerfile тоже не в репе с кодом должен быть?

Google

Denis
05.12.2018
19:50:39
Зачем всем знать, по какому пути там сертификат лежит и какой там пароль от базы?
Dockerfile в репе, и он меняется только с кодом

LighteR
05.12.2018
19:51:09

Denis
05.12.2018
19:51:36
Я сейчас говорю про развертывание сайта

LighteR
05.12.2018
19:51:40
т.е. это часть эксплуатации

Denis
05.12.2018
19:51:52
Это совершенно другой конфиг
И он нужен в том числе для разработки
Возможно, другой, но все же
Деплоят иногда вообще без докера

LighteR
05.12.2018
19:53:03
Я сейчас говорю про развертывание сайта
Ну раз ты сказал про сертификаты. То ssl терминируется на балансировщиках, а они как правило существуют отдельно от веб-серверов, которые уже отдают приложение

Denis
05.12.2018
19:53:33

LighteR
05.12.2018
19:54:21
у тебя за балансировщиками могут быть сотни различных приложений, каждому из которых нужны свои особенные конфигурации веб-сервера
ты же не будешь все это тащить на балансировщики?

Denis
05.12.2018
19:55:21
А зачем этим приложениям каждому по нгинксу? Сейчас все и так умеют http слушать

LighteR
05.12.2018
19:57:06

Denis
05.12.2018
19:58:01
Я сейчас не про огромные кластеры с тысячами микросервисов, а про стандартные сайты

LighteR
05.12.2018
19:58:38

Denis
05.12.2018
19:58:39
Там можно себе позволить из балансировщика сразу ходить куда надо

Alex
05.12.2018
19:58:45

Google

LighteR
05.12.2018
19:58:46
можно

Denis
05.12.2018
19:58:48
А если два, что меняется?

Alex
05.12.2018
19:58:56
если я правильно понял о чем речь

Denis
05.12.2018
19:59:12
Начали за здравие, а закончили за хайлоад

LighteR
05.12.2018
20:00:10
А если два, что меняется?
А если два, то у тебя твой единственный nginx должен знать особенности каждого из приложений. А еще проблема с атомарностью возникает
у тебя приложение отдельно, nginx-конфиг отдельно

Admin
ERROR: S client not available

LighteR
05.12.2018
20:00:30
и нужно это все как-то синхронизировать

Denis
05.12.2018
20:01:16

LighteR
05.12.2018
20:02:00

Denis
05.12.2018
20:03:46

LighteR
05.12.2018
20:04:13
вручную синхронизировать изменения?

Denis
05.12.2018
20:04:31
Почему нельзя влиять на конфиг балансировщика

Alex
05.12.2018
20:04:59

LighteR
05.12.2018
20:05:16
это будет работать, но поддерживать и управлять этим будет сложно

Tishka17
05.12.2018
20:06:56

LighteR
05.12.2018
20:09:29

Google

Viktor
05.12.2018
20:09:51
Подскажите как удалить элементы строки зная номера их позиций?

LighteR
05.12.2018
20:09:55
чтобы не направлять туда лишние запросы и не создавать очередь запросов в самом контейнере

Скрудж
05.12.2018
20:10:15
Ребят, есть кто из геймдева? Мне очень сильно нужна ваша помощь. Отпишите в ЛС. Хочу в бота внедрить экономику, чтобы пользователь мог как-то зависать в игре, а не фигней страдать. Сорри за оффтоп

Alex
05.12.2018
20:10:46
лучше не удалять элементы строки а составить новую строку

Viktor
05.12.2018
20:12:12

Alex
05.12.2018
20:12:40

Nikolay
05.12.2018
20:13:27

Viktor
05.12.2018
20:14:32
но удалять возможно?
это не удаление, а конкатенация двух срезов - прием, который выглядит как удаление

Sfy
05.12.2018
20:28:28
В PEP8 при переносе строк с операторами рекомендуют бинарный оператор переносить в начало новой строки.
А что касается запятых?
Не лучше ли их для видимости выносить на новую строчку?

LighteR
05.12.2018
20:28:48
Если админы общие, почему нет?
А еще в кластере одновременно могут работать разные версии одного и того же приложения. Как выходить из такой ситуации когда тебе нужно внести обратнонесомвестимые изменения в nginx-конфиг?

Alex
05.12.2018
20:31:01

Sfy
05.12.2018
20:33:30
Ну вот например, к слову о leading comma vs trailing comma:
/ error in standard style
var a = "ape",
b = "bat",
c = "cat",
d = "dog"
e = "elf",
f = "fly",
g = "gnu",
h = "hat",
i = "ibu";
// error in comma-first style
var a = "ape"
, b = "bat"
, c = "cat"
, d = "dog"
e = "elf"
, f = "fly"
, g = "gnu"
, h = "hat"
, i = "ibu";
Это не Python, но идея понятна.
А в PEP8 я не нашёл, что leading comma — плохо.

Alex
05.12.2018
20:34:23
Нет, это уродство