@ru_python

Страница 6044 из 9768
Tigran
27.07.2018
13:10:17
собственный сервак. просто на виртуалке стоит.
и эта виртуалка даёт тебе 4гб? точно?

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

Victor
27.07.2018
13:11:42
так. и ты поставил обработчик событий ping и он не срабатывает?
на стороне клиента? да. но вопрос в том что в клиент не приходит ping с сервера, хотя по идее должен

madmonday.ru
27.07.2018
13:12:07
Кто-нибудь сталкивался с такой проблемой у tornado https://pastebin.com/7ukWTJM6 ?

Google
0ri0n
27.07.2018
13:12:23
если по памяти падает, это в любом случае не вопрос к питону
принял попробую на других машинах. А есть ли придел в потоках. сколько потоков использовать ? и как расчитать

Denis
27.07.2018
13:12:57
Смотря для чего

Tigran
27.07.2018
13:13:17
на стороне клиента? да. но вопрос в том что в клиент не приходит ping с сервера, хотя по идее должен
а у тебя параллельной работы никакой не идёт в этом сокете? the timer is reset on any data reception

то есть, если постоянно какие-то сообщения передаются, он не посылает пинг, потому что нафиг надо

Victor
27.07.2018
13:14:44
а у тебя параллельной работы никакой не идёт в этом сокете? the timer is reset on any data reception
простой код, примерно как здесь http://aiohttp.readthedocs.io/en/v0.20.0/web.html#websockets

Tishka17
27.07.2018
13:14:47
Ну там coredump

Tigran
27.07.2018
13:15:25
простой код, примерно как здесь http://aiohttp.readthedocs.io/en/v0.20.0/web.html#websockets
а на стороне клиента? часто посылаются сообщения?

0ri0n
27.07.2018
13:15:42
Ты что там вообще делаешь такое? И покажи стектрейс падения
падает не питон. а кажись операционка режит работу скрипта.

Tishka17
27.07.2018
13:16:30
Сегфолт это падение

Google
Tishka17
27.07.2018
13:16:42
Если бы Ос убивала через oom killer, у тебя бы даже сегфолта не было, а просто пропал процесс

abulhair
27.07.2018
13:16:48
Всем привет .

Tishka17
27.07.2018
13:16:50
Хотя может сигтерм криво обработан

0ri0n
27.07.2018
13:17:14
Потоки пофиг. Но каждый поток это дескрипторы и память на стэк
Ошибка сегментирования и все. без ошибок в скрипте

Victor
27.07.2018
13:17:32
а на стороне клиента? часто посылаются сообщения?
есть простой больше указанного времени в heartbeat. Читал, что счетчик секунд на сервере обнуляется, если прислать сообщения

abulhair
27.07.2018
13:17:43
Кто профи итд ответьте . Когда учишь язык програмирования нужно запоминать все при все ?

?Sviatoslav
27.07.2018
13:17:45
Всем привет .
http://neprivet.ru

abulhair
27.07.2018
13:18:06
ок

Tishka17
27.07.2018
13:18:30
Ошибка сегментирования и все. без ошибок в скрипте
Что делает скрипт, какие библиотеки юзаются? Что замечал перед падением ещё кроме памяти?

Stas
27.07.2018
13:24:58
class LogLine(object): def __init__(self, line): self.line = [] matched = self._group_string(line) if matched: self.line.append( (matched.group(1), matched.group(2), matched.group(3), matched.group(4), matched.group(5)))

как в случае если не матчед

не создавать объект и можно ли так

или это не правильно?

Denis
27.07.2018
13:25:52
Не создавай

Stas
27.07.2018
13:27:12
инит же создает всегда экземпляр класса

Denis
27.07.2018
13:27:53
Не вызывай инит

Denis
27.07.2018
13:29:17
Внутренний цппшник триггернулся

Google
Donaudampf
27.07.2018
13:34:47
не создавать объект и можно ли так
создай классметод, который решит, создавать ли объект или вернуть какой-нибудь None в случае, если этого не нужно

Stas
27.07.2018
13:37:52
Ага. __new__
у меня то что парсит строку и возвращает уже то что мне нужно

