All streams
Search
Write a publication
Pull to refresh

Comments 10

Спасибо, полезная вещь, сохранил в закладки. Но вот слово "латентный" используется неверно. Обычно его используют в психологии и около. Например, латентный голубой.)

Спасибо! Тут столкнулись два разных «латентных».

В инженерном контексте «латентность» -это калька от latency (задержка/время отклика)

Ну вот именно, есть хорошее инженерное (и женское) слово "задержка")

Пока ещё не писал на расте, поэтому можете просветить, будет ли использование этой библиотеки чем то отличаться от ситуации, в которой я вручную создам несколько потоков, а в каждом потоке запущу бесконечный цикл обработки сообщения из соответствующей in-memory очереди?

Да, это отличается от пару потоков + бесконечный цикл + своя очередь. Либа даёт готовую обвязку для жизненного цикла потоков, отмены, бэк-прежура и закрепления потоков за ядрами. Четкий паттерн.

На уровне кода это всё равно обычные системные потоки и in-memory очереди, но с уже решёнными острыми углами: корректное завершение, единый хэндл, метки здоровья, выбор CPU, единые ошибки/таймауты. Поэтому получается надёжнее и масштабируется без боли, а оверхед микроскопический.

Либа для масштабирования. При желании можно event-driven бэкенд придумать. Скоро появятся http/nats сервер вокруг этого.

Главная фича - это готовый интерфейс для написания коннекторов и стримов, которые заслуживают отдельного крейта, но база будет здесь.

Вложенность кода, конечно, пугающая. Может оно и быстрое, но разобраться в этом сложновато. Доверие к качеству кода в либе по этому примеру - сильно падает. Но если так и правда быстрее, то доточка в плане самого кода и будет всё прекрасно. Сама тематика для Rust - актуальная, финансовый софт на нём хорошо идёт.

Кстати, возможно я уже видел часть этого кода. Вы случаем не из той компании где тебя помещают в отдельный чат в телеге, не знакомят с командой кроме ведущего менеджера и пары помощников и где тебе надо кодить задачи под солану в гордом одиночестве и с еженедельной оплатой в крипте? А то мир маленький, а код узнаваемый.

давайте по-простому. на том, что понятно и близко особенно мне.

когда вы пишите торговую инфраструктуру, будь это hft или просто алготрейдинг, хочется сделать универсальную штуку, чтобы можно было менять стратегии, как картриджи, и бэктестить их. и быть уверенным, что все остается на уровне в других местах. я делал это много раз по-разному. за года выработался определенный рефлекс. я решил упростить для себя и вас это дело. буду и дальше развивать.

на вас все еще лежит ответственность за написание стратегии (модели) и самих коннекторов. сами коннекторы можно выносить в отдельные крейты и переиспользовать, а также плодить. хотите, моэкс данные/экшены - имплойте интерфейс и в разных моделях юзайте. модель - это бизнес логика (торговая стратегия в мире трейдинга).

и самое главное, что это все делается мной с максимальным уклоном в производительность и сокращение життера

Тогда вам стоит продолжать, пользователи будут.

Вы случаем не из той компании

я понял, о чем вы. но нет

Sign up to leave a comment.

Articles