摘要: 1、异常和断言的用法 断言assert,当assert后面的条件为假时,会触发AssertionError异常,通常的应用场景是如果某一个条件必须为真才能继续向下执行,我们为了避免某一个时间条件为假时会触发异常索性就自己触发,这就是assert的普遍用法 》》》》except和assert联合使用: 阅读全文
posted @ 2018-11-27 14:17 九二零 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 1、模块 pip安装pipreqs模块 2、 生成文件 法一:常用 在项目目录下 pipreqs /home/project/location 后面跟着的就是项目的绝对路径 法二:不常用 项目目录下 pip freeze > requirements.txt 3、根据文件一次性安装所有的包 当前项目 阅读全文
posted @ 2018-07-04 18:29 九二零 阅读(143) 评论(0) 推荐(0) 编辑
摘要: RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。 MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信, 阅读全文
posted @ 2018-04-10 18:51 九二零 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 4、管道 redis-py默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作,如果想要在一次请求中指定多个命令,则可以使用pipline实现一次请求指定多个命令,并且默认情况下一次pipline 是原子性操作。 5、发布订阅 发布者:服务器 订阅者:Dashboad和数据处 阅读全文
posted @ 2018-04-10 17:33 九二零 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 1. 发布流程: - 代码发布: - git - saltstack: state推送文件 - saltstack: state执行命令 - 静态文件发布 - git - saltstack: state推送文件 - SQ... 阅读全文
posted @ 2018-04-10 09:59 九二零 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 1. 发布系统:实现方案对比 背景:开发这套系统的背景 - 第1阶段:scp/FTP - 第2阶段:shell脚本+FTP(运维人员) f = open('ftp://zzz.zip') - 第3阶段:shell脚本+SVN(运维人员... 阅读全文
posted @ 2018-04-08 19:08 九二零 阅读(145) 评论(0) 推荐(0) 编辑
摘要: import tornado.ioloop import tornado.web import tornado.websocket # 视图 class LoginHandler(tornado.web.RequestHandler): def get(self, *args, **kwargs): self.render('login.html',msg='') ... 阅读全文
posted @ 2018-04-08 16:05 九二零 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 一、介绍 WebSocket协议是基于TCP的一种新的协议。WebSocket最初在HTML5规范中被引用为TCP连接,作为基于TCP的套接字API的占位符。它实现了浏览器与服务器全双工(full-duplex)通信。其本质是保持TCP连接,在浏览器和服务端通过Socket进行通信 全双工指的是数据 阅读全文
posted @ 2018-04-08 15:44 九二零 阅读(581) 评论(0) 推荐(0) 编辑
摘要: 管理工具: 基于paramiko模块实现,基于SSH - fabric - ansible - saltstack - puppet a. paramiko,远... 阅读全文
posted @ 2018-04-03 17:29 九二零 阅读(89) 评论(0) 推荐(0) 编辑
摘要: Paramiko import paramiko private_key = paramiko.RSAKey.from_private_key_file('/home/auto/.ssh/id_rsa') # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在kn 阅读全文
posted @ 2018-04-03 17:10 九二零 阅读(68) 评论(0) 推荐(0) 编辑