Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah Permintaan Keriting Selari Boleh Meningkatkan Prestasi untuk Pengambilan Data Berbilang JSON?
Permintaan Keriting Selari PHP: Meningkatkan Prestasi untuk Mendapatkan Berbilang Data JSON
Pendekatan konvensional untuk mengambil berbilang data JSON menggunakan file_get_contents() boleh menjadi masa -memakan kerana sifatnya yang berurutan. Dalam artikel ini, kami meneroka penyelesaian yang lebih cekap menggunakan permintaan keriting selari.
Kod yang diberikan menunjukkan pendekatan biasa, berulang secara berurutan melalui senarai URL, mengambil data JSON daripada setiap URL dan menyimpannya dalam tatasusunan . Walau bagaimanapun, kaedah ini boleh menghalang prestasi, terutamanya apabila berurusan dengan sejumlah besar URL.
Untuk mengatasi isu ini, kami boleh memanfaatkan permintaan berbilang lengkung. Multi-curl ialah teknik yang membolehkan pelaksanaan selari berbilang permintaan curl secara serentak. Pendekatan ini mempercepatkan proses dengan ketara dengan menghapuskan keperluan untuk menunggu setiap permintaan selesai sebelum memulakan yang seterusnya.
Coretan kod yang disediakan menawarkan pelaksanaan permintaan berbilang lengkung:
$nodes = array($url1, $url2, $url3); $node_count = count($nodes); $curl_arr = array(); $master = curl_multi_init(); for($i = 0; $i < $node_count; $i++) { $url =$nodes[$i]; $curl_arr[$i] = curl_init($url); curl_setopt($curl_arr[$i], CURLOPT_RETURNTRANSFER, true); curl_multi_add_handle($master, $curl_arr[$i]); } do { curl_multi_exec($master,$running); } while($running > 0); for($i = 0; $i < $node_count; $i++) { $results[] = curl_multi_getcontent ( $curl_arr[$i] ); } print_r($results);
Ringkasnya, permintaan curl selari menawarkan peningkatan prestasi yang ketara untuk mengambil berbilang data JSON daripada URL yang berbeza. Teknik ini amat berfaedah apabila bekerja dengan sejumlah besar URL, kerana ia meminimumkan masa menunggu antara permintaan, yang membawa kepada pengambilan data yang lebih pantas.
Atas ialah kandungan terperinci Bagaimanakah Permintaan Keriting Selari Boleh Meningkatkan Prestasi untuk Pengambilan Data Berbilang JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!