进程与线程的区别
进程是系统资源分配和调度的基本单位,切换进程系统开销大,线程是cpu分配和调度的基本单位,切换线程系统开销小,一个进程至少有一个线程,可以有多个线程

 

linux查看进程ps

ps -A:列出所有进程

ps -e:列出所有进程

ps -aux作用:列出所有进程

 

linux杀死进程kill

kill-9操作系统从内核级别强制杀死进程

kill-15操作系统通知进程主动关闭

 

linux修改用户权限

chmod

 

死锁

定义:两个或两个以上的线程在执行过程中,争夺共享资源,并且不放弃自己占有的资源

解决:给线程设置不同的优先级,回退等待,按顺序加锁,设置请求锁的时限,超时就放弃请求并且释放自己占有的锁

 

客户端和服务器

客户端:为客户提供本地服务的程序

服务器:网络中能对其他机器提供服务的计算机系统

 

linux为什么比windows安全

windows用户量大,容易被攻击

linux开源,解决漏洞的人多,windows不开源

windows默认管理员权限,一旦被入侵危害范围大,linux默认非管理员权限,危害范围小

 

tcp

transmission control protocol传输控制协议,工作在传输层

ip internet protocol网络协议,工作在网络层

tcp:是面向连接,可靠的协议,传输之前要经过三次握手,不容易丢失数据,网络开销大

udp:是不面向连接,不可靠的协议,不需要对方确认就可以开始传输,容易丢失数据,网络开销小

三次握手:发送方发送syn,接收方发送ack,syn,发送方发送ack

四次挥手:发送方发送fin,接收方发送ack,接收方发送fin,发送方发送ack

 

http

hypertext transfer protocol超文本传输协议,工作在应用层

为什么基于tcp不基于udp,因为打开一个网页需要传输很多数据,tcp提供传输控制,按顺序组织数据,有错误纠正

 

视频电话用的什么协议

udp,因为视频电话对实时性要求高,udp传输速度快,比较合适

 

如何布置服务器

不会

 

服务器程序崩溃怎么解决

服务器超载:采用轮询机制,减少中断,减少上下文切换,扩容

线程死锁:设置不同的线程优先级,回退等待,按顺序加锁,设置请求锁时限,超时则放弃请求并且释放自己占有的锁

 

数据库索引类型

单列索引:普通索引:单个列,唯一索引:索引的列的值是唯一的,可以有空值,主键索引:索引的列的值是唯一的,不允许有空值

组合索引:多个列

全文索引:字段中是否包含指定的关键字,原理是将字段进行分词

 

主键索引和唯一索引

相同:索引的列的值是唯一的

不同:主键索引不可以有空值,唯一索引可以有空值

 

慢查询优化

将字段很多的表分解成多个表

分解关联查询

 

忘了写主键索引,但是已经有几万条数据,要怎么优化

导出表,清空表,建立索引,导入数据