前端随心记-网络相关
1. http 和https 的区别
端口不同: http的端口是 80端口 ; https 的端口是443 ;
安全性不同:http数据未加密,属于明文传输; https数据加密传输 是需要ssl证书的
对服务器的资源青睐不同:HTTPS 其实就是建构在 SSL/TLS 之上的 HTTP 协议,所以,要比较 HTTPS 比 HTTP 要更耗费服务器资源
2 在浏览器的地址栏输入域名后回车都发生了什么
- 地址解析:首先浏览器先判断你输入的域名是否合法,之后根据你输入的内容进行编码,比如地址栏参数的中文会变成%
- 检查缓存,如果之前输入过这个地址,浏览器会进行缓存,之后会对缓存进行检查,是否存在缓存,之后检查是否在有效期。如果没有缓存就会像服务器发送请求。这也是有些页面打开后页面内容没有更新的原因,缓存有好有坏。
- DNS解析 寻找所需资源对应的ip
- 建立tcp 链接
- 关于tcp不得不说三次握手和四次挥手:举个例子:
你是一名移动用户,你有事需要资讯客服,这时候你就要打电话给中国移动:
我是张三,(你的第一次握手)。 SYN 同步
移动客服不可能只有一个,这时候一位座席就会说,工号0001号为您服务(对方的第二次握手)
在你确认对方收到后你就答复,我想要查话费,表明你的需要,(这是你的第三次握手)
四次挥手举例子:
我要回家吃饭: 第一次挥手
等一下饭快做好:第二次挥手
饭好了快回来:第三次挥手
好的,我马上回家:第四次挥手
这个涉及到 序号和确认号 ACK确认和FIN结束。 具体的可以查询相关文档,这里就不细说,案例仅供参开。
3 进程和线程的区别
官方解释过于抽象: 简单比喻一下,进行就是火车,线程就是火车的车厢。
1 线程是在进程下运行
2.一个进程可以包含多个线程
3.不同进程之间数据是很难共享的
4. 进程要比线程消耗更多的计算机资源 (加一列火车和加一节车厢的概念)
5.进程之间不会有影响,但是线程会影响同一进程上的所有线程.