Python 网络编程基础

一、网络编程基础知识:OSI七层模型、网络协议、套接字编程

    Python 网络编程基础
二、TCP&UDP SOCKET编程

    1、TCP服务端和客户端的搭建

    Python 网络编程基础
    2、UDP通信,UDP与TCP的对比

    Python 网络编程基础
    3、SOCKET其他常用方法和属性

    Python 网络编程基础

三、IO:IO分类、IO多路复用

    Python 网络编程基础
四、进程间通信

    Python 网络编程基础

    1、本地套接字

    Python 网络编程基础
    2、管道

    Python 网络编程基础
    3、消息队列    

    Python 网络编程基础
    4、共享内存

    Python 网络编程基础
    5、信号

    Python 网络编程基础
    6、信号量

    Python 网络编程基础

五、多任务编程:什么是进程、父子进程、孤儿进程、僵尸进程

    Python 网络编程基础
六、多进程

    1、multiprocessing 模块

    Python 网络编程基础
    2、进程池

    Python 网络编程基础
    3、同步互斥

    Python 网络编程基础

七、多线程

    1、threading 模块

    Python 网络编程基础
    2、线程间通信、同步互斥、GIL

    Python 网络编程基础
    3、设计模式

    Python 网络编程基础

八、协程

    1、greenlet

Python 网络编程基础
    2、pip 标准第三方库管理工具 常用命令

    Python 网络编程基础

九、服务器模型

    1、服务器分类

    Python 网络编程基础
    2、基本的服务器模型

    Python 网络编程基础

*GIL   全局解释器锁:

    造成python中的多线程实质是并发。

    GIL的存在,在单核时代使数据更安全;而现在多核时代成了性能的瓶颈,Python为了应对这个问题,提倡我们使用multiprocessing中的Process类。

    目前随着硬件成本降低,更加注重开发效率,多进程的使用越来越多。

*Python多线程的使用场景:计算密集型的场景,比如 解密,科学计算,图像处理,机器学习等等;

 Python多线程的使用场景:IO密集型的场景,爬虫,网络下载程序;


    3、HTTP协议

    Python 网络编程基础
    4、软件服务器架构

    Python 网络编程基础

十、软件项目开发流程

    Python 网络编程基础