博客
关于我
校招面试题4------乐视/滴滴/华为
阅读量:223 次
发布时间:2019-02-28

本文共 955 字,大约阅读时间需要 3 分钟。

11.怎么保持长连接

一个连接是通过服务器地址和端口还有客户端地址和端口来识别唯一连接的。
Connection:keep-alive
(1)在应用层使用heartbeat来主动检测,在应用层制定协议,发心跳包,客户端和服务端制定一个通讯协议,每隔一定时间(一般15秒左右),由一方发起,向对方发送协议包;对方收到这个包后,按指定好的通讯协议回一个。若没收到回复,则判断网络出现问题,服务器可及时的断开连接,客户端也可以及时重连。
(2)通过TCP协议层发送KeepAlive包。这个方法只需设置好你使用的TCP的KeepAlive项就好,其他的操作系统会帮你完成。操作系统会按时发送KeepAlive包,一发现网络异常,马上断开。在应用层不需自己定协议,通信的两端,只要有一端设好这个值。还有一个好处就是节省网络资源。

7.http与https的区别

(1)HTTPS是HTTP的安全版,是HTTP+SSL,HTTP协议以明文方式发送内容,不提供任何方式的数据加密;
(2)https协议需要到ca申请证书,一般免费证书很少,需要交费。http是免费的;
(3)http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443
(4)http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

3.问了浏览器如何实现的免登陆之类的功能,进而问了cookie和session相关的知识。

(1) 很多人说利用cookie保存加密后的密码和用户ID,当再次访问网站时服务器提取cookie的用户ID和密码,如果通过验证,则不需要重新输入账号和密码。
(2)1、在用户登录成功时,创建session对象,保存用户信息
2、将此session的sessionid保存到cookie中
3、同时将sessionid于session对应关系存储到应用域中,以便后面可以根据sessionid来获取到session
4、在用户关闭浏览器,重新打开浏览器访问网站时,读取用户的cookie,得到sessionid
5、根据sessionid获取到第3步存储到应用域中的session对象
6、从session中读取用户信息
 

转载地址:http://ayqs.baihongyu.com/

你可能感兴趣的文章
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql -存储过程
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
MySQL 8.0开始Group by不再排序
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
multi swiper bug solution
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
MySQL binlog三种模式
查看>>
multi-angle cosine and sines
查看>>
Mysql Can't connect to MySQL server
查看>>
mysql case when 乱码_Mysql CASE WHEN 用法
查看>>
Multicast1
查看>>
mysql client library_MySQL数据库之zabbix3.x安装出现“configure: error: Not found mysqlclient library”的解决办法...
查看>>
MySQL Cluster 7.0.36 发布
查看>>