看了感觉很好,强烈推荐,是我看到最好的。求加精~
How to prepare system design questions for IT company
System
design is a very broad topic. Even a software engineer with many years of working experience at top IT company may not be an experton system design. If you want to become an expert, you need to read many books, articles, and solve real large scale system design problems.
This repository only teaches you to handle the system design interview with a systematic approach in a short time. You can dive into each topic if you have time. Of course, welcome to add your thoughts!
Table of Contents[⬆] System Design Interview Tips:Clarify the constraints and identify the user cases
Spend a few minutes questioning the interviewer and agreeing on the scope of the system.Remember to make sure you know all the requirements the interviewer didn't tell your about in the beginning.
User cases indicate the main functions of the system, and constraints list the scale of the system such as requests per second, requests types, data written per second, data read per second.
High-level architecture design
Sketch the important components and the connections between them, but don't go into some details. Usually, a scalable system includes webserver (load balancer), service (service partition), database (master/slave database cluster plug cache).
Component design
For each component, you need to write the specific APIs for each component. You may need to finishthe detailed
OOD design for a particular function. You may also need to design the database schema for the database.
[⬆] Basic Knowledge about System Design:Here are some articles about system design related topics.
Of course, if you want to dive into system related topics, here is a good collection of reading list about
services-engineering, anda good collection of material about
distributed systems.