Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Debugging a system issue Background As a beta offering for our product, we are trying out a new third-party recommendation service to help suggest a

image text in transcribed

image text in transcribed

image text in transcribed

image text in transcribed

Debugging a system issue Background As a beta offering for our product, we are trying out a new third-party recommendation service to help suggest a next action for users. We surface those next actions as part of the user's landing page when they sign in - maybe it's sending an important message, checking off an important todo, etc. You're settling in at your desk after a delicious and energizing team lunch when you receive a performance alert from the monitoring system. Rendering the beta landing page for a user is averaging around 10 seconds, up from the normal average of 800ms. About 10% of the users in the beta are even seeing the dreaded 504 Gateway Timeout error. The beta users represent a small subset of the overall traffic, but this is something that we'd like to understand and fix in the next few days. No changes have been deployed to the frontend that powers the recommendation service in several weeks. Architecture Here's a highly simplified diagram of the system in question: And here's a sequence diagram showing the flow of the request through the main components of the architecture: And here's a sequence diagram showing the flow of the request through the main components of the architecture: Use your understanding of the architecture above to list as many reasons as you can think of that the recommendations endpoint could be running slowly or timing out. Please spend 10-15 minutes on this part of the scenario. Please focus your response on ideas about what could be causing the recommendations endpoint to be running slowly, avoid talking about debugging steps until part 2 of the scenario Consider performance issues across the entire stack, including databases, third-party services, networking, hardware, cloud infrastructure, etc. You never know where the issue might be! We're looking for responses that demonstrate both breadth (how many areas of the system you address) and depth of knowledge (level of detail on individual ideas). For example, we would value covering 3 areas of the system each with 3 ideas more highly than we would value 10 ideas all focused on hardware issues. Your junior teammate, Casey, has time to work on the problem this afternoon. Choose 2 promising directions from your list and spend 15-20 minutes writing the best email you can explaining how they can make progress debugging while you're unavailable. Casey is smart, but doesn't have much experience debugging performance issues, so you should be very clear in your instructions. Include any specific tools they should use, commands they should try, error messages to watch out for, etc

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database In Depth Relational Theory For Practitioners

Authors: C.J. Date

1st Edition

0596100124, 978-0596100124

More Books

Students also viewed these Databases questions