В общем, пока я успешно выполняю свой «план» и готов сказать, что это очень интересное и эффективное средство для расширения кругозора и избавления от того, что я называю «мозговой стагнацией».
Но я чувствую, что у меня опять возникает ситуация, о которой я уже писал. В очередном порыве знакомства с «новым» я вновь обратил свое внимание на Erlang, а недавний пост avva о нём же подстегнул моё любопытство.
После прочтения нескольких статей и написания пары утилит, я привязался к эрланговскому pattern-matching, реализации акторов, абсолютно прозрачному message passing между процессами и другим фишкам.
Сегодня я проснулся с желанием реализовать на эрланге своё key-value хранилище. Пока концепция зарождается в моей голове и выглядит несколько туманно, но я определенно хочу видеть там следующее:
- в качестве ключей должна быть возможность использования данных типа string, list, hash;
- атомарные операции над значениями (конкатенация строк, добавление/удаление данных листа...);
- возможность сортировать значения, взятые по нескольким ключам;
- возможность задавать ключам время жизни;
- фильтр Блума для проверки наличия ключа без обращения к диску;
- внешний REST API;
- возможно, веб-интерфейс.
На выходных начну делать базовый функционал.
Минутка лирики. Мне кажется, что при текущем развитии таких инструментов как AngularJS, подобного хранилища в связке с простым веб-сервером, отдающим статику, должно хватить для любого простого веб-сервиса. То есть можно обойтись полностью без бэкенда, делая запросы прямиком в API хранилища, реализуя всю логику прямо на клиенте. Наверное, где-то уже так и делают, а, может быть, это просто мои фантазии.
P.S. Как оказалось, вести дневник итогов каждый месяц мне очень сложно. Я не вел его аж с ноября. Очень многое произошло за это время. Из основного сообщу, что я теперь счастливый муж: мы с Ю. сыграли свадьбу, а на «медовый месяц» улетели в Израиль :)
Комментариев нет:
Отправить комментарий