Server Interview Outline
1. Part 1
-
PHP Basics
- Cookie and Session mechanism
- PHP security, common vulnerabilities, and also include (SQL injection, DDOS, XSS, CROSS), here also asked how to reject DDOS attacks
- PHP common frameworks, comparisons between frameworks, advantages of frameworks, concepts, common functions of frameworks (such as routing distribution, exception handling, log collection, template rendering, data model, etc.)
- PHP Common Specification (PSR)
- Common design patterns, which ones have been used in the project, and why use this pattern
- Understanding of Dependency Injection, Inversion of Control (IOC) concepts
- Tencent asked: Observer mode
2. Database and cache
-
Mysql related
- Mysql performance optimization, index, transaction, sub-database, sub-table, partition
- How to pay attention to Mysql-related performance when writing code
- If Mysql performance problems are solved from which angles, commonly used commands: explain, show processlist, etc.
- Tencent asked: What are the MySQL versions you commonly use or know about, and the differences between MySQL versions
-
Which NoSql databases have you been exposed to and what are the differences?
-
Redis and Memcache
- Differences and application scenarios between the two
- It is possible to ask about relevant commands and which businesses they apply to
-
Tencent asked a command: rbpop, lbpop
-
message queue
- Commonly used message queues, application scenarios (this probability is relatively small)
3. Operating system and computer network:
-
Linux related commands:
- Find filtering files (find, awk, sed), performance analysis (top, iotop, free), processes and ports (ps, netstat, lsof), firewalls
- Inter-process communication methods and their distinctions (8 types)
-
Common process semaphores
-
The internet
- 7-layer network model, and related protocols corresponding to each model
- The difference between TCP and UDP, TCP three-way handshake, four-way wave process
-
HTTP protocol understanding, related status codes: 1xx, 2xx, 3xx, 4xx, 5xx
-
material:
4. Algorithms
-
algorithm
- Common sorting algorithms and their complexity
- Common search algorithms and their complexity
- Tencent asked: Divide and conquer algorithm
-
Some problems with data structures: such as shortest paths, AOV networks
-
material:
5. Other open-ended topics (talk about the projects you have done)
- Tell me which projects you are doing, and choose the best project for in-depth explanation, the problems encountered in the project and the solutions - important, generally ask
- Now there is a xx project, which needs to be refactored due to business development problems. Tell me about your plan - important, generally ask
- There is a project that has been running well before, but one day it suddenly becomes stuck. How do you locate the problem with your thinking?
- How to add fields in a data table with millions of rows online
- Design a spike system that supports high concurrency
- Knowing a project, how to use the new framework and HP version to upgrade with the minimum cost and the fastest