Bogdan (SirEdvin)
Потому что внешний источник. Пример, внешний источник n раз в день присылает данные, которые нужно обработать. А другой внешний источник дергает апи для формирования _самого_ актуального отчета. Обе операции условно долгие (от нескольких минут). И если данные были у нас в системе, но не попали в отчет - проблемы.
Bogdan (SirEdvin)
Вот и приходится страдать с синхронизацией такой
Bogdan (SirEdvin)
Ну так поток данных какой?
Допустим, 5-10 таких оправок данных и один отчет в день
Nikolay
Николай конпеляет python3.7.3 на debian9
Bogdan (SirEdvin)
Надеюсь, не будет предложения сделать узкое горлышко
Egor
А си тогда што?) Для полноты сравнения
Деревянная палка, из которой теоретически можно состряпать коробку передач из сокола тысячелетия, но для этого потребуется 100 лет. Когда начнётся движение, и включится вторая передача всё перестанет работать, но никто не узнает почему, а водителя вывернет наизнанку от лучевой болезни
Bogdan (SirEdvin)
Хотя это получится семафор все равно
Egor
Да а вебе не нужны потоки
очень даже нужны, если юзать вебсокеты например
Tishka17
Надеюсь, не будет предложения сделать узкое горлышко
Короче очень абстрактно, а Яне силен в функциональщине
Bogdan (SirEdvin)
И вебсокеты там есть
🍁 Jaŭhien
Николай конпеляет python3.7.3 на debian9
Решил все-таки уйти с 2.7.15?
Egor
И вебсокеты там есть
не сомневаюсь
Bogdan (SirEdvin)
Короче очень абстрактно, а Яне силен в функциональщине
Суть в том, что мутабельный стейт все равно есть, и его не всегда получается вынести в системы, в которых уже все написано
Egor
собственно я в свое время столкнулся с необходимостью юзать потоки для того чтобы запилить вебсокеты и подписку на обновления в бдшке
Nikolay
Решил все-таки уйти с 2.7.15?
Свежачок Python 3.7.3 (default, Apr 18 2019, 20:28:17) . Пора.
Anonymous
Кстати, ребзяки. На днях слушая доклад Светлова по АсинкИО наткнулся на утверждение, которого мне страшно не хватало в ентом чатике против некоторых пассажиров, которые "а че тестыне зопилил???!!!Шо как лох?" Многопоточное приложение невозможно покрыть тестами полностью. Это невозможно фундаментально.
Tishka17
И вместо систем приходится делать синхронизацию в приложении
Вот допустим у тебя в одном инстансе событие, а клиент подключен к другому - как послать сообщение?
Tishka17
То есть с ними теоретически наверно возможно, но не просто
Egor
Ух. Скажи как ты это сделал
сейчас пороюсь в проекте и скажу поточнее
Egor
если конечно это был не сарказм)
Tishka17
Да не, интересно как люди готовят
Bogdan (SirEdvin)
Если только
Ну, мы там делаем на проекте и работает
Tishka17
Ну, мы там делаем на проекте и работает
А не проблема что все получают всё?
Tishka17
В смысле брокер
Bogdan (SirEdvin)
Rabbitmq
Tishka17
Rabbitmq
Один Коннект на инстанс и внутри него сам диспатчишь или как?
Bogdan (SirEdvin)
А не проблема что все получают всё?
В нашем случае это вебсокеты, и приложение перед отправкой фильтрует события по информации о пользователе
Tishka17
Угу
Bogdan (SirEdvin)
+ всякие буферы последних n сообщений (не личных) для удобства
Tishka17
Ну это по сути кэш бд
Egor
Да не, интересно как люди готовят
На фронте Vue.js, на бэке Flask (с выпиленным шаблонизатором и иже с ним), flask_socketio (чтобы socketio завёлся юзал gunicorn + gevent + monkey patching), и threading + rethinkdb changefeeds.
Egor
как-то так
Туночка️
im = Image.open('image.gif') rgb_im = im.convert('RGB') r, g, b = rgb_im.getpixel((1, 1)) print(r, g, b) это пиллов или пил?
Egor
да просто смысла нет писать веб на плюсах
Egor
это как умываться вилкой
Anonymous
да просто смысла нет писать веб на плюсах
Помнится, в свое время была отдельная спецолимпиада, когда пацаны на асме унижали плюсовиков в категории "кто быстрее напишет окно функциональное под венду и которое меньше будет жрать памяти". За этим было забавно наблюдать
Egor
окна тоже нет смысла писать на си
Nikolay
kitty dies
Egor
си идеален там, где нужно работать на очень низком уровне
Egor
это в свою очередь компенсирует и отсутствие гарбажколлектора, и его многословность
Egor
более того, других средств тупо нету
Co(n)stantine👨‍🔬
многословность?
Anonymous
Egor
многословность?
"сколько строк кода нужно написать чтобы сделать X"
Egor
и задачи веба требуют от си-программиста написание толмудов, при этом надежность таких систем будет минимальна
Egor
видел я один проектик где на css с препроцессором написали 3д движок для браузера
Egor
звучит эпично, но поддерживать такой проект это пиздец, к тому же если разобраться, под капотом JS (тут был капитан очевидность)
Anonymous
Ребя, а как можно сообразить счетчик посещаемости сайта?
Egor
вот и нецелевое использование си или крестов - не меньшее извращение
Egor
ибо одни языки оптимизированны для работы с данными, другие для работы с железом, третьи для отображения, а между ними разного рода API (здесь тоже был капитан очевидность)
Egor
любая попытка выйти за рамки этой концепции обречена как минимум на создание стапитста ненужных абстракций, усложнение, удорожание
Aragaer
это не мешает мне сесть и написать что-нибудь на си, просто потому что мне это захотелось
Aragaer
и ваще, как хорошо, что я не пишу код за деньги
Aragaer
поэтому могу использовать что захочу для чего захочу
Egor
это не мешает мне сесть и написать что-нибудь на си, просто потому что мне это захотелось
это да) ибо энтузиазм никто не отменял, но с практической точки зрения лучше играть по правилам
Egor
никто ведь не держит продакшн сервер под веб приложение на генте
Egor
и причины более чем понятны
Aragaer
мне нет, но мне это все равно не важно
Aragaer
наверно что-то про деньги, как обычно
Egor
с другой стороны, есть такие видеорегистраторы TRASSIR которые как раз таки на генте, но это простите не веб, тут оптимизация под аппаратную платформу превыше всего
Aragaer
почему сразу не lfs?
Aragaer
или там какой-нибудь buildroot или еще одно из множества готовых систем "собери себе свой линукс"
Egor
наверно что-то про деньги, как обычно
надёжность, отказоустойчивость, стоимость обслуживания, наличие вендоров, которые оптимизируют софтину под разворачивание на определенном дистрибутиве
Egor
потому в проде как правило либо редхат, либо убунту
Aragaer
ну да, про деньги и "конкурентоспособность"
Egor
это прежде всего оптимизация труда
Aragaer
то есть деньги и конкурентоспособность