[#] Лепим микросервис
habrabot(difrex,1) — All
2016-11-18 12:30:03


Подкинули задачу сделать микросервис, который получает данные от RabbitMQ, обрабатывает, и отправляет данные дальше по этапу в RabbitMQ. После отправки задания, я посмотрел на то что поучилось. Оказалось, что этот набор компонентов можно использовать для быстрого прототипирования [pipeline архитектуры][1]



Используемые компоненты:


* [REACT-CPP][2];
* [AMQP-CPP][3];
* [RapidJSON][4];
* [LevelDB][5];
* [Easylogging++][6].

Для примера буду делать микросервис для выдачи рейтинга игроков. От ядра системы в микросервис приходят следующие сообщения:


* _player\_registered(id,name)_;
* _player\_renamed(id,name)_;
* _player\_won(id, points)_.

Сервис раз в минуту должен отсылать сообщение с содержимым рейтинга.Рейтинг сортируется по набранным очкам за календарную неделю.

[Читать дальше →][7]

[1]: https://habrahabr.ru/company/oleg-bunin/blog/310418
[2]: https://github.com/CopernicaMarketingSoftware/REACT-CPP
[3]: https://github.com/CopernicaMarketingSoftware/AMQP-CPP
[4]: https://github.com/miloyip/rapidjson
[5]: https://github.com/google/leveldb
[6]: https://github.com/easylogging/easyloggingpp
[7]: https://habrahabr.ru/post/315268/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut