@ru_python

Страница 2225 из 9768
Nikolay
14.02.2017
20:28:02
и отлично оно смасштабируется

в этом и смысл асинхронности, если что

держать больше коннектов и делать больше действий в одном лупе

Google
Nikolay
14.02.2017
20:28:37
пока они быстрые

Eldar
14.02.2017
20:28:42
Сергей
14.02.2017
20:30:32
ну да, понятно. главное сделать быстро, прикольно и современно, а что дальше - без разницы :)

Eldar
14.02.2017
20:30:59
Так то если к await добавить треды то это не будет ускорять код

Сергей
14.02.2017
20:31:15
заказчик только в другой раз найдёт другого разработчика :)

Nikolay
14.02.2017
20:31:38
заказчик только в другой раз найдёт другого разработчика :)
если код работает отлично и несложен - вряд ли)

Rocket
14.02.2017
20:31:53
Так то если к await добавить треды то это не будет ускорять код
Будет, но токо в случае если в треде происходит много io или сишного кода.

Eldar
14.02.2017
20:31:57
Rocket
14.02.2017
20:32:17
Кстати говоря.

Eldar
14.02.2017
20:33:45
заказчик только в другой раз найдёт другого разработчика :)
А вот не факт, если норм сделать с асинхронностью то переделывать придётся не скоро. А потом проще все разделить на 3 реальных процесса

Google
Rocket
14.02.2017
20:34:20
А что на счет file_io? Есть асинхронное решение для объемной работы с файловой системой?

Сергей
14.02.2017
20:34:32
А вот не факт, если норм сделать с асинхронностью то переделывать придётся не скоро. А потом проще все разделить на 3 реальных процесса
ну и зачем вообще нужна тут асинхронность тогда ? чтобы потом переписать на разных процессах?

Eldar
14.02.2017
20:35:25
ну и зачем вообще нужна тут асинхронность тогда ? чтобы потом переписать на разных процессах?
Ну как бы постинг на каналах надо делать асинхронным в любом случае, а при росте нагрузки не этот кусок кода разделять надо будет

Rocket
14.02.2017
20:36:05
Сергей
14.02.2017
20:36:19
внутри процессов - да наздоровье. но всё делать в одном процессе уповая на то, что "и так справится как-нибудь" - это просто не профессионально как-то

Eldar
14.02.2017
20:37:11
В смысле, пишется?
На гитхабе есть набор либ туда ещё aio.http входит там была репка

Rocket
14.02.2017
20:37:47
Сергей
14.02.2017
20:38:17
так-то ты и так можешь запустить один файлик, который запустит все твои процессы

Eldar
14.02.2017
20:38:28
Был у меня заказчик, хотели аналог ofshoreleaks получить за копейки

Rocket
14.02.2017
20:39:00
А что касается "зачем" - ну, как зачем... допустим у меня файл, размером охулиард гигабайт, который я хочу асинхронно распарсить сложным образом.

Eldar
14.02.2017
20:39:52
Ну я там написал драфт, а потом отказались они потому что хотели я чтобы вся порога запускалась 1 файлом

Eldar
14.02.2017
20:40:28
И тут они придумали supervisord ?
Вот вот, потом это добавляется потом то потом се. А бюджет не резиновый

Сергей
14.02.2017
20:40:30
И тут они придумали supervisord ?
про модуль multiprocessing ты конечно не слышал ничего, да? :)

Nikolay
14.02.2017
20:40:31
быстро и асинхронно - это лучше, чем плодить процессы

Eldar
14.02.2017
20:41:40
про модуль multiprocessing ты конечно не слышал ничего, да? :)
С ним тоже не все так просто, если нужна совместимость

Пруфов не будет

Google
Сергей
14.02.2017
20:42:07
С ним тоже не все так просто, если нужна совместимость
для текущей задачи там вообще никаких проблем нет.

Nikolay
14.02.2017
20:42:10
есть еще тонкий момент такой

multiprocessing - медленное говно

Сергей
14.02.2017
20:43:57
multiprocessing - медленное говно
да, запустить и прибить процессы - это конечно очень сложно и долго будет делаться.

понятно всё, в общем. нашли серебрянную пулю (нет).

Eldar
14.02.2017
20:44:39
для текущей задачи там вообще никаких проблем нет.
Таки там тоже придётся запариться, типо написать меин хитрый который будет определять тип процесса в зависимости от задачи и т.д Когда задача стоит на один файл кода

Eldar
14.02.2017
20:45:37
да, запустить и прибить процессы - это конечно очень сложно и долго будет делаться.
Ну тогда уж делай проверку что если процесс наебнется то надо что то делать. В случае с один процессом если падает то падает все и это проще

Nikolay
14.02.2017
20:45:45
сравни скорость работы multiprocessing с gnu parallel, например

тут понимаешь

