By Lee Atchison

Every day, businesses fight to scale severe purposes. As site visitors quantity and knowledge calls for elevate, those purposes develop into extra complex and brittle, exposing hazards and compromising availability. This useful advisor exhibits IT, devops, and process reliability managers how one can hinder an program from changing into gradual, inconsistent, or downright unavailable because it grows.

Scaling isn’t near to dealing with extra clients; it’s additionally approximately handling danger and making sure availability. writer Lee Atchison presents simple ideas for development purposes which can deal with large amounts of site visitors, facts, and insist with out affecting the standard your clients expect.

In 5 elements, this e-book explores:

  • Availability: study options for construction hugely to be had functions, and for monitoring and enhancing availability going forward
  • Risk management: establish, mitigate, and deal with hazards on your program, try your recovery/disaster plans, and construct out structures that include fewer risks
  • Services and microservices: comprehend the price of prone for development complex functions that have to function at larger scale
  • Scaling applications: assign providers to precise groups, label the criticalness of every carrier, and devise failure eventualities and restoration plans
  • Cloud services: comprehend the constitution of cloud-based companies, source allocation, and repair distribution

Show description

Read or Download Architecting for Scale: High Availability for Your Growing Applications PDF

Best design & architecture books

REALbasic Cross-Platform Application Development

REALbasic Cross-Platform software Developmenttreats REALbasic as a significant improvement surroundings and is focused to builders with not less than programming adventure, yet who might or is probably not new to the REALbasic platform. Written by way of a author and developer with huge REALbasic adventure with enter and counsel from actual software program, this booklet will enable you benefit from the recent cross-platform skills of REALbasic and educate you ways to create cross-platform purposes.

Real-Time Systems Development

"Based at the educational and advertisement adventure of the writer, the publication is a perfect spouse to ultimate yr undergraduate suggestions or MSc modules within the sector of real-time platforms layout. The extensive spectrum of matters handled will reduction expert programmers confronted with their first real-time undertaking while extending scholars' wisdom and abilities into a space of computing which has expanding relevance in a contemporary international of telecommunications and 'intelligent' apparatus utilizing embedded microcontrollers.

Interconnection Networks

The functionality of so much electronic platforms at the present time is proscribed by means of their conversation or interconnection, no longer via their good judgment or reminiscence. As designers attempt to make extra effective use of scarce interconnection bandwidth, interconnection networks are rising as an almost common method to the system-level verbal exchange difficulties for contemporary electronic platforms.

Additional resources for Architecting for Scale: High Availability for Your Growing Applications

Example text

This is, by far, the most fun, rewarding, and personally fulfilling role I have ever had. Mikey Butler, Nic Benders, Matthew Flaming, and the rest of the New Relic engineering leadership, for all of their support over the years. Kurt Kufeld, who mentored me and helped me fit into the weird, chaotic, challenging, draining, and ultimately hugely rewarding work environment at Amazon. Greg Hart, Scott Green, Patrick Franklin, Suresh Kumar, Colin Bodell, and Andy Jassy, who gave me opportunities at Amazon and AWS I could not have ever imagined.

Well, OK. Overall, we’re still doing well. ” Then another outage… Now your CEO is a bit concerned. Customers are beginning to ask what’s going on. Your sales team is starting to worry. Then another outage… Suddenly, your once stable and operational system is becoming less and less stable; your outages are getting more and more attention. Now you’ve got real problems. What happened? Keeping your system highly available is a daunting task. What do you do if availability begins to slip? What do you do if your application availability has fallen or begins to fall, and you need to improve it to keep your customers satisfied?

Availability The ability of your system to be operational when needed in order to perform those operations. Tip A system that adds 2 + 3 and gets 6 has poor reliability. A system that adds 2 + 3 and never returns a result at all has poor availability. Reliability can often be fixed by testing. Availability is usually much harder to solve. You can introduce a software bug in your application that can cause 2 + 3 to produce the answer 6. This can be easily caught and fixed in a test suite. However, assume you have an application that reliably produces the result 2 + 3 = 5.

Download PDF sample

Rated 4.72 of 5 – based on 42 votes