首页

TCP与UDP的输出,MSS与MTU之间关系

每个TCP套接口有一个发送缓冲区,可以用SO_SNDBUF套接口选项来改变这一缓冲区的大小。当应用进程调用write往套接口写数据时,内核从应用进程缓冲区中拷贝所有数据到套接口的发送缓冲区,如果套接口发送缓冲区容不下应用程序的所有数据,或者是应用进程的缓冲区大于套接口的发送缓冲区,或者是套接口的发送缓冲区中有别的数据,应用进程将被挂起。内核将不从write返回。直到应用进程缓冲区中的所有数据都拷贝...

Gearman实践  

有三台Centos服务器,192.168.48.152,192.168.48.153,192.168.48.154 首先在三台服务器上都安装了gearman,php gearman扩展 在192.168.48.152上/home/jishipu/gearmantest目录下部署程序: client.php <?php $dips = new...

将两个文件的对比差异生成图片

github地址:https://github.com/jishipu/CreateDiffPic 实现方法:生成两个文件的对比网页,然后用PhantomJS将网页生成图片。详情请见example.php: <?php define("SITE_PATH", dirname(__FILE__)); $old_path = SITE_PATH."/log/old...

汉字转拼音占内存更少转换速度更快的程序

程序地址:https://github.com/jishipu/Chinese2Pinyin 借鉴使用Redis字符操作库SDS,简化程序编写,提高安全性和可移植性。 本汉字转拼音程序仅支持输入字符串是utf-8编码的情况,其它编码,程序会不做处理 原文输出。 将常见20902个汉字的拼音按照unicode编码的大小排序写到文件PinyinData.txt中, 因...

查看linux系统网络流量  

sar -n DEV 1 10 如果系统没有安装,如果是 CentOS,那么用 yum install -y sysstat 安装。 sar有很多用途,如果要来监控网络流量,使用下面的命令行方式: sar -n DEV interval count 其中,interval是统计时间间隔,以秒为单位;count是总共统计几次,如果为0就不断的统计直到 Ctrl...

dup and dup2的剖析  

dup和dup2都可用来复制一个现存的文件描述符,使两个文件描述符指向同一个file结构体。如果两个文件描述符指向同一个file结构体,File Status Flag和读写位置只保存一份在file结构体中,并且file结构体的引用计数是2。如果两次open同一文件得到两个文件描述符,则每个描述符对应一个不同的file结构体,可以有不同的File Status Flag和读写位置。请注意区分这两种...

git查看某个文件的修改历史

git log --pretty=oneline test.php    //会显示test.php的历次提交记录号,如356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e  git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e  //显示此版本号修改详情

crontab如何指定每小时执行任务

很容易就犯下面的错误。写下来,大家一起注意。 * */1 * * * /root/echo.sh     #错误 0 * * * *   /root/echo.sh     #正确

做一个最简单的数据库  

所有应用软件之中,数据库可能是最复杂的。 MySQL的手册有3000多页,PostgreSQL的手册有2000多页,Oracle的手册更是比它们相加还要厚。 但是,自己写一个最简单的数据库,做起来并不难。Reddit上面有一个帖子,只用了几百个字,就把原理讲清楚了。下面是我根据这个帖子整理的内容。 一、数据以文本形式保存 第一步,就是将所要保存的数据...

PHP实现文件下载功能

调用此函数可以下载文件,文件可以放在任意位置。客户端不会出现乱码不会知道所下载文件真实路径。 /** * 下载文件 * @param string $file * 被下载文件的路径 * @param string $name * 用户看到的文件名 */ function download($file,$name=...