3 ms·
I have not worked at the scale discussed by Joseph Wilk, but I am pleased so far with my ability to build out micro-services with Clojure. The eco-system around
by lkrubner 12y ago
I have not worked at the scale discussed by Joseph Wilk, but I am pleased so far with my ability to build out micro-services with Clojure. The eco-system around Clojure seems to get stronger every day. I'll mention a few of the libraries that I'm using.
For building out a RESTful API, I found Liberator to be very clever and original:
http://clojure-liberator.github.io/liberator/ http://clojure-liberator.github.io/liberator/
For handling internal queues, I use Lamina:
https://github.com/ztellman/lamina https://github.com/ztellman/lamina
For instance, when saving something to the database, I usually put the data in a closure, put the closure in a Lamina "channel" and let some workers execute the closure when the thread-pool and IO constraints allow.
I just started experimenting with the Ribol conditional restart system, for error handling:
http://docs.caudate.me/ribol/ http://docs.caudate.me/ribol/
For the integration of frontend with backend (MongoDB) we were originally going to use DerbyJS, but I talked the team into trying Sente instead:
https://github.com/ptaoussanis/sente https://github.com/ptaoussanis/sente
We are not done, so the jury is still out, but I am very impressed, so far, with Sente.
For dealing with MongoDB, we use Monger, a library that just keeps getting better and better:
http://clojuremongodb.info/ http://clojuremongodb.info/
In terms of my personal development, I have struggled to find a workflow that allows me to be efficient at the REPL. I am just now starting to use Daniel Szmulewicz "system" which I am hopeful about:
https://github.com/danielsz/system https://github.com/danielsz/system