Humans By The Hundred презентация
Содержание
- 2. $ whoami SRE Manager at Yelp CWRU Alum Pittsburgh native <3
- 5. What is Yelp? Many sites: www, m, biz, api Mobile apps
- 6. Why Am I Here?
- 8. DATA DATA
- 9. This talk is about people
- 17. The Goal
- 18. Iterate as fast as possible
- 19. Regardless of how many people are participating
- 20. Deployment
- 21. How It Starts
- 22. Deployment: the early days Get a few people together in slack/irc/etc.
- 25. Things get slower... Tests take longer to run More hosts =
- 26. The Problem: Humans Are Fallible
- 27. The Problem: Humans Are Fallible “…oh @$#&”
- 29. The Problem, With Math Assume: Every change has a chance of
- 30. The Problem, With Math Only you p = .98 (98%) You
- 31. The Problem, With Math p = (.98)n
- 32. The Problem, With Math p = (.98)n
- 34. This doesn’t scale! More developers = more changes More changes =
- 35. Mitigating Exponential Decay p = (.98)n
- 36. Mitigating Exponential Decay p = (.98)n
- 38. Making it harder to screw up Write more tests Write better
- 39. Just write better software and stop making mistakes!
- 40. PROBLEM SOLVED
- 42. The Real World Testing builds confidence in our changes Testing does
- 43. Mitigating Exponential Decay p = (.98)n
- 44. Mitigating Exponential Decay p = (.98)n
- 45. Service-Oriented Architecture Large monolith → smaller services Services communicate over network
- 46. Service-Oriented Architecture Benefits Smaller code bases = upper bound to n
- 47. Service-Oriented Architecture Drawbacks everything becomes decoupled function calls start looking like
- 48. SOA scales people, not code.
- 49. Conquering SOA With the monolith, it’s easy to focus on mean
- 50. Conquering SOA In a SOA, focus on mean time to recovery
- 51. Conquering SOA Fail fast Anticipate failure Leverage iteration speed to recover
- 52. Conquering SOA Treat everything as distributed That means everything will fail
- 53. Reaping the Benefits Smaller failure domains Fewer people & changes to
- 54. Reaping the Benefits Smaller changes means smaller code reviews means faster
- 55. Continuous Delivery Everyone works against master branch Master is deployed when
- 56. PROBLEM SOLVED
- 57. Testing
- 58. Tests are hard to get right.
- 65. How can we do better?
- 67. “Not Recommended” Tests
- 68. “Not Recommended” Tests If a test fails on master: a feature
- 69. Reliable tests >> test coverage.
- 70. Don’t always run all the tests!
- 71. Tests of external services should be monitoring
- 72. Define your boundaries.
- 76. Questions?
- 77. Скачать презентацию
Слайды и текст этой презентации