ホームページ > バックエンド開発 > 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 までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート