网络基础
-
如何确定发送过来的数据的完整性(有无中间人攻击)?
散列值校验(MD5、SHA-1)、数字签名(PGP),需要用户亲自校验,若是散列值或数字签名本身被篡改,用户是无法判断出来的。
HTTPS安全通信机制中,应用层发送数据时会附加MAC报文摘要,可以查知报文是否被篡改。
-
HTTP 有哪些方法?
GET:获取资源
POST:传输实体主体
PUT:传输文件
HEAD:获得报文首部
DELETE:删除文件
OPTIONS:询问支持的方法
TRACE:追踪路径
CONNECT:用隧道协议连接代理
-
RESTful 中 GET/POST/PUT 的区别是什么?
获取/创建/修改 资源
-
time wait 的原因? 一次HTTP请求的过程是什么? DNS 原理是什么?协议上怎么确定收到了请求?
原因:https://blog.csdn.net/u013616945/article/details/77510925
实现TCP全双工连接的可靠释放、使旧的数据包在网络因过期而消失
DNS:域名系统,是一个分布式、层次的数据库
-
Apache与Nginx的优缺点比较。
nginx:异步非阻塞、静态处理能力强
apache:同步多进程、动态能力强
数据结构
-
介绍 MySQL 的索引以及索引设计。
聚集与非聚集、左前缀原则等
-
Hash 表数据结构是怎样的?拉链法、开址法的优缺点以及rehash过程。
根据key直接访问内存存储位置的数据结构
https://blog.csdn.net/mark555/article/details/22038151/
操作系统
-
Unix 进程有哪些通信方式?
共享内存、消息传递
-
一条Linux指令统计文件目录下文件数。
https://blog.csdn.net/quincuntial/article/details/54943351/
编程语言
-
Python 可变与不可变数据类型的差异。
-
Python 中元类的使用经验。
-
Python 实现一个字典类。
- Python 函数传值还是传址?
项目设计
-
爬虫中,url 越来越多,怎么去重?
https://www.jianshu.com/p/d23741865521/
-
从服务器日志中,统计访问次数最多的IP。
https://blog.csdn.net/luyaran/article/details/54136227/
学习方法:
Python cookbook,effective Python,Java 核心技术、C 语言程序设计
编程珠玑,数据结构与算法分析
编码、深入理解计算机系统
图解 HTTP、计算机网络:从顶到下
Flask web 开发、精通 Scrapy 网络爬虫
高性能 MySQL,Redis 设计与实现
博客、文档、google、问答网站
网易云课堂视频