Pull to refresh
10
0
Максим Давиденко @ElMaxo

User

Мы просто ведем все расчеты в копейках, то есть все суммы представлены в виде целых чисел. При этом есть два типа систем: тысячные и т.д. доли денежных единиц отбрасываются, то есть используется только целочисленная арифметика, либо используется вычисление с хвостами, где основная сумма хранится в виде целого числа в копейках, и хранится хвост от последней операции с точностью до 5 или 7 знаков, этот хвост далее складывается с результатом следующей операции и в дальнейшем производится округление до копеек (необходимо, например, при начислении процентов на маленькие суммы).
Когда увидел отсылку к Amazon Dynamo — сразу почему-то подумал, что речь пойдет о Riak, Erlang, Consistent hashing, Riak Pipes и т.д. Мы еще в далеком 14-м году это пробовали, но потом забросили, к сожалению. Очень интересны технические подробности. Кстати, работники в команду не нужны?:)
Разрешите два вопроса:
1. Используется ли Flink CEP в вашем проекте для определения паттернов в потоке событий?
2. Каким именно образом используется Redis в качестве хранилища стейтов в Flink? Дописывали поддержку в качестве state backend или через AsyncIO?
Имел ввиду работу с приватной таблицей через gen_server:call. В этом случае, кстати, в зависимости от задачи, можно вобще не использовать ets, а хранить счетчики в state ген-сервера.
Нет, из супервизора создавать ets я не предлагал:) Я начал смотреть код, когда увидел gen_server — сразу подумал, что работа со счетчиком идет через него (gen_server:call), и удивился, что по факту сервер ничего не делает. Для примера я предложил поместить создание и удаление таблицы в application controller. В этом случае пришлось бы сделать таблицу named public. Как такового паттерна здесь скорее нет. Я на практике использовал оба варианта: публичная таблица, создаваемая при старте приложения — как правило это какой-то кэш. Либо второй вариант — private таблица, вся работа идет через api родительского процесса. В примере получился микс, который новичка может сбить с толку.
Не понял к чему Вы. В примере gen_server не делает ничего, кроме как создает ets при старте и дампит ее в файл при завершении. Как по мне — ген_сервер для этого совсем не нужен, для примера достаточно использовать коллбэки application. Если и использовать gen_server — то работать с ets полностью через него, об этом как раз в коментариях ниже
Скажите пожалуйста, зачем для поднятия ETS из файла и сохранения в файл Вы используете gen_server? Не проще ли это сделать в application в start и stop коллбэках?
Спасибо за Ваши статьи. С нетерпением жду следующих
Это просто фантастика. Преклоняюсь перед Вашим профессионализмом. Спасибо за интересную статью
Спасибо, что убили мою самооценку:( Я вот математику забыл наглухо. Это все из-за прикладных задач. Ну вот, теперь я не программист
пролапс митрального клапана


Блин только хотел заказать… А вобще — пошел дождь, к машине из магазина побежал, а не пошел — и все. Не больше чем гиковская игрушка, имхо.
В последнее время на хабре обращать внимание на минусы на хабре — себя не уважать. Иной раз и писать не хочется из-за такого объема ханжества.
Работает на основе сигналов и слотов, схема похожая на работу с коллбэками, но гораздо приятнее. Лично меня асинхронный метод, который выглядит как синхронный в Go сбивает с толку.
Смотря где и в каких ситуациях. В том же Erlang — это единственный способ не разводя кучу вложеных case-сов или монструозных конструкций прервать выполнение и вернуть результат.
Я думаю подошел бы идеально, как разработчик на Erlang говорю:)
Отличная статья. Только жаль, что не имею к независимым разработчикам никакого отношения… Дико любопытно, какие все же продукты разрабатываете Вы?
Согласен, я горжусь что у нас есть подобное
Я к тому, что нет никакой необходимости вводить дополнительные уроки по поведению именно в сети. Еще раз повторюсь, ребенок с развитой социализацией, знающий рамки и в сети будет вести себя порядочно. Все, чем отличается сеть от реальности — меньше шансов получить по голове за свои действия и можно казаться кем хочешь. Впрочем этим и взрослые страдают
Меня тоже это радует, у моего сына (8 лет) свой акк, сидел под моим и меня завалили рассылками по Фиксикам и соревнованиям монстер-траков. Очень жду нововведения
По уму — пора нормально воспитывать детей, воспитаный ребенок будет вести себя нормально хоть в сети, хоть в реальной жизни. Более того, считаю социалки для детей до переходного возраста злом.

Information

Rating
Does not participate
Location
Краснодарский край, Россия
Date of birth
Registered
Activity