Earlier quoted context omitted.
Could you give some information as to what the breakdown of functionality is for those services? I can't fathom 1700 different and unique pieces of functionality that would need to be their own services.
I work at a microservice company. An example microservice is our geoservice which simply takes a lat/lon and tells you what service region the user is in (e.g. New York, San Francisco, etc..). You can see how dozens of these services might be needed when handling a single request coming in from the front end or mobile apps. The service may eventually gain another related function or two as we work on tearing down our…
What I Wish I Had Known Before Scaling Uber [video]
131–140 of 284 posts
Re: What I Wish I Had Known Before Scaling Uber [video]
#132I'm not a big green-IT guy, but always pushing your systems close to its load maxima and then backing off with the test traffic as real traffic comes in feels like an enormous waste of electricity.
Re: What I Wish I Had Known Before Scaling Uber [video]
#133"Uber is most reliable over the weekends when engineers don't change it" :)
Facebook noticed the same thing. http://www.darkcoding.net/software/facebooks-code-quality-pr... - "Exhibit C: Our site works when the engineers go on holiday"
Re: What I Wish I Had Known Before Scaling Uber [video]
#134Earlier quoted context omitted.
I'm curious how a company ends up with 10 git repositories per microservice, and 4 repositories per engineer?
That's just a manifestation of Conway's Law [1]. [1] https://en.wikipedia.org/wiki/Conway's_law
Re: What I Wish I Had Known Before Scaling Uber [video]
#135Re: What I Wish I Had Known Before Scaling Uber [video]
#136Earlier quoted context omitted.
Hospital mortality rates in each department are also lowest when there's a conference for that specialty nearby. The doctors all go there, few/no routine surgeries are done that day, far fewer people die.
This is interesting. Do you have a source for this?
Re: What I Wish I Had Known Before Scaling Uber [video]
#137"Uber is most reliable over the weekends when engineers don't change it" :)
We see this pattern at PagerDuty over the majority of our customers. There is a definite lull in alert volume over the weekends that picks up first thing Monday morning. It's led to my personal conclusion that most production issues are caused by people, not errant hardware or systems.
Re: What I Wish I Had Known Before Scaling Uber [video]
#138Just to confirm, 1000 microservices in this case is 1000 different apps (e.g.different docker images) running simultaneously? 1000 microservices in this case not 1000 microservice instances (e.g. docker instances)? If it is 1000 microservices as in different apps, then they must have at least 2000 running apps (at least 2 instances per app for HA). Maybe uber only have 200 "active" microservice app running at the sam…
Maybe my ignorance, but do they have services like left-pad-as-a microservice? I can't understand which 1000 microservices you can derive for a cab-renting application.
Re: What I Wish I Had Known Before Scaling Uber [video]
#139Earlier quoted context omitted.
Could you give some information as to what the breakdown of functionality is for those services? I can't fathom 1700 different and unique pieces of functionality that would need to be their own services.
I work at a microservice company. An example microservice is our geoservice which simply takes a lat/lon and tells you what service region the user is in (e.g. New York, San Francisco, etc..). You can see how dozens of these services might be needed when handling a single request coming in from the front end or mobile apps. The service may eventually gain another related function or two as we work on tearing down our…
Re: What I Wish I Had Known Before Scaling Uber [video]
#140Earlier quoted context omitted.
that sounds nightmarish
Why? I'm assuming their highish engineer/service ratio is because their services do less individually. Anecdotally, I've worked on services that ran tens of thousands of instances across the world. You build the tools to manage them and it works very well.
People talk about interpreted languages being slow sometimes, now your program is divided over 1700 separate servers and instead of keeping variables in memory you have to serialize and send them over the network all the time.