Forwarded from Segment@tion fault
Программить блокируемые (да и неблокируемые тоже) сокеты на питоне - еще тот адок. На дворе конец 2021 года, а вам предлагаются из коробки сугубо биндинги на recv().
Кто далек от темы - recv(N) позволяет прочитать из сокета N байт, но совершенно не факт, что она прочитает именно N байт - а вдруг там сейчас столько нету? Поэтому правило дедовское - читаем не всё сразу, а recv(BUF_SIZE), причем последнюю часть естественно уменьшаем BUF_SIZE на сколько-там недочитано, а то влезем уже в следующий пакет.
В других языках естественно эти велосипеды давно изобрели, в виде всяких там этих ваших read_exact() и прочих recvall(), которые внутри у себя гоняют буферы, а вам выдают ровно столько, сколько вы запросили.
Но в питоне этого нету, а пара попыток имплементировать recvall() в коробку почему-то закончились провалом.
Зато мля в коробке есть встроенный JSON. Который, естественно, все тут же меняют на какой-нибудь rapidjson, потому что коробочным пользоваться под нагрузками нереально.
Кто далек от темы - recv(N) позволяет прочитать из сокета N байт, но совершенно не факт, что она прочитает именно N байт - а вдруг там сейчас столько нету? Поэтому правило дедовское - читаем не всё сразу, а recv(BUF_SIZE), причем последнюю часть естественно уменьшаем BUF_SIZE на сколько-там недочитано, а то влезем уже в следующий пакет.
В других языках естественно эти велосипеды давно изобрели, в виде всяких там этих ваших read_exact() и прочих recvall(), которые внутри у себя гоняют буферы, а вам выдают ровно столько, сколько вы запросили.
Но в питоне этого нету, а пара попыток имплементировать recvall() в коробку почему-то закончились провалом.
Зато мля в коробке есть встроенный JSON. Который, естественно, все тут же меняют на какой-нибудь rapidjson, потому что коробочным пользоваться под нагрузками нереально.
This media is not supported in your browser
VIEW IN TELEGRAM
Кому интересно, вот так выглядит доказательство 2 + 2 = 4 на Lean. Выкушено отсюда.
Комментарий под одним видео:
One of the things that I love in Rust is the most kindest compiler in the world! It’s like my mom when I was young.
Короче, хотите вспомнить счастливое детство — начните программировать на Rust 😌
One of the things that I love in Rust is the most kindest compiler in the world! It’s like my mom when I was young.
Короче, хотите вспомнить счастливое детство — начните программировать на Rust 😌
Неожиданно Rust Evangelism Strikeforce добралась и до Ёжика Лисичкина (совсем не программерский, и даже не технический канал)
Forwarded from Generative Anton
Тут Bytedance (TikTok) заопенсорсили monoio. Это асинхронный рантайм для Rust, где по треду на ядро CPU. Говорят, что по перфомансу лучше остальных рантаймов, но в случае только сбалансированной нагрузки.
Матерые крабы поправляют молодого: Monoio уникален не моделью "тред на ядро", а тем, что работает поверх io-uring
Матерые крабы поправляют молодого: Monoio уникален не моделью "тред на ядро", а тем, что работает поверх io-uring
👆Платформа для глупых коротких видосиков ТикТок внезапно законтрибьютила в Rust экосистему, удивительно, но обходит токио на некоторых тестах. Чудеса.
Давно не писал в бложик, решил разбавить молчание историей своего первого собеседования.😏
Дело было уже во время аспирантуры и поскольку степендии явно не хватало, жизнь меня заставила подумать о подработке. Я закончил математический факультет с отличием, и почитав эти бесконечные предложения о работе понял, что это слишком муторно и решил устроиться через кадровое агенство.
Обратился в КА, у меня там собрали все данные, какие только можно (дичь по сегодняшним временам!), спросили какое направление. "Направление?" — подумал я и поскольку 1С была самая горячая тема тогда сказал, что вот мол в 1С. Пока кадровичка подыскивала мне "перспективное место", я штудировал дома эти красно-жёлтые книжки, установил ломаную 1Ску себе на комп и начал помаленьку пробовать что-то сделать. Занятие это мне не нравилось, бесила среда, уродское API, интерфейс — вообще всё отталкивало и я это делал через силу ради "великой" цели — будущих миллионов деняк $$$.😂
Наконец, девушка из КА подогнала вакансию в "Шрея корпорейшон", это фармацевтика, рулят индусы. И они искали сертифицированного 1С-ника, но девушка их убедила, что вот, мол, есть молодой, перспективный, с красным дипломом (раньше было время, когда красный цвет диплома был не девальвирован вусмерть) и горящими глазами, и индус согласился меня посмотреть ("Вэчэром, в 15:00" -- ответил индус).
Погода была промозглая, пришёл без опозданий, начали разговаривать. Я говорил, что вот могу в сложнейшую математику, теорию сложности/методы оптимизации там, а эту туфту, 1С изучил сам от и до. Он, дескать, ну что же, раз ты такой крутой, давай покажи -- и потащил меня в бухгалтерию!!! Там молодая помощница главбуха быстро ввела меня в суть проблемы: вот на форме циферки такие-то, а когда начинаем печатать, циферки другие, как исправить? Ещё не оправившись от шока я пытаюсь открыть 1С Конфигуратор, запаролен -- прошу помощницу ввести пароль — вводит, захожу в конфигуратор. Там простыня, нихрена непонятно. Начинаю хаотично искать код, который может повлиять на значение ячейки, моя температура поднимается, я начинаю обливаться потом, язык пересох. Помощница взирает на это всё с немного пренебрежительным взглядом. Проходит почти час, врывается главный индус: "Ну что, исправил?" — я не успел ответить, за меня ответила помощница: "Нет". Я извиняясь, закрываю конфигуратор и с очень смущённым видом начинаю обшаривать пространство в поисках своих вещей. Это был конец.
Но окончание собеседования убило: помощница главбуха снова открывает конфигуратор, набирает пароль, находит нужный файл и говорит: "Это значение формируется здесь, в этой процедуре где-то ошибка". Я ошалелыми глазами не особо понимая, что там написано, просмотрел содержимое экрана, запомнил некоторые детали и быстро покинул помещение.
Шёл домой я курткой нараспашку, наслаждаясь мелким дождём и свежим воздухом. Чувствовал при этом себя максимально паршиво. Придя домой забурился в книжки и свою 1С-ку, понял, как можно было бы формировать эти ячейки, но из-за того, что я запомнил далеко не всё, я так и не понял истинную причину поломки — появилось только несколько гипотез, что могло пойти не так — но на сегодняшний день всё это кажется абсолютно неважным. Я даже благодарен, что судьба удержала меня от падения в эту область знаний, безусловно нужную и важную, хехе. Но там и без меня специалистов хватает...😌
Дело было уже во время аспирантуры и поскольку степендии явно не хватало, жизнь меня заставила подумать о подработке. Я закончил математический факультет с отличием, и почитав эти бесконечные предложения о работе понял, что это слишком муторно и решил устроиться через кадровое агенство.
Обратился в КА, у меня там собрали все данные, какие только можно (дичь по сегодняшним временам!), спросили какое направление. "Направление?" — подумал я и поскольку 1С была самая горячая тема тогда сказал, что вот мол в 1С. Пока кадровичка подыскивала мне "перспективное место", я штудировал дома эти красно-жёлтые книжки, установил ломаную 1Ску себе на комп и начал помаленьку пробовать что-то сделать. Занятие это мне не нравилось, бесила среда, уродское API, интерфейс — вообще всё отталкивало и я это делал через силу ради "великой" цели — будущих миллионов деняк $$$.😂
Наконец, девушка из КА подогнала вакансию в "Шрея корпорейшон", это фармацевтика, рулят индусы. И они искали сертифицированного 1С-ника, но девушка их убедила, что вот, мол, есть молодой, перспективный, с красным дипломом (раньше было время, когда красный цвет диплома был не девальвирован вусмерть) и горящими глазами, и индус согласился меня посмотреть ("Вэчэром, в 15:00" -- ответил индус).
Погода была промозглая, пришёл без опозданий, начали разговаривать. Я говорил, что вот могу в сложнейшую математику, теорию сложности/методы оптимизации там, а эту туфту, 1С изучил сам от и до. Он, дескать, ну что же, раз ты такой крутой, давай покажи -- и потащил меня в бухгалтерию!!! Там молодая помощница главбуха быстро ввела меня в суть проблемы: вот на форме циферки такие-то, а когда начинаем печатать, циферки другие, как исправить? Ещё не оправившись от шока я пытаюсь открыть 1С Конфигуратор, запаролен -- прошу помощницу ввести пароль — вводит, захожу в конфигуратор. Там простыня, нихрена непонятно. Начинаю хаотично искать код, который может повлиять на значение ячейки, моя температура поднимается, я начинаю обливаться потом, язык пересох. Помощница взирает на это всё с немного пренебрежительным взглядом. Проходит почти час, врывается главный индус: "Ну что, исправил?" — я не успел ответить, за меня ответила помощница: "Нет". Я извиняясь, закрываю конфигуратор и с очень смущённым видом начинаю обшаривать пространство в поисках своих вещей. Это был конец.
Но окончание собеседования убило: помощница главбуха снова открывает конфигуратор, набирает пароль, находит нужный файл и говорит: "Это значение формируется здесь, в этой процедуре где-то ошибка". Я ошалелыми глазами не особо понимая, что там написано, просмотрел содержимое экрана, запомнил некоторые детали и быстро покинул помещение.
Шёл домой я курткой нараспашку, наслаждаясь мелким дождём и свежим воздухом. Чувствовал при этом себя максимально паршиво. Придя домой забурился в книжки и свою 1С-ку, понял, как можно было бы формировать эти ячейки, но из-за того, что я запомнил далеко не всё, я так и не понял истинную причину поломки — появилось только несколько гипотез, что могло пойти не так — но на сегодняшний день всё это кажется абсолютно неважным. Я даже благодарен, что судьба удержала меня от падения в эту область знаний, безусловно нужную и важную, хехе. Но там и без меня специалистов хватает...😌