php 信号量
摘要:一些理论基础:信号量:又称为信号灯、旗语 用来解决进程(线程同步的问题),类似于一把锁,访问前获取锁(获取不到则等待),访问后释放锁。临界资源:每次仅允许一个进程访问的资源。临界区:每个进程中访问临界资源的那段代码叫临界区进程互斥:两个或以上的进程不能同时进入关于同一组共享变量的临界区域,即一个进程...
阅读全文
posted @
2014-09-28 23:23
思齐_
阅读(4961)
推荐(0) 编辑
php 共享内存
摘要:共享内存主要用于进程间通信php中的共享内存有两套扩展可以实现1、shmop 编译时需要开启--enable-shmop 参数实例: $shm_key = ftok(__FILE__, 't');/** 开辟一块共享内存 int $key , string $flags , int $mode ,...
阅读全文
posted @
2014-09-27 23:05
思齐_
阅读(8032)
推荐(0) 编辑
php 消息队列
摘要:本消息队列用于linux下,进程通信#根据路径和后缀创建一个id$key = ftok(__DIR__, 'R');#获取队列中的消息$q = msg_get_queue($key);#删除队列msg_remove_queue($q);#获取队列的状态信息$status = msg_stat_que...
阅读全文
posted @
2014-09-27 23:04
思齐_
阅读(3545)
推荐(0) 编辑
php 快速fork出指定个子进程
摘要:$pids = array();$child_pid = pcntl_fork();if ($child_pid == -1){ throw new Exception( __METHOD__ . "|" . __LINE__ . ": fork() error");}e...
阅读全文
posted @
2014-09-27 14:24
思齐_
阅读(6400)
推荐(0) 编辑
批量 kill mysql 中运行时间长的sql
摘要:以下内容来自mysql手册:13.5.5.3. KILL语法KILL [CONNECTION | QUERY] thread_id每个与mysqld的连接都在一个独立的线程里运行,您可以使用SHOW PROCESSLIST语句查看哪些线程正在运行,并使用KILL thread_id语句终止一个线程。...
阅读全文
posted @
2014-09-21 13:39
思齐_
阅读(62689)
推荐(0) 编辑
socket 发送发送HTTP请求
摘要:socket方式: fsockopen方式: 原始socket方式: stream 方式(get): stream 方式 post: 注意:http1.1 中必须包含 Host 头, 而 http1.0中则可以没有 HTTP超文本传输协议-HTTP/1.1中文版
阅读全文
posted @
2014-09-20 04:37
思齐_
阅读(11425)
推荐(0) 编辑
apache 开启服务器包含(SSI)技术
摘要:SSI(server-side includes)能帮我们实现什么功能: SSI提供了一种对现有HTML文档增加动态内容的方法, 即 在html中加入动态内容 SSI是嵌入HTML页面中的指令,在页面被提供时由服务器进行运算,以对现有HTML页面增加动态生成的内容,而无须通过CGI程序提供其整个...
阅读全文
posted @
2014-09-19 18:40
思齐_
阅读(3126)
推荐(0) 编辑
用socket操作redis
摘要:代码:$cmd = "*3\r\n$3\r\nSET\r\n$3\r\nfoo\r\n$3\r\nbar\r\n"; // set foo bar$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);socket_connect($socket...
阅读全文
posted @
2014-09-15 00:30
思齐_
阅读(3504)
推荐(0) 编辑
基于redis的分布式锁
摘要:setnx("Lock:{$key}", self::$expire))) { break; } if($acquired = (self::recover($key))) { ...
阅读全文
posted @
2014-09-06 16:22
思齐_
阅读(3443)
推荐(0) 编辑