那么首要的问题就是不同进程之间的通讯,
就需要一个他们都能同时访问的媒介,可以选择文本文件,数据库,或者memcache!之后就简单了
就需要一个他们都能同时访问的媒介,可以选择文本文件,数据库,或者memcache!之后就简单了
解决方案 »
- php初學者...怎樣接收數組的內容吖!!!
- 要助写一个正则表达式来屏蔽标记及内容
- 如何将<DIV> 按照html显示
- Fatal error: Class 'mysqli' not found。汗,我是php5.1啊,怎么会没有mysqli?
- prototype.js 怎么在服务器端接收postbody的内容
- php基础上做电子地图,需要准备什么啊?
- PHP命令行运行时,不列出语法错误信息
- PHP如何解压RAR
- 在线编辑器里图片格式如
- 紧急求救~~~~~~~~!!!sos~~~~~~~!
- 像"12,13,45,48,14,15,16"这样的字符串,怎么样删除其中的一个呢?
- IFRAME无法接受值问题
其他用户再访问,根据session判断用户是否在线,再访问数据库查看用户1是否在该页面
apache能不能控制到该页面,使得它只同时响应1个请求,而其他多余的请求在队列中。
必须通过一个外部事务处理程序来实现。
可以用数据库,但是,Mysql的话桌面引擎必须是InnoDB;
但是最好用像Java这样有多线程控制功能的语言来写一个服务器。
`name` varchar(100) NOT NULL default '',
`sn` int(11) NOT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;<?php$connId = mysql_connect('localhost','root','root') or die(mysql_error());
mysql_select_db('locktest',$connId) or die(mysql_error());
mysql_query("start transaction");
mysql_query("select * from locktb where name='lock' for update");
sleep(10);
mysql_query("update locktb set sn=sn+1 where name='lock'");
$result = mysql_query("select sn from locktb where name='lock'");
mysql_query("commit");
$row = mysql_fetch_row($result);
echo "我的序号:{$row[0]}<br/>\n";
echo "开始时间:{$_SERVER['REQUEST_TIME']}<br/>\n";
echo "结束时间:".time()."<br/>";这是我对你的问题理解,但确实不知道你想干什么.
而且在正常情况下绝对不推荐这样去做
`name` varchar(100) NOT NULL default '',
`sn` int(11) NOT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;<?php$connId = mysql_connect('localhost','root','root') or die(mysql_error());
mysql_select_db('locktest',$connId) or die(mysql_error());
mysql_query("start transaction");
mysql_query("select * from locktb where name='lock' for update");
sleep(10);
mysql_query("update locktb set sn=sn+1 where name='lock'");
$result = mysql_query("select sn from locktb where name='lock'");
mysql_query("commit");
$row = mysql_fetch_row($result);
echo "我的序号:{$row[0]}<br/>\n";
echo "开始时间:{$_SERVER['REQUEST_TIME']}<br/>\n";
echo "结束时间:".time()."<br/>";这是我对你的问题理解,但确实不知道你想干什么.
而且在正常情况下绝对不推荐这样去做