第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

PHP并發(fā)讀寫文件問題 高手請進(jìn)!

PHP并發(fā)讀寫文件問題 高手請進(jìn)!

PHP
呼啦一陣風(fēng) 2019-03-16 03:30:11
ajax1.html三個(gè)ajax方法同時(shí)訪問ajax1.php,ajax1.php中有進(jìn)行文件data.php讀寫,由于三個(gè)ajax方法訪問頻率特別高,就產(chǎn)生了并發(fā)訪問,導(dǎo)致讀寫出錯(cuò),使用了flock()還是會出錯(cuò),請高手們指導(dǎo)一下怎么解決呢? ajax1.html代碼: var a = 1; var b = 1; var c = 1; function ajax1(){ $.get('ajax1.php?from=a&value='+a, function(res){ $('#ajax1').text(a); a++; if(res == 1){ ajax1(); } }); } function ajax2(){ $.get('ajax1.php?from=b&value='+b, function(res){ $('#ajax2').text(b); b++; if(res == 1){ ajax2(); } }); } function ajax3(){ $.get('ajax1.php?from=c&value='+c, function(res){ $('#ajax3').text(c); c++; if(res == 1){ ajax3(); } }); } function beginAjax(){ ajax1(); ajax2(); ajax3(); } ajax1.php代碼: $from = $_GET['from']; $value = $_GET['value']; $data = is_array(include 'data.php')? include 'data.php': array(); $data[] = $from .'-'. $value; $file = fopen('data.php', 'w'); $lock = flock($file, LOCK_EX); if($lock){ fwrite($file, '<?php'); fwrite($file, PHP_EOL); fwrite($file, 'return '); fwrite($file, var_export($data, true)); fwrite($file, ';'); flock($file, LOCK_UN); } fclose($file); exit('1'); data.php代碼(以下數(shù)據(jù)是出錯(cuò)了的數(shù)據(jù)): return array ( 0 => 'b-3', );1 => 'a-1', 2 => 'c-1', 3 => 'b-2', 4 => 'a-2', 5 => 'c-2', );
查看完整描述

4 回答

?
慕村9548890

TA貢獻(xiàn)1884條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果數(shù)據(jù)庫和Nosql都不用,那么針對文件并發(fā)讀寫時(shí):

1、在寫之前生成個(gè)副本,做讀取

2、并發(fā)寫時(shí),文件頻繁加鎖效率會降低。我覺得可以,在寫時(shí)先創(chuàng)建個(gè)臨時(shí)文件,最后再進(jìn)行文件合并(這個(gè)有難度,什么時(shí)間合并?怎么合并?),合并后再生成一個(gè)用于讀的副本,這樣速度會提高很多

查看完整回答
反對 回復(fù) 2019-03-18
?
阿波羅的戰(zhàn)車

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊

你缺乏網(wǎng)絡(luò)知識和系統(tǒng)知識。
不要作文件IO,用數(shù)據(jù)庫,或者其它對象存儲的基礎(chǔ)設(shè)施。

查看完整回答
反對 回復(fù) 2019-03-18
  • 4 回答
  • 0 關(guān)注
  • 410 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號