2018年8月4日

selecter模块默认使用epoll 实现IO多路复用,展示单线程的并发效果

摘要: import selectors import socket sel = selectors.DefaultSelector() def accept(sock, mask): conn, addr = sock.accept() # Should be ready print('accepted' 阅读全文

posted @ 2018-08-04 17:01 zhangmingda 阅读(142) 评论(0) 推荐(0) 编辑

2018年8月3日

ELK 使用filebeat替代Logstash收集日志

摘要: 使用beats采集日志 之前也介绍过beats是ELK体系中新增的一个工具,它属于一个轻量的日志采集器,以上我们使用的日志采集工具是logstash,但是logstash占用的资源比较大,没有beats轻量,所以官方也推荐使用beats来作为日志采集工具。而且beats可扩展,支持自定义构建。 官方 阅读全文

posted @ 2018-08-03 11:28 zhangmingda 阅读(415) 评论(0) 推荐(0) 编辑

2018年8月2日

ELK部署笔记

摘要: ELK安装准备工作 准备3台机器,这样才能完成分布式集群的实验,当然能有更多机器更好: 192.168.0.46 192.168.0.150 192.168.0.76 角色划分: 3台机器全部安装jdk1.8以上版本,因为elasticsearch是java开发的 3台全部安装elasticsear 阅读全文

posted @ 2018-08-02 14:14 zhangmingda 阅读(231) 评论(0) 推荐(0) 编辑

2018年7月31日

同步IO与一部IO、IO多路复用(番外篇)select、poll、epoll三者的区别;blocking和non-blocking的区别 synchronous IO和asynchronous IO的区别

摘要: Python之路,Day9 , IO多路复用(番外篇) 同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的。所以先限定一下本文的上下文。 本文讨论的背景是Linux环境下的network IO。 一 概念说明 在进行解释之前,首先要说明几个 阅读全文

posted @ 2018-07-31 21:45 zhangmingda 阅读(676) 评论(0) 推荐(0) 编辑

编程范式 ----事件驱动模型/单线程/多线程

摘要: http://www.cnblogs.com/alex3714/articles/5248247.html 看图说话讲事件驱动模型 在UI编程中,常常要对鼠标点击进行相应,首先如何获得鼠标点击呢?方式一:创建一个线程,该线程一直循环检测是否有鼠标点击,那么这个方式有以下几个缺点:1. CPU资源浪费 阅读全文

posted @ 2018-07-31 17:21 zhangmingda 阅读(663) 评论(0) 推荐(0) 编辑

什么是协程?与线程和进程对比优劣在哪?gevent协程示例代码

摘要: 协程 协程,又称微线程,纤程。英文名Coroutine。。一句话说明什么是线程:协程是一种用户态的轻量级线程。 协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。 因此: 协程能保留上一次调用时的状态(即所有局部状态的一 阅读全文

posted @ 2018-07-31 15:51 zhangmingda 阅读(1343) 评论(0) 推荐(0) 编辑

2018年7月28日

HTTP状态码一览表

摘要: 常见Http状态码大全 2018年03月16日 11:36:31 阅读数:153 一些常见的状态码为: 200 - 服务器成功返回网页404 - 请求的网页不存在503 - 服务不可用详细分解: 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明100 (继续) 请求者 阅读全文

posted @ 2018-07-28 12:40 zhangmingda 阅读(162) 评论(0) 推荐(0) 编辑

2018年7月26日

多进程 multiprocessing 模块进程并发Process;Pool ;Queue队列 、threading模块;

摘要: multiprocessing 模块中的 Process类提供了跨平台的多进程功能,在windows和linux系统都可以使用。 1、首先要实例化一个类,传入要执行的函数。 实例名 = Process(target=<要执行的函数名>) 2、调用实例的.start()方法启动进程 实例名.start 阅读全文

posted @ 2018-07-26 23:03 zhangmingda 阅读(439) 评论(0) 推荐(0) 编辑

2018年7月1日

queue模块

摘要: 先入先出、先入后出;按优先级 #!/usr/bin/env python # Author:Zhangmingda import queue q = queue.Queue() #先入先出 q.put('A') q.put('B') q.put('C') print(q.get()) print(q 阅读全文

posted @ 2018-07-01 22:26 zhangmingda 阅读(126) 评论(0) 推荐(0) 编辑

2018年6月28日

多线程多进程学习threading,queue线程安全队列,线程间数据状态读取。threading.local() threading.RLock()

摘要: http://www.cnblogs.com/alex3714/articles/5230609.html python的多线程是通过上下文切换实现的,只能利用一核CPU,不适合CPU密集操作型任务,适合io操作密集型任务(如web高并发get读取网页文件) io操作不占用CPU 计算操作占用CPU 阅读全文

posted @ 2018-06-28 18:19 zhangmingda 阅读(195) 评论(0) 推荐(0) 编辑

导航