@rudepython

Страница 220 из 1719
Daniil
28.02.2017
09:14:00
Привет всем. Я тут пишу свой опэнсорс проект на питоне. Можете глянуть и полить говном? Любая критика на вес золота

Zart
28.02.2017
09:14:06
хук зца тащит за собой примерно всё

Cykooz
28.02.2017
09:14:31
На продакшене то пофиг на утечку - там один раз запуситл прилжение и оно работает. А вот в тестах его надо 100500 раз создавать и удалять

Zart
28.02.2017
09:14:38
Ок, ушёл читать
http://www.fanstatic.org/en/1.0a5/library.html#bonus-a-minified-version и т.д.

Google
Zart
28.02.2017
09:15:05
я правда не фоннат фанстатика, но он один из самых известных вроде как

Cykooz
28.02.2017
09:15:20
Фанстатик вроде заглох, его не пилят больше

Zart
28.02.2017
09:15:35
я хз что там в моде теперь

Cykooz
28.02.2017
09:15:37
Последний раз когда думал его юзать - они сами что то другое рекомендовали взять

Roman
28.02.2017
09:17:14
Ну а как ты убиваешь wsgi приложение в своих тестах?

Cykooz
28.02.2017
09:17:52
хук зца тащит за собой примерно всё
Без него тоже утекает. Он не виноват.

Zart
28.02.2017
09:18:10
да ну нафиг

Cykooz
28.02.2017
09:18:26
Есть подозрение на ViewDeriverInfo - что то я его часто видел на дереве backref-ов

Roman
28.02.2017
09:18:38
Есть маза, не пирамида "течёт", а не подумал раньше о Regestry ...

Cykooz
28.02.2017
09:19:08
Они ведь эти ViewDeriverInfo вроде как в 1.7 запилили. Попробую проверить на версии 1.6

Google
Roman
28.02.2017
09:19:48
Подчищай за собой

Cykooz
28.02.2017
09:20:12
У меня ничего нет, вообще супер-пупер минимальное приложение пирамиды.

Даже ни одной моей вьюшки нету

Zart
28.02.2017
09:20:36
(cp27) D:\>py Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import pyramid.config >>> def get_app(**settings): ... config = pyramid.config.Configurator(settings=settings) ... return config.make_wsgi_app() ... >>> while 1: ... app = get_app() ...

смотрю в таск менеджер - размер памяти сидит как влитой

Cykooz
28.02.2017
09:21:49
смотрю в таск менеджер - размер памяти сидит как влитой
Ок, проверю твой вариант тоже. Я так то через bootstrap() приложение создаю

Zart
28.02.2017
09:22:01
добавил hook_zca. разницы нет

Cykooz
28.02.2017
09:22:16
Может в их реализации paste какой то гвоздь

Zart
28.02.2017
09:22:26
1.8.1

запихай в общем создание в бесконечный цикл и смотри на расход памяти

Cykooz
28.02.2017
09:24:28
запихай в общем создание в бесконечный цикл и смотри на расход памяти
Я использую objgraph для отслеживания изменений в памяти.

Roman
28.02.2017
09:25:51
Вообще такой наброс прокатил бы на заре пирамиды.

Cykooz
28.02.2017
09:27:32
Ну вот блин с Deferred это вообще явный факап у них class Deferred(object): def __init__(self, func): self.func = func @reify def value(self): return self.func() def resolve(self): return self.value После того как value была вызвана, там явно уже больше нет необходимости в self.func, которая как оказалось может содержать ссылку на конфигуратор.

Пару строк в этот код для удаления self.func - и конфигуратор больше не утекает

Zart
28.02.2017
09:29:06
а для чего этот костыль...

Cykooz
28.02.2017
09:29:15
Хотя возможно дело в том что сам Deferred у меня почему то утекает, если бы не утекал, то и с конфигуратором было бы всё ок

А хер знает - это конфигуратор такое создаёт. Видимо для вот этой своей "двухфазной" конфигурябильности

Zart
28.02.2017
09:30:44
э

Cykooz
28.02.2017
09:31:02
Вот тут оно юзается config.add_view()

Google
Zart
28.02.2017
09:31:03
скорее всего для новой фичи

Cykooz
28.02.2017
09:32:02
discriminator = Deferred(discrim_func) ... view_intr = self.introspectable('views', discriminator, view_desc, 'view') ...

def discrim_func(): # We need to defer the discriminator until we know what the phash # is. It can't be computed any sooner because thirdparty # predicates/view derivers may not yet exist when add_view is # called.

Zart
28.02.2017
09:33:39
так... а я не на тот процесс смотрел похоже

Cykooz
28.02.2017
09:33:44
Ну в общем я наверное не ошибся - это из-за predicates/view derivers появилось

так... а я не на тот процесс смотрел похоже
И как, утекает у тебя память?

Zart
28.02.2017
09:38:16
на тривиальном течет, да. проверил до 1.4.х - везде течет 8)

Cykooz
28.02.2017
09:39:48
Печалька.

