> 백엔드 개발 > PHP 튜토리얼 > php中怎么防止向同一地址同一时间多个请求同时提交

php中怎么防止向同一地址同一时间多个请求同时提交

WBOY
풀어 주다: 2016-06-13 10:27:29
원래의
1469명이 탐색했습니다.

php中如何防止向同一地址同一时间多个请求同时提交
如题,举个例子,有个方法,里面逻辑大概如下:


function test(){
  $a = $db->query('...');//返回1或0
  if($a == 1){
  $db->set(0);//更新后下次执行此方法$a不再会是1.
  //这里是其它逻辑,问题是,如果很多请求同时调用此方法,而此方法中的set过程又稍长,那么这里的逻辑就会被执行多次,与预计的只能执行一次是不符的。
  }
}


请问大家一般怎么处理这种情况?对于投票或者跟奖品等安全性要求较高时这种情况很多。
如果用session的话请求可能来自不同的ip,如果用memcached之类的缓存保存状态,同样是有网络延迟的,shmop?求高见。

------解决方案--------------------
终了!
你是神级思维的人!我们这种人是猜不到你所想你所求,当你完成你的大作一定要给我们这些凡夫之人看看呀。。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