课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
对于大多数的web前端编程开发程序员来说。除了需要了解关于css样式表等网页编程代码以外,对于优化网页也应该有自己的方法,下面我们就一起来了解一下,关于提高网站加载速度的一些知识点。
1.如何理解HTTP是无状态的?
无状态是HTTP协议的一个特点,就是指协议对事务没有记忆功能,也就是说,我和服务器连续会话两次,这两次会话没有任何联系,完全不会记录任何信息。
2.HTTP和HTTPS有什么区别?
http和https是两种完全不同的连接方式,端口不一样前者是80,后者是443;
HTTP和简单是无状态,无连接的。HTTPS是基于HTTP开发的,它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版;
在网络模型中,HTTP工作于应用层,HTTPS工作于传输层;
HTTP无需加密,HTTPS会对传输的数据进行加密。
3.HTTP.0和HTTP.的区别?
HTTP.支持长连接
HTTP.增加host字段,如果信息中没有Host域,服务器讲会返回一个400.而HTTP.0默认每台服务器都绑定一个的IP地址。
HTTP.加入了一个新的状态码00(continue)。允许客户端在发request消息body之前先用requestheader试探一下server,看server要不要接收requestbody,再决定要不要发requestbody。目的是节约带宽。
HTTP.可以将发送的信息分割成若干个任意大小的数据块,每个数据块在发送时都会附上一个长度,以零数据块作为结尾。这样的方法允许对方只缓存一个片段,避免缓冲整个信息带来的过载。
HTTP.在cache上添加了一些新的特性,当缓存对象的Age超过expire时,不需要舍弃对象,而是与源服务器进行重激活。
4.进程与线程的区别?
如何理解线程与进程?
计算机的CPU,就好比一个工厂。
工厂的电力有限,一次只能一个车间开工,开工时,其他车间就必须停工。意指CPU一次只能运行一个任务。
进程就好比工厂的每一个车间,CPU总是运行一个进程,其他进程就属于非运行状态。
一个车间里有很多人,大家协同完成一个任务,车间里的每一个人就好比一个线程。
车间里的空间是工人们共享的,许多房间是每个工人都可以进出的。象征一个进程的内存空间是共享的,每个线程都可以使用这些空间。
可是有些房间大小不同,有些房间只能容纳一个人,比如厕所,里面有人的时候,其他人就不能进去。这代表某些线程在使用某些共享空间时,其他线程必须等他使用结束,才能使用这块空间。
防止他人进入的方法就是在门口加一把锁,锁开了其他人才能进去。这就叫互斥锁,防止多个线程同时读写某一块内存。
有些房间很大可以容纳n人,比如厨房,如果人数大于n,多出来的人就只能在外面等着。好比某些内存,只能给固定数目的线程使用。
解决这样的问题,就是在门外挂n把钥匙,没进去一个人,就拿走一把钥匙,出来时再把钥匙挂回原处,有人看见没有钥匙了,就必须在门口等待。这种做法叫做信号量,保证多个线程不会冲突。
区别:
调度:进程是系统分配调度的一个基本单位,至少拥有一个线程;线程是一个使用资源的基本单位。
资源:进程各自拥有独立的地址空间,资源,共享复杂,同步简单;线程共享进程资源,共享简单。
占用内存:进程占用内存多,切换复杂cpu利用率低;线程占用内存少,切换简单,CPU利用率高。
进程不会相互影响;线程一个挂掉可能导致整个进程挂掉。
5.TCP与UDP的区别?
TCP是面向连接的(先拨号再建立连接);UDP是无连接的。
TCP提供可靠的传输服务,无差错不丢失;UDP尽大努力交付,不保证可靠交互。
每一条TCP是点到点的;UDP支持一对一,一对多,多对一和多对多的交互信息。
TCP部开销小;UDP部开销大。
6.如何提高网站的加载速度?
使用图片地图,如果一个导航栏是很多图片组成,那每个选项就是一张图片,无疑是增加了http请求书。我们为何不把多张图片合成一张,图片地图允许在一个图片上关联多个url,根据你点的位置决定进入哪个url。
CSS精灵,比如一个动态效果有多个状态,每次切换一个效果就要更换一张图片,那么可以选择将多张图片合成一张图片减少字节数,通过指定css的backgroud-image和backgroud-position来显示图片。
合并脚本,利用打包多个js合并为一个,多个css合并成一个,减少请求次数。
当要在body上多次添加div的时候,使用DocumentFragment来代替直接appendChild。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。