My default would be to use Spring Boot (Java) because that's what I'm most familiar with and can knock something out without much trouble. Other technologies I'm considering would be Django (Python), Express (Node) JS, Go (Golang), and .NET. I'm planning to read more about them in more detail at some point.
I came across company's blog that attempted to survey and review different web service technologies: http://optimalbi.com/blog/2016/09/28/whats-the-best-restful-web-api-framework-part-6/ 'great', I thought, but after reading in more detail they sort of just summarize and skip over things. For example, Spring (Java) was just skipped over because it seems that the authors just don't like Java for basically no real reason. They didn't review or consider Golang...again for no reason other than they couldn't be bothered. One comment from an author lead me to another blog post about Kotlin, of which they seem to be fond of: http://optimalbi.com/blog/2016/05/20/kotlin-dragging-java-into-the-modern-world/
The opening paragraph reaches too much, I think:
I'm sorry, but to being able to write good, maintainable and human readable code is absolutely possible as a Java developer in their life. The same goes for a Kotlin developer, Python developer, etc. Kotlin being better, safer, more readable code than Java...well that's maybe true. Perhaps even likely. But that's difficult to quantify, because it's quite subjective. I'm pretty sure it's possible to write bad Kotlin code, like it's possible to write bad <insert language of choice> code. Bad code comes from bad developers/teams/culture. Good code comes from good developers/teams/culture. All modern programming languages, Java included, all have fantastic modern features or frameworks over the past to make the life of a developer easier and write great code.Yes, other modern languages may have new features before Java decides to adopt them, but that's a great benefit of Java - it's dependable, got the backing of a huge corporation, used throughout the world, etc. In my organization There's not enough room in any office to swing a cat without hitting someone who knows lots about Java. What about Kotlin? You must be joking.Java has a lot to offer for the modern cloud-driven world, but writing good, maintainable and human readable code has never been part of a Java developers life.This is where Kotlin comes into things. Kotlin is a statically typed language that runs on the JVM (Java Virtual Machine) which is designed to write better and safer Java-like applications that also have a certain level of human readability.
So with this in mind, it makes perfect sense now why the end-result from their tech survey was "we love Express JS because we love Node JS". And that's perfectly fine. But there's no say benchmarking of performance from one language or framework to the next. Their result came down to how they felt about using the technology, experience, interest, etc, and Express ticked all their boxes. And that's perfectly fine. It's just that I came into reading the articles thinking it would be a certain way, and it was actually in a different light. I think my take-home message is to always keep an open mind when reading anything, especially online in a blog, because people will have different opinions, thoughts, and feelings, which may or may not have apparent basis, and that's OK.
Going back to the main topic, I think I'll make an initial implementation in Spring Boot and then move onto seeing how it could be done instead in Express. I'll keep an open mind.