Nikolay
14.02.2017
20:46:16
для другой задачи я бы поспорил, наверное

но тут асинхронность явно подходит

и хорошо решает задачу

Artem
14.02.2017
20:47:03
сравни скорость работы multiprocessing с gnu parallel, например
все познается в сравнении, сравни с форками под цигвином

Сергей
14.02.2017
20:47:14
асинхронность тут решает задачу только внутри одной цели (общение с юзерами или парсинг). объединять их асинхронщиной - бред.

Nikolay
14.02.2017
20:47:55
именно что предназначение эвентлупа - много задач объединять под собой

в виде корутин

Google
Nikolay
14.02.2017
20:48:24
неблокирующих задач

а здесь именно что все задачи - неблокирующие

самое долгое - это парсинг xml, и то он делается периодически, а не регулярно

Сергей
14.02.2017
20:49:55
и пока парсер наткнулся на тяжёлый фид - бот нам не отвечает. А споткунлся и навернулся парсер - бот вообще помер. Зато асинхрнно.

Nikolay
14.02.2017
20:51:01
наоборот, если навернулся - нам ничего не мешает продолжить и попробовать еще раз позже

Сергей
14.02.2017
20:51:03
ладно, удачи всем. я спать. time.sleep(28800)

Admin
ERROR: S client not available

Nikolay
14.02.2017
20:51:33
а если тяжелый - то можно зааутсорсить задачу в I/O тред, но это вряд ли потребуется

а то заблокировал нам тут тред, понимаешь

Сергей
14.02.2017
20:53:50
я в отдельном процессе, не парься :)

Evgeniy
14.02.2017
20:58:09
я в отдельном процессе, не парься :)
Хорошо бы спать в отдельном треде

Игорь
14.02.2017
21:00:39
прочитал последние мессаги и повис

Dmitry
14.02.2017
21:14:23
Вакансия Responsibilities Develop, test, and maintain robust, scalable, high-quality software. Write highly organized, maintainable code. Solve difficult problems while continuously learning and improving. Implement security and data protection. Design and implement storage solutions. Provide guidance to more junior engineers. Must have 5+ years experience in software architecture and engineering best practices. 3+ years experience in Python and Django. Deep understanding of how to create database schemas that represent and support business processes. Strong unit test and debugging skills. Available during the morning Pacific Time. Comfortable working remotely. Nice to have Experience with frontend development (e.g. JavaScript, ReactJS, single-page applications). Management of hosting environment, including database administration and scaling an application to support load changes. Familiarity with blue-green deployments, canary releases, feature toggles, and other modern deployment techniques. Data migration, transformation, and scripting. Удаленка, денег от 4к$, фултайм

Ах да писать с вопросами можно мне, cv на английском dmitryvolevodz@ezhome.com

Маришка
14.02.2017
22:06:11
@Enchantner я явно что то не то пишу https://github.com/Marina-chan/telegram_poster_bot/blob/master/bot/main.py

Nikolay
14.02.2017
22:09:14
@Enchantner я явно что то не то пишу https://github.com/Marina-chan/telegram_poster_bot/blob/master/bot/main.py
я завтра посмотрю, ладно? сегодня сплю уже почти

Маришка
14.02.2017
22:09:25
Хорошо

Марина
14.02.2017
22:47:33




Google
Aragaer
14.02.2017
23:04:32
Ян Артус Бертранд

а к чему он тут?

A
14.02.2017
23:06:55
опять я и вот по какому вопросу: пытаюсь составить из iterable numpy.array, чтобы избежать лишнее преобразование в список, я использую np.fromiter. ему нужно передать dtype. не совсем понимаю, как сделать это для вот такой конечной структуры: [ [float64, float64], ....]

Stanislav
14.02.2017
23:15:02
ну какойнибудь numpy.fromiter(generator, (float64, float64))

Nikolay
14.02.2017
23:24:33
map a list to tuple?

A
15.02.2017
00:17:49
нет, должен быть array of arrays

array of tuples не прокатит.

Stanislav
15.02.2017
00:21:25
вообще не понимаю в чем суть вопроса лул

A
15.02.2017
00:25:00
import itertools import numpy as np a = [[1.0, 2.0], [3, 4], [5, 6]] b = [[7.0, 8.0], [9, 9], [9, 9]] chain = itertools.chain(a, b) X = np.fromiter(chain, dtype=dt)

чтобы это работало, нужно задать dtype аргумент.

я не понимаю, как там обозначить, что-то с такой формой: [ [float64, float64], ....]

максимум, что у меня получалось это такое - [ (float64, float64), ... ]

мне же нужно, чтоб внутренние массивы были np.array

Марина
15.02.2017
00:32:51


Levent
15.02.2017
00:34:04
/report

53r63rn4r
15.02.2017
00:34:08
Кто вы?

Я Вас не знаю, но перестаньте

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