在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Python编程语言应用领域极其广泛,目前被广泛应用于人工智能、数据分析、自动化运维、自动化测试、全栈开发领域。对于全栈开发工程师而言,网络编程是非常重要的一个环节。在面试过程中遇到网络编程的问题怎么办?下面小编整理了几个Python网络编程相关的问题与大家分享。
1、长链接与短链接的区别?
(1)短连接
连接->传输数据->关闭连接。
HTTP 是无状态的,浏览器和服务器每进行一次 HTTP 操作,就建立一次连接,但任务结束后就中断连接。短连接是指 SOCKET 连接后发送后接收完数据后马上断开连接。
(2)长连接
连接->传输数据->保持连接->传输数据->....->关闭连接。
长连接指建立 SOCKET 连接后不管是否使用都保持连接,但安全性较差。
2、HTTP 协议状态码有什么用,都表示什么意思?
作用:告诉用户当前操作所处的状态:
200 OK 服务器成功处理了请求(这个是我们见到最多的);
301/302 Moved Permanently(重定向);
404 Not Found 未找到资源;
500 Internal Server Error 服务器遇到一个错误,使其无法对请求提供服。
3、死锁
一个程序需要到另一个程序释放锁才能往下执行,另一个程序同样需要它的锁才能往下执行,从而就造成了死锁。解决方法(超时释放锁)。
4、浏览器发送一个请求到返回一个页面的具体过程
第一步,解析域名,找到 ip;
第二步,浏览器于网站建立 TCP 连接;
第三步, 浏览器发起默认的 GET 请求;
第四步,显示页面或返回其他。
5、使用 Socket 套接字需要传入哪些参数
1.通讯方式可以选择 AF_INET(用于 Internet 进程间通信) 或者 AF_UNIX(用于同一台机器进程间通信),实际工作中常用 AF_INET。
2.套接字类型套接字类型,可以是 SOCK_STREAM(流式套接字,主要用于 TCP 协议)或者 SOCK_DGRAM(数据报套接字,主要用于 UDP 协议)。
本文和大家分享了长链接和短连接的区别、HTTP协议状态码的作用、死锁、浏览器发送请求返回页面的过程以及使用socket套接字需要传入的参数五个问题。问题相对比较基础也是面试过程中,面试官常问的一些问题。请小伙伴们给予足够的重视。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python开发生成器和迭代器的区别?
Python开发生成器和迭代器的区别?迭代器是一个更抽象的概念,任何对象;迭代器对象,它在容器中逐个访问容器内元素,next()也是 python 的内置函数。
7441
2019-07-01 15:43:20
Redis和MongoDB优缺点对比
MongoDB和Redis都是NoSQL采用结构型数据存储。二者在使用场景中,存在一定的区别,这也主要由于二者在内存映射的处理过程,持久化的处理方法不同。MongoDB建议集群部署,更多的考虑到集群方案,Redis更偏重于进程顺序写入,虽然支持集群,也仅限于主-从模式。
7985
2019-07-16 17:51:21
Python主要用来做什么?
Python可以做web应用开发、网络爬虫、AI人工智能与机器学习、处理数据用来分析、数据科学:包括机器学习、数据分析和数据可视化、脚本等方面开发。
5370
2020-06-30 11:53:32
如何使用开发者工具查看HTTP协议的通信过程?
如何使用开发者工具查看HTTP协议的通信过程?Http是一个基于请求/响应模式的,无状态的协议。因为协议本身无状态,所以有时候需要记录状态,如登录之后就处于登录状态。学习查看HTTP协议的通信过程了解每项记录都是请求+响应的过程。
5266
2021-12-20 10:53:52
Python 成为最受欢迎的语言靠实力吗?
Python起源一种shell的脚本语言 ,而现在已经发展成最通用的语言之一了,TIOBE指数的数据显示,Python是目前世界上最受欢迎的编程语言。
3403
2022-05-06 14:24:58