开发者社区> javaedge> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

知识点提纲

简介: 1. 二叉树的深度 思路:看到二叉树,想想用递归,记得简化代码 数据库: 范式 第一范式:数据库表的每一项都是不可分割的原子数据项,不能是集合。
+关注继续查看

1. 二叉树的深度

img_f5629a7427c15093eb7df50b09479ed6.png

思路:看到二叉树,想想用递归,记得简化代码

数据库:

范式

第一范式:数据库表的每一项都是不可分割的原子数据项,不能是集合。比如班级信息表里面不能有班级的学生。

第二范式:在第一范式的基础上,所有属性完全依赖于主键,完全依赖就是不能取决于主键的一部分

第三范式:在第二范式的基础上,消除传递依赖,比如学生表里有学生属于的班级编号,但不能有班级的名称,班级人数等班级信息,因为班级信息可有由班级编号通过班级表推出来,有传递依赖

第一范式->第二范式->第三范式

→→→数据冗余越来越少,查询越来越复杂

←←←有数据冗余,但查询简单

事 ****务

并发控制的单位,是用户定义的一个操作序列,要么全做,要么全不做,是不可分割的。

1原子性

2一致性:

使数据库从一个一致性状态到另一个一致性状态

3隔离性:

一个事物的执行不被其他事务干扰

4永久性:

一个事务一旦提交,它对数据库的改变就是永久性的

常用 ****SQL语句

分组查询(avg max min)、复杂连接查询、嵌套查询、结果排序(逆序ansc)、

操作系统

错题

虚存=min ****(主存+辅存,逻辑地址)

进程和线程

进程是程序的一次执行,包括代码和数据,是CPU分配资源的基本单位,一个进程可以包括多个线程。进程之间通信方式:管道、SOCKET、信号量(互斥、同步)等。

子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。

线程是独立运行和独立调度的基本单位(线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统内多个程序间并发执行的程度),线程之间共享进程的数据空间(借此通信)

进程的调度算法

文件系统

内存分配策略

计算机网络

HTTP协议

基于TCP协议的应用层协议

H TTP是一个普通用在浏览器和web服务器之间进行数据交换的 文本 协议

HTTP协议的ETAG响应头主要用于信息的过期验证

HTML错误代码

(1) 常见错误代码:

200服务器成功返回了网页,成功处理了请求

304未修改,自从上次请求后,请求的页面未被修改过,此时服务器不会返回网页内容,节省带宽和开销

404请求的网页不存在

500服务器内部错误

503服务器暂时不可用(超载、停机维护),通常只是暂时状态

(2) 1xx:临时响应,服务器端响应成功, 等待请求者进一步操作

(3) 2xx:响应成功

202接受请求,未处理

204处理了请求,但没有返回任何内容

(4) 3xx重定向,要完成响应,服务器需要进一步处理

301网页已被永久移动到新位置

302临时移动到新位置

305要求只能使用代理才能访问

(5) 4xx请求错误

400不理解请求语法

401要求身份验证,先登陆才能请求

403禁止访问,服务器拒绝请求

405请求中的方法被禁用

408请求超时

(6) 5xx服务器在处理请求时内部发生错误,来自服务器本身的错误

501服务器不具备完成该请求的功能

502服务器作为网关或代理,从上游服务器收到无效响应

504网关超时

505 HTTP版本不支持

TCP/IP与UDP

TCP与UDP

TCP面向连接、可靠的数据传输,有拥塞控制和流量控制,大量数据,速度慢

UDP非连接,不可靠的数据传输,少量数据,速度快

TCP建立连接的三次握手

详细过程和状态变化

为什么要三次?

TCP关闭连接的四次挥手

FIN- ->

<--FINACK

ß FIN

FINACK-->

如何提高UDP的可靠性

**应用层 **实现超时重传,客户端发送一个包,服务器返回一个包表示收到,如果客户端超过一定时间没有收到该包,就需要重传

备用

SOCKET编程

img_1d144958c9f51a10f83355d1f37313d0.png
image

当recv函数在接受数据时是阻塞的,当返回值<0,说明连接出错

当返回值=0,表示对端关闭了连接

返回值>0,接受到的数据的大小

