• 网络编程相关


    1. http协议中GET和POST有什么区别,cookie 和sessions有什么不同和联系? 2017音未公司
    get是从服务器上获取数据,post是向服务器发送数据

    get相对于post的话不安全,传输的数据一般明文显示在url中,post一般用户表单的提交,数据通过ssl加密传输

    get传送的数据有限制,不能大于2k,post传输的数据量大,而且一般不受限制

    get虽说安全比较低,post安全性较高,但是执行的速度比post好


    cookie的数据是放在客户端浏览器中,sessions是一般数据放在服务器上

    cookie不是很安全,别人可以本地的cookie进行欺骗

    session会在一定时间内存在服务器上


     httphttps的区别

    1.http简称超文本传输协议端口是80,是一种网络链接传输文本协议,https是一种安全超文本传输协议端口是443

    2.http传输信息是以明文显示;https采用了ssl加密传输,信息是加密传输

    3.http的链接是没有状态的,(设计之初就是为了浏览文本信息的)

    4.https协议需要到ca申请证书,一般免费证书很少,需要交费


    简述三次握手和四次挥手?

    三次握手:客户端会发送一个syn的数据包给服务器,称为第一次握手,服务器收到客户端的数据包后,会相应的产生一个ack的数据包发送给客户端,此为第二次握手,客户端收到后,会将ack的值再次返回给服务器,此为第三次握手

    四次挥手:客户端第三次握手,会把发送2个数据包,一个通知包,一个数据包,服务器收到数据包后(代表三次握手完成),会发送2个包,一个通知包,一个数据包,客户端收到数据后,会自动调用close方法,给服务器发送一个通知包,服务器收到后会给客户端发送2个包,一个通知包,一个数据包(即告诉客户端服务器也close了),客户端收到后,会给服务器发送一个通知包,告诉服务器收到了


    TCP/UDP比较

    面向连接(确认有创建三方交握,连接已创建才作传输。)

    有序数据传输

    重发丢失的数据包

    舍弃重复的数据包

    无差错的数据传输

    阻塞/流量控制


    TCP的实现流程

     客户端发起请求给DNS域名解析服务器,DNS会将请求的url转换为具体的IP地址,发送给服务器,如果向服务器请求的资源是静态资源比如说html/css/js/jpg等这些,服务器会直接返回内容给客户端,如果是动态资源,服务器会根据内容查询数据库中的数据,并且将查询的结果返回到服务器,服务器在将内容以及状态ma返回给客户端


    为什么Python中有了GIL还要有同步互斥锁?

    首先明确一点GIL是全局解释器锁,控制python中线程间的调用,保证同一时间片下每次只有一个线程在运行,保护内核的共享资源,线程的同步和互斥解决的是线程间数据的访问正确性问题,这是2个问题




  • 相关阅读:
    【程序员的自我修养】读书笔记
    Notepad++ 正则表达式
    【BI】商务智能
    【BI】OLTP与OLAP的区别
    【Linux】条件判断eq、ne、gt、lt、ge、le
    【shell】shell基础脚本合集
    capture同focus
    c++101rule
    老生常谈,正确使用memset
    C语言的数组名和对数组名取地址
  • 原文地址:https://www.cnblogs.com/syketw23/p/7667862.html
Copyright © 2020-2023  润新知