首页 >后端开发 >php教程 >PHP高并发的类

PHP高并发的类

WBOY
WBOY原创
2016-06-23 14:16:4146641浏览

PHP 并发 架构 SQL

不用架构,再烂的PHP代码,再烂的SQL语句,一样能承受5W人同时访问,上一个帖子不知道怎么回事,资源上传后就没了。
这次再发一次。
地址: http://download.csdn.net/detail/q184996833/5800367

回复讨论(解决方案)



坐等斑竹评论

坐等楼主给分

请lz支援资源分

你们自己评价一下,值不值得化 5 分

<?phpclass WebSupervene{	private $filename = "";	private $count = 50;		/**	 * @return the $filename	 */	public function getFilename() {		return $this->filename;	}	/**	 * 设置并发访问人数	 * @param number $count	 */	public function setCount($count) {		$this->count = $count;	}	function __construct(){		$dir="./_runlist";		$this->filename=$dir."/~Supervene";		if(!is_dir($dir)){			mkdir($dir);		}	}		/**	 * 缓存队列	 */	private function saveCache($value){		$cache=self::read();		$time = date("YmdHis",time());		$wcache="";		if(!$cache){			$warr[$value]=$time;			$wcache = serialize($warr);		}else{			$warr=unserialize($cache);			$warr_rs=array_keys($warr,$time);			if(empty($warr_rs)){				unset($warr);				$warr[$value]=$time;				$wcache = serialize($warr);			}else{				if(count($warr_rs)<$this->count){					$warr[$value]=$time;					$wcache = serialize($warr);				}else{					return false;				}			}		}		if($wcache!==""){			self::write($wcache);			return true;		}else{			return false;		}	}		/**	 * 读取缓存	 */	private function read(){		$fread = fopen(self::getFilename(), "r");		if($fread){			$contents = fread($fread, filesize (self::getFilename()));			fclose($fread);			return $contents;		}else{			return false;		}	}	/**	 * 写入缓存	 */	private function write($value){		$fwrite = fopen(self::getFilename(), 'w+');		fwrite($fwrite, $value);		fclose($fwrite);	}	/**	 * 主入口	 * @param unknown_type $ip	 */	public function Supervene($ip){		if(!self::saveCache($ip)){			echo "<script language=JavaScript> location.replace(location.href);</script>";			exit;		}	}}?>

收藏,以后学学

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn