Which stack would you use for a new API service in 2017?

2 points by pageandrew ↗ HN

4 comments

[ 0.23 ms ] story [ 12.2 ms ] thread
Whatever you're comfortable with, it doesn't matter what you use as long as the api functions how you need it. Although I would recommend looking into Golang.
It depends what the API is supposed to do of course.
We're using JAX-RS (Apache CXFRS), JPA, Apache Camel, ActiveMQ, and Apache ServiceMix for new API services right now. Having Camel in the stack is really nice, since it makes it easy to add all sorts of custom routing options if you want to multiple things in response to a message, etc. It's pretty cool for something like this: We launch a long running provisioning operation in response to an API request, and when it finishes we just drop a message on a JMS queue. Then we have Camel routes to do things like "send an XMPP message to our internal people who care" and "send an email to the customer saying 'your environment is ready to use'", etc.

That said, the one thing we aren't doing yet is anything with GraphQL. If / when we go there, that will probably have some effect on the stack.