摘要: Twsited Twsited是一个事件驱动的网络架构,其中包含了很多功能,例如:网络协议,线程,数据库管理,网络操作,电子邮件等。 事件驱动 简单来说,事件驱动分为两个部分,第一注册事件,第二触发事件 例子: event_list = [] def run(): for event in event_list: obj = event() ... 阅读全文
posted @ 2016-03-25 10:22 binges 阅读(1316) 评论(0) 推荐(0) 编辑
摘要: RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。 MQ全称Message Queue,消息队列(MQ)是一种应用程序对应用程序的通信方式。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是... 阅读全文
posted @ 2016-03-23 16:51 binges 阅读(721) 评论(0) 推荐(0) 编辑
摘要: Paramiko 该模块基于SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机(第一次登陆时需要输入yes,这行代码自动输入yes) ssh.set_missing_host_key... 阅读全文
posted @ 2016-03-17 20:47 binges 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 事件驱动与异步IO 事件驱动编程是一种编程规范,这里程序的执行流由外部事件来规定。它的特点是包含一个事件循环,但外部事件发生时使用回调机制来触发响应的处理。另外两种常见的编程规范是(单线程)同步以及多线程编程。 在单线程同步模型中,任务按照顺序执行。如果某个任务因为IO而阻塞,其他所有的任务都必须等待,直到它完成之后它们才能依次执行。这种明确的执行顺序和串行化处理的行为是很容易推断... 阅读全文
posted @ 2016-03-17 20:13 binges 阅读(1639) 评论(0) 推荐(0) 编辑
摘要: socketserver socketserver内部使用IO多路复用以及“多线程”和“多进程”,从而实现并发处理多个客户端请求的scoket服务端。即,每个客户端请求连接到服务器时,socket服务端都会在服务器是创建一个“线程”或“进程”专门负责处理当前客户端的所有请求。 ThradingTCPServer ThradingTCPServer实现的socket服务器内部会为每个clien... 阅读全文
posted @ 2016-03-10 17:25 binges 阅读(4224) 评论(0) 推荐(1) 编辑
摘要: socket socket也叫套接字,用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过套接字向网络发送出请求或者应答网络请求。 socket起源于Unix,而Unix、Linux的思想就是一切皆文件,对于文件用打开,读写,关闭模式来操作。socket就是该模式的一个实现,socket即是一种特使的文件,一些socket函数就是对其进行的操作(读写IO,打开关闭) socket和f... 阅读全文
posted @ 2016-03-09 17:54 binges 阅读(191) 评论(0) 推荐(0) 编辑
摘要: isinstance(obj,cls) 检测obj是否是类cls的对象,是True,不是False class Foo(object): pass obj = Foo() isinstance(obj, Foo) issubclass(sub,super) 检测sub类是否是super类的派生类 class Foo(object): pass ... 阅读全文
posted @ 2016-03-09 09:35 binges 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 面向对象编程 面向对象的介绍 面向对象的宗旨 不写重复的代码 代码易扩展,程序遵循易读,易改的原则 面向对象的特性 封装 把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏 继承 通过继承创建的新类称为子类或派生类 被继承的类称为基类,父类或超类 继承的过程,就是一般到特殊的过程 ... 阅读全文
posted @ 2016-03-08 13:55 binges 阅读(146) 评论(0) 推荐(0) 编辑
摘要: shelve xml处理 configparser hashlib logging shelve模块 shelve是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式 import shelve sw = shelve.open('shelve_test.pkl') # 创建shelve对象 name... 阅读全文
posted @ 2016-03-06 16:20 binges 阅读(252) 评论(0) 推荐(0) 编辑
摘要: time & datatime 模块 random os sys shutil json & picle time & datetime 时间戳(1970年1月1日之后的秒数,即:time.time() 格式化的字符串(如:2016-02-24 14:20 即: time.strftime('%Y-%m-%d') 结构化时间(元组包含了:年,日,星期... 阅读全文
posted @ 2016-03-06 15:35 binges 阅读(432) 评论(0) 推荐(0) 编辑