внутри класса

в new и классметод же self не передается

я короче чтото не понимаю)

Aragaer
27.07.2018
13:38:40
потому что никакого self в __new__ еще не создано

Stas
27.07.2018
13:39:12
тоесть мне вызывать методы через имя класса?

в new

Denis
27.07.2018
13:39:59
Ты и конструктор через имя класса вызываешь

Если тебе не нужно создавать экземпляр, как ты его методы собираешься вызывать?

Stas
27.07.2018
13:40:34
ты имеешь ввиду super?

Stas
27.07.2018
13:40:49
внутри класса есть метод проверки

Donaudampf
27.07.2018
13:40:54
в new и классметод же self не передается
в классметоде уже вызовешь init косвенно через инстанцирование. Подозреваю, чтл _group_string нечего делать на уровне инстанса и через self его не надо вызывать. __new__ тут вообще никаким боком

Aragaer
27.07.2018
13:40:57
в new можно сначала понять, надо ли вообще создавать экземпляр

Denis
27.07.2018
13:40:58
Определись для начала, что именно ты хочешь сделать

Stas
27.07.2018
13:41:16
вот, то что Aragaer сказал

Denis
27.07.2018
13:41:49
Тогда, естественно, ты не можешь для этого использовать методы уже созданного экземпляра

El Mariachi
27.07.2018
13:42:04
Определись для начала, что именно ты хочешь сделать
тыщу раз уже вопрос задавался... чтоб при вызове конструктора obj = MyClass(some_par), возвращался None внекоторых случаях

Tigran
27.07.2018
13:42:34
но зачем так делать

Google
Tishka17
27.07.2018
13:42:38
Ага. __new__
class MyStr: def __new__(cls, val): if isinstance(val, str): return super().__new__(cls) def __init__(self, val): print("init", val) x=MyStr(1) print(x) x=MyStr("1") print(x)

Держите мой говнокод :)

El Mariachi
27.07.2018
13:42:54
но зачем так делать
чтоб try except не делать

Tigran
27.07.2018
13:42:56
нинада так делать

Admin
ERROR: S client not available

Tigran
27.07.2018
13:42:59
пишите классметоды

Stas
27.07.2018
13:43:07
так скажите как правильно)

Donaudampf
27.07.2018
13:43:08
да блин, пытаться вызвать метод класса до того, как определился, нужно ли вообще создавать этот экземпляр - это же очевидный косяк в архитектуре

Denis
27.07.2018
13:43:09
В статически типизированных языках за такое ногами бьют

Stas
27.07.2018
13:43:10
я просто не знаю как

Tigran
27.07.2018
13:43:12
которые делают трай эксепт

Stas
27.07.2018
13:43:47
есть класс который в iter создает объекты класса над которым я засел

построчно читается файл, разбивается строка на регексп

и если она подходит под регексп

я хочу создавать объект

Denis
27.07.2018
13:44:39
А если нет?

Stas
27.07.2018
13:44:46
если нет ничего не создавать

чтобы у меня класс в котором итер

итерировал уже отобранные мне строки

Tigran
27.07.2018
13:45:11
нахера эту логику в конструктор-то заносить

Google
Denis
27.07.2018
13:45:11
Кинь эксепшен в ините

Tigran
27.07.2018
13:45:12
ну камон

Tishka17
27.07.2018
13:45:19
А что не так с эксепшеном?

Stas
27.07.2018
13:45:34
потому что в файле есть и не подходящие под регексп строки

и всегда будет падать по эксепшену

Тигран я не знаю просто как сделать

Tishka17
27.07.2018
13:45:48
Типичный ValueError

Denis
27.07.2018
13:45:49
А в итере его лови и скипай

Stas
27.07.2018
13:45:50
и пробую все подряд)

Tishka17
27.07.2018
13:45:59
Donaudampf
27.07.2018
13:45:59
и если она подходит под регексп
так не проще вообще вынести проверку регэкспа наружу и тупо if is_match: do_smth(Logline(...))

Stas
27.07.2018
13:46:00
а

с эксепшеном понял

круто

спасибо

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