Python中的Socket工作原理时怎样的?
巴扎黑
巴扎黑 2017-04-18 09:46:41
[Python讨论组]

其实就是一个请求到响应的具体流程,中间都经历了什么,就是不知道流程是怎样的,求解。

巴扎黑
巴扎黑

全部回复(2)
巴扎黑

其实是网络知识,更多的是需要了解:
1.什么是TCP,UDP,为啥服务器要绑定端口监听,而客户端不需要
2.网络原理:网路路由和封包等

如果你学习过计算机网络或者看过APUE,对这些概念应该会很清楚。

PHPz

你的问题是socket工作原理描述又是请求响应流程 我不是特别清楚你想问什么。。
我只能猜测你问的可能是一个http请求中间到底都经历了什么。顺便集合pep3333来说一下

  1. 根据请求地址去dns找ip地址,本地缓存找,本地网关找,网关上级dns服务器找。。。。。。。

  2. 与目标建立起tcp链接

  3. 然后发送http请求(get, post, put)
    到了这一步我们假设对方是一台python wsgi服务器。

  4. wsgi接到请求后,根据pep3333传递给web框架 我们假设是flask

  5. 然后根据协议拿到上下文对象(environ),推给一个全局变量。

  6. 如果有before_request钩子 执行这个里面的逻辑。

  7. 执行路由过去的代码

  8. 执行after_reqeust钩子代码

  9. 重新发回给wsgi服务器

  10. 发回给建立连接的a方

我理解的大概是这样。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号