- Is it just a fad?
tl;dr → yes, there will be a new shiny thing out in a fortnight, in a year; but that doesn’t matter.
- Amazon, AWS
- Code Deploy
- Not treated
- Debuggability (testability)
- Failure models
- again, what does one do with the spaghetti as it manifests in nested nasty HTTP cascades instead of multithreaded nested nasty call chains?
- Infinite, independent, query flow.
- Load Balancing
- Global Load Balancing; i.e. DNS & CDN
- (in colo) Load Balancing
- API Gateway, a universal broker
(in colo) Caching
- log everything
- dashboard everything
- Origin Servers
- Lambda Architecture
Lambda Service of AWS
- Basic-Availability, Soft State, Eventual Consistency (BASE)
- Consistency, Availability, Partition-Tolerance (CAP)
Definitional & explanatory; alphabetical.
- From Adrian Cockroft’s Writings
- a definition
- From Martin Fowler’s Writings
- Sam Newman; Building Microservices; O’Reilly Media; 2015-02-20; 290 pages; Amazon kindle: $25, paper: $25+SHT; promotional sampler, via Nginx: 102 pages; promotional sampler, via O’Reilly Media, 25 pages; previously noted.
- From Jimi Wales’ Wiki.
- Phil Calçado; How we ended up with microservices; In His Blog; 2015-09-09.
- Ruby on Rails
- monolith was too hard to work with
- more features were needed
- business success occurred (oxygen to allow a rebuild)
- The Next SoundCloud
- refactoring was commissioned
- refactoring actually occurred
- Bob Rubbart (Oracle); Microservices and SOA; In Their Blog; 2015-03.
Teaser: Similarities, differences and were we go from here.
Bob Rhubart is community manager of Oracle Technology Network (OTN), he hosts on ArchBeat, a podcast & tweetshow.
tl;dr → sure, Microservices is “the same” as SOA; it is SOA “done right” and suitable for <buzz>Internet of Things (IoT)</buzz>
- The two pizza teams, In Some Blog; WHEN?
- You build it, you run it; In Some Blog promoting Agile; WHEN?
tl;dr → DevOps, everyone on call, no QA, launch & react.
Testaments to the popularity of the fad
- “From Monolith Ruby App to Distributed Scala Micro-Services” NYC Tech Talks
- “Nike’s Journey to Microservices” – AWS Re:Invent 2014
- ”Building Products at SoundCloud—Part III: Microservices in Scala and Finagle”
- Capital One
- “Lack Of Legacy Lets Capital One Build Nimble Infrastructure” – ThePlatform.net
- “A Journey into Microservices” – sudo.hailoapp.com
- Some tools, at GitHub
- SmartStack, at Their Site
- Mesos, at Apache
- Rest.li, at GitHub
- Job Families
the Roles & Responsibilities
- SDE → Software Development Engineer
- PM → Product Manager
- TPM → Technical Program Manager
- SE → Service Engineer
- SDET → Software Development Engineer, Testing (a diminutive)
- Management Theory
same as it ever was
Newspeak MBA-Speak Culture People Practices Processes Tools Technology
|Substantial function requires an RPC, a network call||Substantial function requires an RPC, a network call.|
|Many very small components||Fewer more sophisticated components|
|Business logic lives inside a single service domain||Business logic can live across multiple domains|
|Wire protocol must be HTTP JSON or (less preferably) XML||Wire protocol is the Enterprise Service BUS (ESB), as a layer between services|
|(RPC) type API driven with client-deployed SDKs/Library.||Middleware (?)|