Ask HN: Best language for micro services for a startup
I'm in a startup and we're looking for the right language to build our micro services. Our Android/iOs mobile apps and our website are accessing our database using their own respective PHP backends. We're working on building a set of services which'll serve as a common backend for all these. Our team has 15 odd developers ranging from newbies to people with 7 years of experience. Look at the linked google spreadsheet where I've jotted down certain options that I could. What's your suggestion?
https://docs.google.com/spreadsheets/d/1vfP9lF5Xeeov6_aRriDW2IyNZMcUKqQGxgqu5sn0Rks/edit#gid=0
8 comments
[ 2.7 ms ] story [ 36.6 ms ] threadEdit
A few more reasons:
- Elixir/Phoenix outperforms quite everything for some usecases https://twitter.com/julianobs/status/614416512825323520
- Elixir Code is well suited for longer maintenance modes http://blog.plague-dev.de/posts/Maintainable-Code-in-Elixir
- Elixir unions the advantages of monolithic apps and microservices and is very easy to scale http://blog.erlware.org/monolith-vs-microservices-where-to-s...
1. http://stackoverflow.com/questions/24812933/golang-null-type... 2. http://stackoverflow.com/questions/11889907/how-to-convert-j...
From a business perspective picking a language just isn't that important, it will NOT be the thing that makes you (un)successful.
So I'd go the other way, what language do the most people want to work on and has the least "I'll quit if we pick that" factor? Just use that.
- You can use pretty much any JVM library
- You can execute Scala applications in a JVM which is a pretty common platform for other tools. Think CI, deployment on servers, etc.
- Akka Cluster out of the box. On other systems you have to build your custom communication pipelines for messaging between your multiple instances of the services