Толи никто не пишет функциональных тестов под пирамидку, либо все проекты на ней мелкие и не вызывают большой утечки в тестах.

Zart
28.02.2017
09:41:42
добавление gc.collect в цикл ничо не дало

H
28.02.2017
09:41:54
я пишу сразу хорошо, зачем мне тесты? ?

Zart
28.02.2017
09:42:25
1.1 тоже тёк. 1.0 проверять не буду, бо там вебоб надо древний

H
28.02.2017
09:43:32
я б зобанил еще

Andy
28.02.2017
09:43:34
Вас зобанють, а ты не пиши новых

Daniil
28.02.2017
09:43:47
Так попросили же линк

Zart
28.02.2017
09:43:52
я б зобанил еще
мне пока лень

Daniil
28.02.2017
09:44:04
Ок, удалил

Zart
28.02.2017
09:44:07
но ему пизда

H
28.02.2017
09:44:20
:))

Daniil
28.02.2017
09:44:30
Отнюдь в правилах не написано, что ссылки на опэнсорс нельзя

Google
Andy
28.02.2017
09:45:00
Отнюдь в правилах не написано, что ссылки на опэнсорс нельзя
разбей на две части – апи враппер(лол, кажется у инстаграма есть питон библиотека) и бота Может лучше будет

Zart
28.02.2017
09:45:19


Alexey
28.02.2017
09:45:27
:D

H
28.02.2017
09:45:38
Отнюдь в правилах не написано, что ссылки на опэнсорс нельзя
дело не в опенсорсе, а то на что ссылка, на контент

Zart
28.02.2017
09:46:05
сеошников и прочих накруточников и напёрсточников не жалуют

Daniil
28.02.2017
09:46:51
Ну я не юзаю его и денег с него не имею.

Так что на свой страх и риск

Admin
ERROR: S client not available

H
28.02.2017
09:47:53
мы тебе пулреквесты пришлем в кутузку :)

Alexey
28.02.2017
09:48:00
=D

Andy
28.02.2017
09:48:17
Так что на свой страх и риск
А еще половину функционала инстаграма можно юзать без авториазции

Daniil
28.02.2017
09:50:21
Да, но раз авторизировались, так почему бы не делать все однотипными запросами. Апи и бота разделять не очень, так как и то, и то допиливается. Пока удобней все в одном месте держать.

Все равно спасибо.

Zart
28.02.2017
09:50:45
любопытно

import, config=Configurator() while 1: config.make_wsgi_app() # не течет while 1: config = Configurator() # не течет while 1: config = Configurator(); config.make_wsgi_app() # течет

это каг?

Stanislav
28.02.2017
09:52:03
Daniil
28.02.2017
09:52:32
Скину в лс, тут админы rude

Andy
28.02.2017
09:53:11
:D

H
28.02.2017
09:53:39
цп в лс!

Google
Eugine
28.02.2017
10:06:58
вери рюд админы

любая цмска так выглядит но это надо же кому то делать
Стас, это ты статью писал? https://habrahabr.ru/post/322332/

Alexey
28.02.2017
10:09:00
вери рюд админы
Rude DevOps надо запускать

Stanislav
28.02.2017
10:09:09
нет ты что какие статьи

точно не я

более того не понимаю почему похоже что я

Alex Milushev
28.02.2017
10:09:53
Stanislav
28.02.2017
10:09:56
каокй то треш же

Alexey
28.02.2017
10:10:24
а нахуя?
Если есть руд админы к которым цп бегают показывать — то пусть будет руд девопс.

Eugine
28.02.2017
10:10:53
ты же расстраивался, что для натурального джангоеба нет работы :( один фуллстек

Alex Milushev
28.02.2017
10:11:11
просто Я слабо себе представляю rude devops, так как даже со старта слать нахуй это норма

Stanislav
28.02.2017
10:11:46
Другими словами получилась ситуация, что если ты не живешь в Москве, Санкт-Петербурге и не собираешься ехать их «покорять», то тебе практически негде получить свою первую работу. ну все так да

Alexey
28.02.2017
10:12:02
просто Я слабо себе представляю rude devops, так как даже со старта слать нахуй это норма
Я четыре раза перечитал твою реплику, словно ты что-то пытаешься передать мне, чем-то поделиться, но ебать ни хуя не понятно там, конечно.

Stanislav
28.02.2017
10:12:07
у моих ебенях и фулстека нет

Alex Milushev
28.02.2017
10:12:41
Я четыре раза перечитал твою реплику, словно ты что-то пытаешься передать мне, чем-то поделиться, но ебать ни хуя не понятно там, конечно.
в плане у девопсов послать нахуй со старта это вполне не грубо и Я слабо представляю, что такое грубо в этом случае

Stanislav
28.02.2017
10:13:23
и речь была о другом

о массовом вымирании чистого бекенда вообще

Stanislav
28.02.2017
10:14:23
я не понимаю почему аватарка туфля на каблуке. вы что пидоры ?

Страница 220 из 1719