TCP/IP分层,各层作用

应用层:为操作系统、应用程序提供访问网络的接口(Telnet、FTP、HTTP、SNMP、DNS域名解析)

(表示层)

(会话层)

传输层:两点之间的根据使用的协议(TCP、UDP),传输相应数据报文,

网络层:整个网络的传输路径选择,路由(IP、RIP)

网络访问层:数据链路层、物理层的结合,数据链路层相邻节点之间数据帧传输,物理层就是光纤上比特级的数据传输。

PING操作的原理

使用ICMP,在IP主机、路由器之间传递控制消息

网络层的协议

IP协议 根据IP地址决定转发、路由的协议

ICMP本质理解为带差错报告的IP协议,在主机和路由器之间传递控制信息(网络通不通,主机可不可达,路由可不可达到)

ARP:将IP地址转化为MAC地址

RARP:物理地址转为IP地址

RIP

传输层的协议

TCP

UDP

SPX

应用层协议

HTTP

SMTP:简单邮件传输协议

DNS:

Telnet

FTP:文件传输协议

WWW:

NFS: 网络文件系统

DNS的完整流程(域名->IP地址)

DNS采用 **分布式 **的域名系统,减少故障发生

当一个应用需要把主机名解析为IP地址时,该应用程序就会调用解析程序,把待解析的域名放在DNS请求报文中,以 **UDP数据报 **方式发送给本地域名服务器,本地服务器在查找域名后,把对应的IP地址放在回答报文中返回,应用程序获得目的主机的IP地址后即可进行通信。若本地域名服务器不能解析该域名,则向上级域名服务器继续发送查询请求,直到可以解析为止。

img_04542b9b7b4c0d7c354a0c218fd67acb.png
image
备用

HTTP1.0/1.1区别

HTTP1.1中才有 cache-control响应头,主要用于控制信息在浏览器的缓存

  1. HTTP 1.0规定浏览器与服务器只保持短暂的连接,浏览器的每次请求都需要与服务器建立一个TCP连接,服务器完成请求处理后立即断开TCP连接,服务器不跟踪每个客户也不记录过去的请求

缺陷:访问一个包含有许多图像的网页文件的整个过程包含了多次请求和响应,每次请求和响应都需要建立一个单独的连接,每次连接只是传输一个文档和图像,器端每次建立和关闭连接却是一个相对比较费时的过程,并且会严重影响客户机和服务器的性能

  1. HTTP 1.1支持持久连接,在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟

HTTP 1.1还允许客户端不用等待上一次请求结果返回,就可以发出下一次请求,但服务器端必须按照接收到客户端请求的先后顺序依次回送响应结果

HTTP 1.1还提供了Host、身份认证、状态管理和Cache缓存等机制相关的请求头和响应头

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
简历:第一章:技术亮点如何写
简历:第一章:技术亮点如何写
0 0
《一本技术畅销书是如何写成的?》 | 学习笔记(一)
快速学习《一本技术畅销书是如何写成的?》
0 0
《一本技术畅销书是如何写成的?》 | 学习笔记(二)
快速学习《一本技术畅销书是如何写成的?》
0 0
《怦然心动的人生整理魔法》读书笔记
        关于房间整理的书,作者把房间整理与人生联系上,整理是人生中重要的一部分。         整理,首先从丢东西开始,彻底丢掉不需要的东西。         按物品类别整理,把相同的东西集中起来。
486 0
《如何有效阅读一本书》读书笔记
        这是一本关于读书的书,作者[日] 奥野宣之 ,行文上和众多看过的日本书类似,都是主题比较专一的,篇幅不大,语言语气也比较类似。书的副标题为“超实用笔记读书法”,笔记本贯穿了整本书。
612 0
+关注
javaedge
关注公众号:JavaEdge,后台回复面试,领取更多大厂求职资源。曾在百度、携程、华为等大厂搬砖,专注Java生态各种中间件原理、框架源码、微服务、中台等架构设计及落地实战,只生产硬核干货!
文章
问答
文章排行榜
最热
最新
相关电子书
更多
超全算法笔试 模拟题精解合集
立即下载
超全算法笔试-模拟题精解合集
立即下载
面试常考算法
立即下载