Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan kod PHP untuk melaksanakan strategi caching dan caching permintaan antara muka API Baidu Wenxin Yiyan

Gunakan kod PHP untuk melaksanakan strategi caching dan caching permintaan antara muka API Baidu Wenxin Yiyan

WBOY
WBOYasal
2023-08-14 17:17:071235semak imbas

Gunakan kod PHP untuk melaksanakan strategi caching dan caching permintaan antara muka API Baidu Wenxin Yiyan

Gunakan kod PHP untuk melaksanakan permintaan caching dan strategi caching antara muka API Baidu Wenxin Yiyan

Apabila menggunakan antara muka API Baidu Wenxin Yiyan, untuk meningkatkan kecekapan permintaan dan mengurangkan beban pada perkhidmatan API, kita boleh mempertimbangkan Gunakan cache untuk menyimpan data yang telah diminta, dan membaca data terus dari cache pada permintaan seterusnya untuk mengelakkan permintaan rangkaian berulang. Dalam artikel ini, kami akan menggunakan kod PHP untuk melaksanakan strategi caching dan caching permintaan antara muka API Baidu Wenxin Yiyan.

Caching ialah teknologi yang menyimpan data dalam memori atau media storan berkelajuan tinggi lain, yang boleh meningkatkan kelajuan pembacaan data dengan banyak. Dalam PHP, kami boleh menggunakan perpustakaan caching untuk melaksanakan operasi caching data, seperti Memcached atau Redis. Seterusnya, kami akan menggunakan Memcached sebagai medium penyimpanan cache kami.

Pertama, kita perlu memasang dan mengkonfigurasi sambungan Memcached untuk memastikan PHP boleh menyambung dan mengendalikan pelayan Memcached secara normal. Selepas pemasangan selesai, kita boleh menggunakan kod berikut untuk menyambung ke pelayan Memcached:

$memcached = new Memcached();
$memcached->addServer('localhost', 11211);

Seterusnya, kita perlu menentukan fungsi untuk mendapatkan dan cache data Baidu Wenxin Yiyan API. Fungsi ini boleh menerima parameter untuk menentukan nama kunci cache. Jika nama kunci yang ditentukan wujud dalam cache, data dibaca terus dari cache dan dikembalikan jika tidak, permintaan API dilaksanakan dan data yang dikembalikan disimpan dalam cache. Berikut ialah contoh kod yang dilaksanakan:

function getBaiduContent($cacheKey)
{
    $memcached = new Memcached();
    $memcached->addServer('localhost', 11211);

    // 尝试从缓存中读取数据
    $content = $memcached->get($cacheKey);

    if (empty($content)) {
        // 缓存中不存在数据,执行API请求
        $url = 'https://api.lovelive.tools/api/SweetNothings/1';

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $result = curl_exec($ch);
        curl_close($ch);

        // 将API返回的数据存储到缓存中,设定有效期为600秒
        $memcached->set($cacheKey, $result, 600);

        $content = $result;
    }

    return $content;
}

Dalam kod di atas, kami menggunakan $cacheKey sebagai nama kunci cache dan cuba mendapatkan data daripada cache. Jika data tidak wujud dalam cache, gunakan perpustakaan curl untuk melaksanakan permintaan API, simpan data yang dikembalikan dalam cache dan tetapkan tempoh sah cache kepada 600 saat. $cacheKey作为缓存的键名,并尝试从缓存中获取数据。如果缓存中不存在数据,则使用curl库执行API请求,并将返回的数据存储到缓存中,同时设置缓存的有效期为600秒。

最后,我们可以调用getBaiduContent函数来获取百度文心一言API的数据,并输出到页面中。以下是一个简单的示例:

$cacheKey = 'baidu_content';

$content = getBaiduContent($cacheKey);

echo $content;

通过上述代码,我们实现了百度文心一言API的请求缓存和缓存策略。每次调用getBaiduContent

Akhir sekali, kami boleh memanggil fungsi getBaiduContent untuk mendapatkan data API Baidu Wenxin Yiyan dan mengeluarkannya ke halaman. Berikut ialah contoh mudah:

rrreee

Melalui kod di atas, kami melaksanakan strategi caching dan caching permintaan API Baidu Wenxin Yiyan. Setiap kali fungsi getBaiduContent dipanggil, ia akan cuba membaca data daripada cache terlebih dahulu Jika data tidak wujud dalam cache, permintaan API akan dilaksanakan dan data yang dikembalikan akan disimpan dalam cache. Dengan cara ini, dalam permintaan seterusnya, data dibaca terus dari cache tanpa perlu mengakses pelayan API sekali lagi, yang meningkatkan kecekapan dan prestasi permintaan. 🎜🎜Ringkasnya, menggunakan kod PHP untuk melaksanakan strategi caching dan caching permintaan Baidu Wenxin Yiyan API boleh mengurangkan kekerapan permintaan kepada perkhidmatan API, meningkatkan kecekapan permintaan dan mengurangkan beban. Melalui strategi caching yang munasabah, kami boleh menyimpan data dalam media storan berkelajuan tinggi untuk mengurangkan masa membaca data. Dalam aplikasi sebenar, kami boleh menetapkan tempoh sah cache yang sesuai dan nama kunci cache mengikut keperluan sebenar untuk memenuhi keperluan perniagaan yang berbeza. 🎜

Atas ialah kandungan terperinci Gunakan kod PHP untuk melaksanakan strategi caching dan caching permintaan antara muka API Baidu Wenxin Yiyan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn