自动化运维Python系列之IO多路复用、SocketServer源码分析

12-04
IO多路复用 IO多路复用是指:通过一种机制,可以监视多个描述符,一旦某个系统描述符就绪(一般是读就绪或者写就绪)能够通知程序进行相应的读写操作 实例化例子就是在SocketServer模块中,客户端和服务端建立好连接,此时服务端通过监听conn这条链路,一旦客户端发送了数据,conn链路状态就发生变化,服务端就知道有数据要接收... Linux系统中同时存在select.pull.epoll三种IO多路复用机制 windows中只有select机制 1)select select本质上是通过设

IE识别

08-01
1. <!--[if lt IE 7 ]> <html class="ie ie6"> <![endif]--> 2 <!--[if IE 7 ]> <html class="ie ie7"> <![endif]--> 3 <!--[if IE 8 ]> <html class="ie8"> <![endif]--> 4 <!--[i

内存覆盖

07-07
bug逃不掉最终还是的你来解决,前几天遇到一个死机bug,刚开始感觉很奇怪,因为这代码我之前用的好好的,把它封装成库利用回调调用就死机了.怀疑局部变量调用完后释放了,于是加了个static,呵呵...正好不死了,但是后来看了看代码跟局部变量没有关系,但是找了找找不到原因后面就放弃了.但事情就是巧了,今天在做测试的时候突然点了一个按钮字体全错了还有一点乱码,没办法只有把字体指针的地址打印出来,发现点击完那个键之后指针变空了,郁闷啊!!!我只在初始化的时候赋了一次值其他地方没有赋值了,哎...只得到

ajax3

05-16
var xmlHttp; function sendParam(){ //先获取对象if(window.ActiveXObject){ xmlHttp = new ActiveXObject("MICROSOFT.XMLHTTP"); }else if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); } if(!xmlHttp){ alert("没有获取到对象!");return; } var user

Hdu3785

07-10
<span style="color:#6600cc;">/* G - 寻找大富翁 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Description 浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁. Input 输入包含多组测试用例. 每个用例首先包含2个整数n(0<n<=100000)和m(0<m<=10),其中:

xcode6 怎样下载ios7模拟器

08-14
1. 怎样下载ios7模拟器 点击xcode.选择"Preferences".选择"downloads",就能够看见IOS 7.1,只是下载有点慢. 2. 怎样高速下载呢 进入文件夹/Users/<username>/Library/Caches/com.apple.dt.Xcode/Downloads  将5dba03a4b33ac2c0d7a72e94475011c25eb06a73.dvtdownloadableindex 类似文件重命名成.pli

二分求幂(快速求幂,二进制求幂)

04-12
二分求幂, 非递归求法(二进制求法): 比如 2^5就是5个2相乘,按照5的二进制求 3^10就是8个3相乘,再2个3相乘. 处理幂的二进制,具体实现代码如下: long long quickmulti(long long a,long long b) { long long res=1; while(b) { if(b&1) //如果最后一位为1,则res*=a; res*=a; a*=a; //a*=a b>>=1; //b%=2 } return res; }

jsp之response方法

03-30
response简介 response对象:对客户端的请求作出回应,将Web服务器处理后的结果发回客户端. response对象:属于javax.servlet.HttpServletResponse接口的实例. HttpServletResponse接口的定义:public interface HttpServletResponse extends ServletResponse HttpServletResponse接口是ServletResponse接口的唯一子接口 response对象常

【我的书】Unity Shader的书 — 目录(2015.09.04更新)

09-02
写在前面 感谢所有点进来看的朋友.没错,我目前打算写一本关于Unity Shader的书. 出书的目的有下面几个: 总结我接触Unity Shader以来的历程,给其他人一个借鉴.我非常明白学Shader的艰难,在群里也见了很多人提出的问题.我觉得学习Shader还是一件有规律可循的事情,但问题是中文资料难觅,而大家又不愿意去看英文...这对我有什么好处呢?强迫我对知识进行梳理,对细节问题把握更清楚. 第二个原因你懂的. 关于本书的定位问题: 面向Unity Shader初学者,但要: 有一定的

综合网上的各种不靠谱的算法,自己写的四舍五入方法

06-07
//单元测试通过 /**  *   四舍五入并保留N位小数  *  *  @param number    数值字符串  *  @param afterPoint 第几位小数  *  *  @return 处理后结果  */ +(NSString *)halfUpDecimalNumber:(NSString *)number afterPoint:(int)position {     /*      Mode的枚举类型      NSRoundPlain, // 四舍五入      NSRo

我反对你,正是对你的支持

11-07
  最近的照片 [http://www.douban.com/photos/album/145506893/], [http://www.douban.com/photos/album/146651109/], [http://www.douban.com/photos/album/145962336/]. 1.反对并非不支持 昨天中午,有同事要求我评论他们的技术方案.我给出了反对意见,认为不够完善.我理解对于我的负面意见他们的激动,如同XL同学所说,人家风尘仆仆地来了,一腔热情,可能满希望得到

12.文件系统——磁盘管理之RAID概述

08-08
一.什么是RAID 从上个世纪80年代起,主流的硬盘接口主要有两类: A.IDE:用于桌面系统 B.SCSI:用于工业系统(因为转速高,平均巡道时间短,性能较IDE好) SCSI的性能虽然优于IDE,但其成本约是IDE的五倍以上,故无法广泛应用.人们为了节省成本的同时保持性能,于是设计出了一种方案,即将很多廉价的IDE设备联合起来,当做一块硬盘使用.这种将多块廉价IDE设备并行联合使用的模式就是RAID--廉价冗余磁盘阵列(Redundent Array ofInexpensive Disk).

Day4 - Linux分区规划与xshell使用排错

09-05
1.1 没有重要数据 /boot   200M    存放系统的引导信息 内核 swap   交换分区   防止内存用光了 临时的一个内存 如果你的内存小于8G swap是内存的1.5倍   如果你的内存大于8G swap给8G /        根分区 剩余多少给多少 1.2 很多重要数据 /boot   200M    存放系统的引导信息 内核 swap   交换分区   防止内存用光了 临时的一个内存 如果你的内存小于8G swap是内存的1.5倍   如果你的内存大于8G swap给8G

利用Spring的AbstractRoutingDataSource解决多数据源的问题

07-04
多数据源问题很常见,例如读写分离数据库配置. 原来的项目出现了新需求,局方要求新增某服务器用以提供某代码,涉及到多数据源的问题. 研究成果如下: 1.首先配置多个datasource [html] view plain copy <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName&quo

[codevs2070]爱情之路

10-25
试题描述 yh非常想念他的女朋友小y,于是他决定前往小y所在的那块大陆. 小y所在的大陆共有n个城市,m条双向路,每条路连接一个或两个城市.经过一条路ei需要耗费时间ti.此外,每条路均有一个特定标识,为'L','O','V','E',中的某个字母.yh从1号城市出发,前往位于n号城市的小y所在处. 为了考验yh,小y规定,yh必须按照'L'->'O'->'V'->'E'->'L'->'O'->'V'->'E'->.... 的顺序选择路,且所走的第一条路是'

一道题DP

07-02
Problem Description 小明明又被大威鱼抓住了,大威鱼把小明明关在地牢里,地牢由n * n 个房间组成,小明被困在地牢的最左上角的房间中,出口在最右下角,他想逃出这个诡异的地牢,但是他只能向下或者向右走.小明每经过一个房间,都要受到一定的伤害(伤害都大于0),而且这个伤害可不是累加的哦,是累乘的,因此当他走出地牢的时候,他受到的伤害会非常大.但是小明有一个终极技能,能把受到的伤害X转变为金币,转化如下.int val(type x) {  int ret = 0;  while(

JS常用正则表达式和JS控制输入框输入限制(数字、汉字、字符)

08-02
验证数字:^[0-9]*$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9]*)$验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$验证非零的正整数:^\+?[1-9][0-9]*$验证非零的负整数:^\-[1-9][0-9]*$验证非负整数(正整数 + 0) ^\d+$验证非正整数(负整数 + 0) ^((

教你三招每天节约2小时

10-30
在你完成一项任务后,取出总清单,根据以下三种因素选择新任务: ①你还剩多少时间可以利用?如果你只有10~15分钟,开始一个项目是来不及了.回三个电话或两封电子邮件或许更合适. ②你的精力如何?现在是精力最旺盛的时期还是最低迷的时期?如果你的头脑还清醒,一个“素食”工作就是最好的选择.如果你感觉累了,或许回电子邮件是最好的选择. ③这段时间哪件事情最重要.最紧急?如果时间所剩不多,少做一些项目可能是不错的选择,这样可以推动该项目的进展.如果时间还很充裕,你可以多做一些项目.

大并发服务器框架设计

06-23
简单谈一谈大并发服务器框架设计的基本思路 基本的服务器框架都是C/S结构的,请求和相应流程是这样的: 这样的框架存在一个很严重的问题,当客户端大并发请求到来,服务器需要进行大量的数据库操作,假设数据库最大连接数为 1000个,此时有10000个请求访问应用服务器,那么应用服务器只能处理1000个请求,剩下99000个等待1000个请求处理好后 再进行访问数据库处理.可以在应用服务器和数据库服务器中间增加中间层DAL,DAL采用缓冲队列和连接池设计. DAL设计缓冲队列,存储等待的请求,并且DAL

使用EntityFrameworkCore 连接 MySql

11-17
上篇文章介绍了如何在dotnetcore下使用Dapper连接MySql,这里再介绍使用使用EntityFrameworkCore 连接 MySql. 新建控制台项目,安装下面两个nuget包: Install-Package Microsoft.EntityFrameworkCore Install-Package MySql.Data.EntityFrameworkCore -Pre 定义两个类及Context: public class BlogContext:DbContext { pr