Python interview (3) and python interview
I. Language
Is it recommended to read the best python book? Open the topic.
What about python decorator, iterator, and yield?
Which queue is secure for standard library threads? Which one is insecure? Is logging thread-safe?
What are the applicable scenarios of python? What if I encounter computing-intensive tasks?
What is the high concurrency solution for python? I want to hear twisted-> tornado-> gevent, and it's better to get to golang and erlang.
Ii. Operating System
We can directly think of it as linux. After all, most of the backend systems are dealing with linux.
What is the difference between tcp and udp? What is the tcp stick package? How can this problem be solved? Udp sticky package
What is time_wait? What are the possible causes of excessive close_wait attacks?
What is the difference between epoll and select? What is the difference between edge triggering and horizontal triggering?
Iii. Storage
The storage may contain rdbms, nosql, and cache. I use mysql and redis as an example.
Mysql Problems
About mysql character sets and sorting rules?
What is the difference between varchar and char? Size limit? Maximum number of characters that can be stored in varchar in the utf8 Character Set
What is the difference between primary key and unique?
What are the usage of Foreign keys? Should I use them? Do foreign keys need to be indexed?
What is the difference between myisam and innodb? What is the two-phase locking protocol of innodb?
What is the purpose of indexing? What is the general principle? What are precautions for designing indexes?
Redis Problems
In what scenarios is redis used? Why is mysql not suitable?
About redis transactions? Use transactions to simulate atomic + 1 Operations? Are there other solutions for atomic operations?
What if redis memory is full?
Iv. Security
Web Security
How does one prevent SQL injection?
How can xss be prevented? Can xss be avoided after htmlescape?
What is csrf? How does django prevent it?
Password Technology
What is group encryption? What are the encryption modes? What is the difference between ecb and cbc models? Why do we need an iv vector?
What is the https process?
What is the difference between symmetric encryption and asymmetric encryption?
How to generate a shared key? How can we prevent man-in-the-middle attacks?
V. Miscellaneous
Do you want to focus on new technologies? Do golang and rust know about it? Numpy, what is pandas?
Keep up with the times? Do you want to go around Weibo?
You may think these questions are fine, but many of them are common and need to be solved. The details are more specific to one person. If you think of kiss, you are welcome to look for him at zhihu, they think it's a problem. What are they waiting for? Read more books.
Python reference manual, which definitely takes you to the next level
Graphic password technology, the best choice for getting started with passwords
The fifth version of mysql technology insider is a bit thick enough to read the manual. Be patient and read high-performance mysql is strongly recommended.
Valid TCP/IP programming