cgDeepLearn

More than code


  • 首页

  • 分类

  • 最热

  • 标签

  • 归档

  • 关于

  • 搜索

Python下Select模块以及IO多路复用

发表于 2018-10-31 | 分类于 Python | | 热度: ℃
字数统计: 4,998

select模块以及IO多路复用

前言

Python中的select模块专注于I/O多路复用,提供了select, poll, epoll三个方法(其中后两个在Linux中可用,windows仅支持select),另外也提供了kqueue方法(freeBSD系统).

select()的机制中提供一fd_set的数据结构,实际上是一long类型的数组, 每一个数组元素都能与一打开的文件句柄(不管是Socket句柄,还是其他文件或命名管道或设备句柄)建立联系,建立联系的工作由程序员完成, 当调用select()时,由内核根据IO状态修改fd_set的内容,由此来通知执行了select()的进程哪一Socket或文件可读或可写。

select主要用于socket通信当中,能监视我们需要的文件描述符变化。

阅读全文 »

Python Socket编程

发表于 2018-10-24 | 分类于 Python | | 热度: ℃
字数统计: 1,571

Socket套接字

前言



socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。
socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)

- socket和file的区别

1. file模块是针对某个指定文件进行【打开】【读写】【关闭】

2. socket模块是针对 服务器端 和 客户端 Socket 进行【打开】【读写】【关闭】

下面我们通过几种不同方式来实现时间戳服务器端和客户端:TCP、UDP、SocketServer TCP、Twisted Reactor TCP

阅读全文 »

gRPC简介及其在Python中使用

发表于 2018-10-22 | 分类于 Python | | 热度: ℃
字数统计: 5,128



前言

gRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C# 支持.

gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。

阅读全文 »

MySQL-Datamask-ProxySQL

发表于 2018-07-31 | 分类于 Linux | | 热度: ℃
字数统计: 1,094

MySQL datamasking using ProxySQL

前言



操作环境一览:

- 操作系统: CentOS7

- MySQL: 5.5

- ProxySQL: 1.4.9

- ProxySQL主机IP: 192.168.48.100

- MySQL主库IP: 192.168.48.120

阅读全文 »

只在使用 Mix-in 组件制作工具类时进行多重继承

发表于 2018-06-11 | 分类于 Python | | 热度: ℃
字数统计: 1,483

Python是面向对象的编程语言,它提供了一些内置的编程机制,使得开发者可以适当地实现多重继承。但是我们仍然应该尽量避开多重继承。

前言



若一定要利用多重继承所带来的便利及封装性,那就编写mix-in类。mix-in是一种小型的类,它只定义了其他类可能需要提供的一套附加方法,而不定义自己的实例属性,此外,它也不要求使用者调用自己的__init__构造器。

阅读全文 »
123…6
cgDeepLearn

cgDeepLearn

Code Rocks!

29 文章
9 分类
86 标签
RSS
Github 网易云音乐
链链看
  • 😆 writeathink 😆
  • 关于此博客
© 2017 — 2021 cgDeepLearn | Site words total count: 70.8k
别扫我~
0%