11 2017 档案

摘要:参考博客:https://www.cnblogs.com/itogo/p/5635629.html 一、简介 Queue是python标准库中的线程安全的队列(FIFO)实现,提供了一个适用于多线程编程的先进先出的数据结构,即队列,用来在生产者和消费者线程之间的信息传递。其作用可以使程序实现松耦合即 阅读全文
posted @ 2017-11-30 19:59 Bigberg 阅读(355) 评论(0) 推荐(0) 编辑
摘要:一、前言 Python线程的Event(事件)用于主线程控制其他线程的执行,Event主要提供了 set、wait 、clear等方法 二、红绿灯实例 有个红灯停,绿灯行的简单事例: 汽车只会在绿灯的时候跑起来 阅读全文
posted @ 2017-11-29 19:54 Bigberg 阅读(330) 评论(0) 推荐(0) 编辑
摘要:一、前言 互斥锁 同时只允许一个线程更改数据,而Semaphore是同时允许一定数量的线程更改数据 ,比如厕所有3个坑,那最多只允许3个人上厕所,后面的人只能等里面有人出来了才能再进去。 二、semaphore 信号量semaphore,是一个变量,控制着对公共资源或者临界区的访问。信号量维护着一个 阅读全文
posted @ 2017-11-29 10:04 Bigberg 阅读(671) 评论(0) 推荐(0) 编辑
摘要:一、互斥锁(Mutex) 在上节最后我们讲到了线程安全,线程同步能够保证多个线程安全访问竞争资源,最简单的同步机制是引入互斥锁。互斥锁为资源引入一个状态:锁定/非锁定。某个线程要更改共享数据时,先将其锁定,此时资源的状态为“锁定”,其他线程不能更改;直到该线程释放资源,将资源的状态变成“非锁定”,其 阅读全文
posted @ 2017-11-28 17:15 Bigberg 阅读(9203) 评论(0) 推荐(0) 编辑
摘要:参考博客:https://www.cnblogs.com/mindsbook/archive/2009/10/15/thread-safety-and-GIL.html https://www.cnblogs.com/MnCu8261/p/6357633.html http://python.job 阅读全文
posted @ 2017-11-27 17:36 Bigberg 阅读(722) 评论(0) 推荐(0) 编辑
摘要:一、简介 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐渐暴露出了很多不足。 首先,rsync在同步数据时,需要扫描所有文件后进行比对,进行差量传输。如果文件数量达到了百万甚至千万量级,扫描所有文件将是非常耗时的,并且正在发生变化的往往是其中很少 阅读全文
posted @ 2017-11-24 10:32 Bigberg 阅读(2010) 评论(0) 推荐(0) 编辑
摘要:一、前言 一个程序至少有一个主线程,主线程启动子线程后,它们之间并没有隶属关系。主线程和子线程执行是并行的,相互独立。主线程执行完毕后默认不等子线程执行结束就接着往下走了,如果有其他程序就会运行另外的程序,如果没有就等待子线程执行完成后结束程序。 结果: 二、join 等待子线程完成 如果在线程实例 阅读全文
posted @ 2017-11-13 15:26 Bigberg 阅读(1112) 评论(0) 推荐(0) 编辑
摘要:一、前言 我们知道单核cpu同时只能执行一个任务。如果在一个单核cpu的电脑上,我们可以同时登入qq、听音乐或者写文档等,给我们的感觉它们就是同时在进行的。这是由于cpu的分时技术,使它不断的进行上下文的切换,根据任务的优先级不停的在各个任务间切换执行。而且由于cpu运行太快,我们根本感觉不到它在切 阅读全文
posted @ 2017-11-09 19:03 Bigberg 阅读(491) 评论(0) 推荐(0) 编辑
摘要:参考博客:http://blog.csdn.net/zheng548/article/details/54669908 一、多道程序 多道程序设计技术是操作系统最早引入的技术,它的设计思想是允多个程序同时进入内存,并允许它们交替在CPU中运行,它们共享系统中的各种硬、软件资源。当一道程序因I/O请求 阅读全文
posted @ 2017-11-09 11:24 Bigberg 阅读(325) 评论(0) 推荐(0) 编辑
摘要:一、paramiko模块 Python的paramiko模块基于SSH用于连接远程服务器并执行相关的操作。 1.1 在windows上安装paramiko模块 测试环境: win10 , python3.5 并且已安装 pip 在命令窗口,切换到 python 安装目录中的 Scripts 执行: 阅读全文
posted @ 2017-11-07 20:14 Bigberg 阅读(602) 评论(0) 推荐(0) 编辑
摘要:Python三元运算表达式 表达式格式 事例 结果为: 1 阅读全文
posted @ 2017-11-07 11:54 Bigberg 阅读(1607) 评论(0) 推荐(1) 编辑
摘要:参考博客:http://www.cnblogs.com/lincj/p/5617605.html 一、os.walk() os.walk(top, topdown=True, onerror=None, followlinks=False) 可以得到一个三元tupple(dirpath, dirna 阅读全文
posted @ 2017-11-05 10:01 Bigberg 阅读(5420) 评论(0) 推荐(0) 编辑
摘要:一、简介 RabbitMQ是由Erlang语言编写的,运行也需要Erlang环境 二、安装Erlang 测试一下 设置环境变量 三、安装rabbitmq 下载安装rabbitmq 启动 创建用户 为用户分配权限 开启插件管理页面 访问 阅读全文
posted @ 2017-11-03 16:19 Bigberg 阅读(311) 评论(0) 推荐(0) 编辑
摘要:logstash中配置的GeoIP的数据库解析ip了,这里是用了开源的ip数据源,用来分析客户端的ip归属地。官网在这里:MAXMIND 下载GeoLiteCity数据库 修改配置文件(自己定义的config/logstash.conf) 在 filter中添加 在kibana中展示的效果 阅读全文
posted @ 2017-11-03 15:59 Bigberg 阅读(5242) 评论(1) 推荐(0) 编辑
摘要:一、 简介 1.1 介绍 ELK是三个开源工具组成,简单解释如下: Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 Logstash是一个完全开源的工具,它可以对你的日志进行收集、 阅读全文
posted @ 2017-11-03 09:01 Bigberg 阅读(3523) 评论(0) 推荐(1) 编辑
摘要:一、修改原因 因为要获取nginx访问信息,作为开发的数据使用,但是nginx的access.log文件中的默认的时间格式是这样的: [02/Nov/2017:20:48:25 +0800] 而要求的格式类似如下: [2017-11-02 20:52:06] 二、修改方法 方法都几种,但是修改源码的 阅读全文
posted @ 2017-11-02 21:12 Bigberg 阅读(7259) 评论(1) 推荐(1) 编辑
摘要:一、获取全部cookie信息 这个比较方便,直接在nginx.conf文件中添加$http_cookie 第二步,在server 中的access.log 后加上 main 二、获取单个cookie的值 有时候要是是觉得某个cookie很重要,需要单独取出来,免得去一堆麻烦 首先,也是在nginx. 阅读全文
posted @ 2017-11-02 21:02 Bigberg 阅读(14439) 评论(0) 推荐(0) 编辑