Ikhtisar
Penggunaan operasi HttpEndpoint untuk otentikasi memerlukan pengambilan sertifikat kunci publik secara remote, yang dapat memakan waktu. Topik ini menjelaskan cara meningkatkan kinerja otentikasi.
Informasi latar belakang
Setiap permintaan push mencakup alamat sertifikat kunci publik. Sertifikat tersebut dapat disimpan dalam pasangan kunci-nilai berdasarkan alamatnya. Selama sertifikat tidak diperbarui, sertifikat dapat langsung diambil dari memori tanpa perlu mengirim permintaan remote. Jika sertifikat diganti, nama dan alamatnya mungkin diperbarui.
Solusi
Saat memproses permintaan push, ambil sertifikat langsung dari memori berdasarkan alamat pada parameter x-mns-signing-cert-url. Jika sertifikat tidak ditemukan, akses secara remote dan simpan sertifikat di memori untuk digunakan selanjutnya.
Sebagai contoh, alamat sertifikat kunci publik adalah: https://mnstest.oss-cn-hangzhou.aliyuncs.com/x509_public_certificate.pem. Masukkan konten berikut untuk menyimpan sertifikat kunci publik:
typedef map<string, string> cache;
cache["x509_public_certificate.pem"] = "$content";
cache["x509_public_certificate.pem.version2"] = "$content2";