博学谷 > 资讯 > Python > Python工程师常见面试题集锦--网络编程(1)

原创 Python工程师常见面试题集锦--网络编程(1)

发布时间:2019-07-02 16:30:23 浏览 386 来源:博学谷资讯 作者:枫调

      自从互联网诞生以来,基本上所有的程序都属于网络程序,也就需要设计到网络编程,在python中,就是在python程序本身这个进程内,链接别的服务器进程的通信端口进行通信。在Python程序员找工作的时候,京城被问到关于网络编程的问题。下面就和大家分享一下那些面试中经常出现的问题吧。

     

    Python工程师常见面试题集锦--网络编程(1)

      1.Tcp 协议和 udp 协议有什么区别?


      (1)TCP 面向连接(如打电话要先拨号建立连接);UDP 是无连接的,即发送数据之前不需要建立连接。
      (2)每一条 TCP 连接只能是点到点的;UDP 支持一对一,一对多,多对一和多对多的交互通信。
      (3)TCP 首部开销 20 字节;UDP 的首部开销小,只有 8 个字节。
      (4)TCP 的逻辑通信信道是全双工的可靠信道,UDP 则是不可靠信道。

      2.Post 和 get 区别?


      (1)GET 请求的数据会暴露在地址栏中,而 POST 请求则存在表单中提交所以 post 相对安全。
      (2)post 传输数据比 get 大。
      (3)post 比 get 安全。


      3.cookie 和 session 的区别?


      (1)cookie 数据存放在客户的浏览器上,session 数据放在服务器上。
      (2)cookie 不是很安全,别人可以分析存放在本地的 COOKIE 并进行 COOKIE欺骗考虑到安全应当使用 session。
      (3)session 会在一定时间内保存在服务器上。当访问增多,会比较占用服务器的性能考虑到减轻服务器性能方面,应当使用 COOKIE。
      (4)单个 cookie 保存的数据不能超过 4K,很多浏览器都限制一个站点最多保存 20 个 cookie。
      (5)建议:将登陆信息等重要信息存放为 SESSION其他信息如果需要保留,可以放在 COOKIE 中。

      4.什么是僵尸进程和孤儿进程,怎么避免僵尸进程?


      (1)孤儿进程:父进程退出,子进程还在运行的这些子进程都是孤儿进程,孤儿进程将被会被其它进程收养,不会造成影响。
      (2)僵尸进程:子进程退出,而父进程迟迟不回收,造成资源浪费。
      (3)避免僵尸进程的方法:1.fork 两次用孙子进程去完成子进程的任务。2.用 wait()函数使父进程阻塞。

      以上是4道常见的关于Python网络编程的面试题。对于没有接触过网络编程的同学,可能会觉得网络编程相关知识非常高深,当时熟悉其语法之后,就会变得非常简单。相对Python基础的面试类题目,网络编程在面试过程中并非常见的题目。不过作为工作中常用的核心技术,python开发工程师是务必需要掌握网络编程的。

上一篇:学习Python能拿多少钱?哪些人适合学习Python? 下一篇:Python开发工程师面试题之爬虫面试题分享

相关推荐 更多

最新文章

扫描二维码,回复"Python"获取100G资料包