This event has ended. Visit the official site or create your own event on Sched.

The World’s Largest Global Developer Expo & Conference Series.  

Back To Schedule
Wednesday, February 7 • 9:00am - 9:50am
Implementing Versioned Microservice Discovery in 100 Lines of Node

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Service discovery has been made too complex by combining it with orchestration. There are too many beasts-of-a-tool out there that do too much, and yet can't do versioned microservice deployments. This talk will walk you through 100 lines of Node.js code with no dependencies other than redis, and implement a discovery service with the following features: 1. Semantic versioning of services Services depend on specific versions of other services, so v1.2.3 & v1.3.0 can both be live, and you kill off old services that have no users. 2. Live health checks with inversion of responsibility Don't ping a service under high load with status & health checks, instead let it ping back when it can. If it can't ping back because it's near-capacity, then don't route any more traffic to it! 3. Mocking services during testing & development Should not have to bring up the entire microservices stack to develop one of them. 4. Randomized scheduling So you don't starve any one service, instead pick one at random from the ones available & healthy. 5. No highly-available service discovery service Solving the chicken & egg requirement of a highly available service discovery service, in order to enable other highly available services. Only the service discovery database (redis) needs to be distributed. A surprising number of tools out there simply fail to provide these set of features together, and yet pack in too many other things they want to do. This talk does the above in easy-to-understand 100 lines of Node.js code that you can use & modify with confidence!

avatar for Anup Bishnoi

Anup Bishnoi

Microservices & Serverless. Creator of frameworks and toolchains - Apper. Open Source contributor - Socket.io, Falcor, Three.js. Game Developer at heart, deep in 3D & AR/VR. Hands-on with Full Stack development, love doing Devops.

Wednesday February 7, 2018 9:00am - 9:50am PST
Grand Ballroom -- Workshop Stage 4