4 Side notes JAX London 2016
Quick notes from session 4 of JAX London 2016. Architectural Resiliency preseneted by Jeremy Deane.
· Q.Assistance · 2 minutes ·
Overview
Session: 11th Oct — 11:30 to 12:20 Architectural Resiliency
Notes
-
Jeremy Deane has quite a lot of content on line about this subject.
-
Accumulating innovation debt:
“Innovation debt is the cost that companies incur when they don’t invest in their developers”
- Architecture & design ideas for resilience:
- Model for threads and failure. “What will we do if … ?”
- Monitor and measure the results to track what is the actual improvement or deterioration.
- Meantime to Failure MTTF
- Meantime to Recovery MTTR
- Meantime to Deploy MTTD
- Meantime between failures MTBF
- Measures do not need to be exact numbers. We are looking for reference points or tendencies.
- Model stateless & asynchronous micro-services
- Do not use distributed transactions
- Implement with CWhatontinuous Delivery
- Have owners for each micro-service.
- Do not blame but motivate people to be accountable for each micro-service.
- Keep the service up to date with continuous improvement. Apply Kanban principles.
- Keep all logging of all services and applications with the same standard format. It reduces time to analyse failures.
- Define recoverability behaviour for:
- Circuit breaker
- Throttle
- Negative testing scenarios
- Penetration testing
- Chaos testing: Simian Army
- Document system external dependencies
- Practice disaster recovery scenarios (get in shape)
- Implement test harnesses like
- The thing to do more:
- For the security features follow the Open Web Application Security Project OWASP.
- It is paramount to “Validate inputs and standardized outputs”
- Micro-services with event sourcing and Command Query Responsibility Segregation CQRS is a much more resilience system.
- Follow the 12-factor method to build software-as-a-service apps.
- If you are in the middle of taking a big decision about going or not to implement micro-service architecture, it would help to read this good article. Manage opportunity costs instead of risks
- Overall, to succeed working in a micro-services architecture it is required a Blameless culture in the terms of Etsy’s Winning Secret: Don’t Play The Blame Game!
That was all for this session.
Many thanks for reading, please leave a comment if you have any quality hint.
Keep on testing, better!
More posts
-
7 Side notes JAX London 2016
Quick notes from session 7 of JAX London 2016. Euphoria despite the Despair (Re)discovering the joy of being a software engineer preseneted by Holly Cummins & Holly Cummins.
-
The basics of Software Quality
A brief introduction into the roots of software quality. From the Test & Code podcast episode 175 by Brian Okken. This episode is one of the finest synopses about the quality practices to perform at a top software development team.
-
10 Side notes JAX London 2016
Quick notes from session 10 of JAX London 2016. Making Sense of Microservices preseneted by Russ Miles & Junit session by Nicolai Parlog.