有大量文件需要處理。用一個(gè)php進(jìn)程去操作會(huì)很慢。如何在一個(gè)進(jìn)程讀某一個(gè)文件的時(shí)候,把文件鎖上。不讓其他進(jìn)程可以再讀而直接跳過(guò),繼續(xù)讀其他的?把正在讀得文件rename,讀完之后再rename回來(lái),效率挺低的。如果實(shí)在沒(méi)有更好的方法,就只能用這個(gè)了。flock,測(cè)試了一下,貌似不太好用,試了一下,沒(méi)實(shí)現(xiàn)文件的非阻塞讀鎖。給不同進(jìn)程分配不同的文件,不好實(shí)現(xiàn)。也沒(méi)數(shù)據(jù)庫(kù)。就算有。用數(shù)據(jù)庫(kù)做鎖,貌似比rename更低效。請(qǐng)問(wèn)有什么更好的方式可以給文件加讀鎖。因?yàn)椋恍枰x文件。
PHP 讀文件怎么實(shí)現(xiàn)加鎖
三國(guó)紛爭(zhēng)
2019-04-06 08:32:05