InfoQ.com is launching a new series of podcasts with some of the top CTOs, engineers and technology directors. You can keep up to date with the podcasts via our RSS feed, and they are available via SoundCloud and iTunes. From this page you also have access to our recorded show notes. They all have clickable links that will take you directly to that part of the audio.
For our inaugural podcast QCon chair Wesley Reisz talks to Adrian Cockcroft, who works for Battery Ventures where he advises the firm and its portfolio companies about technology issues and also assists with deal sourcing and due diligence.
Prior to joining Battery, Adrian helped lead Netflix’s migration to a large-scale, highly-available, public-cloud architecture and the open sourcing of the cloud-native NetflixOSS platform.
Key Takeaways
- Over the last year a large number of frameworks and libraries for building microservices have emerged and we're seeing a lot of rapid change.
- The stack you choose will often be based on the main language you use, so for example Netflix’s stack is language agnostic but the tooling is very Java-centric.
- Architectural choices can have a profound impact on success, so something as simple as an overly long timeout with retries can cause your system to suffer from a congestion collapse problem. Have a large timeout at the edge, and progressively smaller and smaller timeouts as you get deeper into the system.
- Start with a monolith and move to a distributed architecture when you need to because of team size or to get better separation of concerns.
- Other disruptive trends include “serverless architecture” like AWS Lambda, and open source itself which is perhaps the true definition of disruptive.
Subscribe on:
Show Notes
Work at Battery
- 01m 00s - Part of a team based in the Bay Area that looks at enterprise IT investments;
- 01m 21s - Spends a lot of time at conferences to keep up to date and find new ideas and interesting people;
State of the union with microservices
- 02m 28s - Microservice implementations have some dependency on base language - Java, Scala, Go, Node - for what frameworks you use: Java like SpringCloud and Netflix
- 03m 29s - You need to pick a way to do communications, a discovery mechanism; do you have a con-tainer model and so on?
- 04m 01s - A few years ago you had to invent microservices tooling yourself yourself, then a year ago there were a bunch of nascent projects, now we have so many choices we’ve hit analysis paralysis.
- 04m 37s - Everything is moving rapidly - Docker with Swarm and compose, Kubernetes, Mesos, HasiCorp, Rancher.
- 05m 39s - Different toolsets are needed if you’re focused largely on premise vs. public cloud, small scale vs. large scale
- 06m 09s - Netflix is largely Java, quite a lot of python, and node as its front end. [editors note - see infoq.com/netflix for more]
07m 09s QCon New York June 13-15 talk plans
- 07m 26s - QCon New York talk will be aimed at Enterprise architects, some developers and managers.;
- 07m 47s - Conway’s Law - “The organisation of a company will guide the way it builds its software”
- 08m 58s - Timeout anti-patterns can cause your system to suffer from a congestion collapse problem.
- 09m 48s - How to fast-fail: get a really large timeout at the edge, and progressively smaller timeouts as you get deep into the system
11m 38s Is a microservice architecture always the right approach?
- 11m 46s - People typically start with a monolith like Ruby on Rails or similar.
- 12m 53s - If you want Redis and MySQL and NGINX you generate a Docker Compose file and pull them from DockerHub. You have an architecture with off-the-shelf microservices like Redis with their code in one blob in the middle.
- 13m 57s - When do you need to get into microsevices? Team size plus when you need to avoid mixing unrelated concerns, for example in the same database.
14m 16s Have we reached critical mass with microservices?
- 14m 28s - Two small conferences last year, started as discussions among developers. Now moved up to a manager-level discussion
- 15m 10s - People at the management level talking about breaking up the monolith to go faster.
- 15m 54s - CEOs asking CIOs if they are doing Microservices yet. People outside of software are talking about it.
Other disruptive trends
- 16m 27s - “Serverless" computing. AWS Lambda being used in production, Google, Microsoft and IBM have all released direct competitors.
- 17m 37s - Going in the opposite direction to microservices with teraservices: AWS will offer 2-terabyte sized instances by end of year, by the hour.
- 19m 01s - Persistent memory is just starting to bubble up.
- 19m 31s - Open source as the most disruptive technology. The true nature of disruption is when the incumbents cannot have a play against it.
- 20m 44s - IBM is disrupting itself and knows it’s doing it to survive. It’s a painful process.
- 22m 07s - Microsoft going heavily into Linux, porting SQL Server to Linux, Bash in Windows 10.
- 24m 07s - Hard to find anyone who knows Azure or Google, AWS has already captured the market.
As QCon speaker
- 25m 00s - Very indirectly QCon got me my current job.
- 25m 41s - Advice for speakers - try it in public.
- 25m 54s - Josh Evans’ Netflix talk from QCon London.
- 26m 21s - Netflix’s strategy - get out there and build a technology brand that attracts developers.
- 27m 57s - Look at Uber for a bleeding edge architecture. [editors note: check out www.infoq.com/uber for talks]
People mentioned
Microserices toolsets mentioned
- Spring Cloud
- Docker with Swarm and Compose
- Mesos
- Kuberneetes
- Rancher Labs
- Hasicorp Nomad