ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

常见面试题

2022-04-08 21:32:20  阅读:117  来源: 互联网

标签:协议 面试题 请求 常见 tcp 索引 cookie 数据


基础知识
1.可变类型:整形 长整型 浮点数 复数 布尔类型 字符串 元祖
2.不可变类型:列表 字典
3.GIL锁:GIL锁和cpython语言没啥关系,出现在cpython解释器中,在一个进程中开启多个线程,同一时刻只有抢到GIL的线程会进行执行
4.GIL锁的影响:使用Cpython解释器,在多个cpu环境下,GIL锁会使多线程任务的执行效率降低
5.list和tuple区别: list可以添加重复的元素,允许修改,tuple是不可以添加重复的元素,而且值使不允许修改的
6.装饰器:外层函数嵌套内层函数,外层函数并且把内层函数名称返回
7.装饰器的应用场景:在不修改某个函数的基础上添加新功能
8.字典key的类型:字典key只能是不可变类型
9.python中*args 和 **kwargs区别: args传入的值会保存在元组中,kwargs传入的值会保存在字典中(传入的参数是有名参数)
10.python的数据结构:列表 字典 元祖 集合 字符
11.lambda表达式:是一个匿名函数,在代码被执行的时候构建的函数对象并返回
12.并发和并行:并发是一个cpu在多个程序上进行切换操作,并行是多个cpu同一时间不停的同时执行多个程序
13.python中一些常用模块:os json time sys random
14.什么是tcp/ip协议:tcp/ip协议是网络协议,是面向连接的一种协议,发送数据前双方要建立连接,tcp提供可靠的服务,通过tcp连接数据不会丢失,没有重复,并且顺序一定
15.什么是udp协议:upd协议属于一种无连接协议,发送数据前不需要建立连接,是没有可靠性的协议,只负责将数据发送对方接收没接收到是不管的
16.tcp和udp的区别:
tcp协议
是面向连接的协议,数据传输的过程中是可靠的
只能实现一对一
面向字节流的传输方式
udp协议
没有连接,数据传输的过程中是不可靠的
可以实现一对一 一对多 多对多
面向报文的传输方式
17.udp的应用场景:游戏 媒体通信 直播
18.socket和websocket区别:socket是对tcp udp协议封装的一个实现,方便使用,websocket是基于html5的一种协议,实现了全双工通信,而且websocket也是基于http协议实现的,使用http协议初始化,在初始化的过程中升级为websocket协议
19.post和get请求的区别:
post请求:重点是向服务器发送数据,post请求支持上传大量的数据,post请求数据是放在请求头不 是安全的
get请求:只要是向服务器获取数据,get请求传输的数据量小(受到浏览器url长度的限制),get请求传输数据是不安全的,因为get请求把数据放在url中
20.对称加密和非对称加密:
对称加密指的是加密和解密使用的是同一种密钥
非对称加密: 既有公钥和私钥,公钥可以随意发布 私钥只能自己知道,发送文件的时候使用公钥加密,接收方使用私钥解密,私钥不需要发送进行解密,所以非对称加密是安全的
21.cookie:cookie是存储在浏览器端的 以键值对的方式,客户端请求服务器的时候自动携带cookie
22.session:session是存储在服务器端的,一般在传输过程中会把sessionid存储在cookie中以键值对的方式,
23.cookie和session区别:
cookie:数据是存放在浏览器端不是安全的,cookie的保存数据不能超过4k
session:数据是存放在服务器端的,session并无大小限制
24.常见的状态码
200 表示请求成功
301 表示资源永久重定向
302 表示临时重定向
404 表示未找到资源
405 表示请求方法被禁止
500 表示服务端错误
25.生成器:
函数中带有yield就可以称作是一个生成器,
26.迭代器
实现了iter 和 next方法的就可以成为是一个迭代器,生成器也是一个迭代器
数据库
1.数据库分为关系型数据库和非关系型数据库
关系型数据:mysql
非关系型数据库:redis mongodb
2.什么是sql
结构话查询语句简称sql
3.innoDB和myisam的区别
innoDB:支持事物 支持行级锁和外键约束,支持hash索尼,索引是聚簇索引,不支持全文索引
myisam:不支持事物,不支持行级锁和外键约束, 不支持hash索引,非聚簇索引,支持全文索引
存储空间:myisam可被压缩,存储空间小,innoDB需要更多额内存和和存储,他会在主内存中建立其专用的缓冲池用于告诉缓冲数据和索引
查询比较多的话使用myisam引擎更优
插入更新 删除 比较多的话使用 innodb引擎更优
4.什么是索引
索引是一种数据结构,数据库中一个排序的数据结构,协助快速查询
5.索引的作用
加快查询速度,提高查询效率
6.索引的缺点:
时间方面:创建索引和维护索引要耗费时间,当对表中的数据进行增加 删除 修改的时候,索引也要动态的维护,
空间方法:索引需要占物理空间
7.索引主要有哪些
唯一索引(可以为null) 主键索引(不允许为null) 普通索引
8.索引的数据结构
b+树索引
9.什么情况下需要创建索引
频繁作为查询条件的字段进行创建索引
更新频繁的字段不适合创建索引
10.创建索引应该注意什么
非空字段
索引字段越小越好
11 数据库使用b+数据的原因
b+树空间利用率高,可减少i/o次数
适合随机检索和顺序检索
12.mysql四种隔离级别
读未提交:可能会产生脏读 幻读
读已提交:可能产生幻读
可重复读:幻度可能会发生
串行化:
13.什么是脏读
事务A修改了一个数据,但未提交,事务B读到了事务A未提交的更新结果,事务B读到的就是脏数据。
14.幻读
一个事务中两次查询同一条语句,得到的结果是不一致的

标签:协议,面试题,请求,常见,tcp,索引,cookie,数据
来源: https://www.cnblogs.com/happyyou123/p/16119853.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有