تحسين الأداء

يتناول هذا المستند الأساليب التي يمكنك استخدامها لتحسين أداء تطبيقك. من المفترض أن تتضمّن مستندات واجهة برمجة التطبيقات المحدّدة التي تستخدمها صفحة مشابهة تتضمّن مزيدًا من التفاصيل حول بعض هذه المواضيع. على سبيل المثال، يمكنك الاطّلاع على صفحة نصائح الأداء لواجهة برمجة تطبيقات Google Drive.

لمحة عن gzip

تطلب مكتبة العميل هذه ضغط gzip لجميع ردود واجهة برمجة التطبيقات وفك ضغط البيانات نيابةً عنك. على الرغم من أنّ هذا يتطلب وقتًا إضافيًا لوحدة المعالجة المركزية لفك ضغط النتائج، إلا أنّ المقارنة مع تكاليف الشبكة تجعل ذلك عادةً مجديًا.

استجابة جزئية (مَعلمة الحقول)

يُرسِل الخادم تلقائيًا التمثيل الكامل لمورد بعد معالجة الطلبات. للحصول على أداء أفضل، يمكنك أن تطلب من الخادم إرسال الحقول التي تحتاج إليها فقط والحصول على استجابة جزئية بدلاً من ذلك.

لطلب استجابة جزئية، أضِف المَعلمة العادية Fields إلى أيّ طريقة لواجهة برمجة التطبيقات. تحدِّد قيمة هذه المَعلمة الحقول التي تريد عرضها. يمكنك استخدام هذه المَعلمة مع أي طلب يعرض بيانات ردّ.

في المقتطف البرمجي التالي، يتمّ استدعاء طريقة GetRest لخدمة "الاكتشاف". تم ضبط قيمة المَعلمة Fields على description,title. نتيجةً لذلك، لن يتضمّن العنصر المعروض سوى حقلَي الوصف والعنوان.

var service = new DiscoveryService();
var request = service.Apis.GetRest("calendar", "v3");
request
.Fields = "description,title";
var result = request.Execute();
 

يُرجى ملاحظة كيفية استخدام الفواصل لتحديد الحقول المطلوبة، واستخدام الشرطة المائلة للإشارة إلى الحقول المضمّنة في الحقول الرئيسية. هناك خيارات تنسيق أخرى للمَعلمة Fields. للاطّلاع على التفاصيل، يمكنك الاطّلاع على صفحة "نصائح حول الأداء" في مستندات واجهة برمجة التطبيقات التي تستخدمها.

تحديث جزئي (تصحيح)

إذا كانت واجهة برمجة التطبيقات التي تستدعيها تتيح إجراء تعديلات، يمكنك تجنُّب إرسال بيانات غير ضرورية عند تعديل الموارد. بالنسبة إلى واجهات برمجة التطبيقات هذه، يمكنك استدعاء الطريقة Patch و تقديم الوسيطات التي تريد تعديلها للمورد.

لمزيد من المعلومات عن دلالات التصحيح، اطّلِع على صفحة "نصائح حول الأداء" في مستندات واجهة برمجة التطبيقات التي تستخدمها.

الدفعة

إذا كنت ترسل العديد من الطلبات الصغيرة، يمكنك الاستفادة من الجمع، الذي يتيح تجميع هذه الطلبات في طلب HTTP واحد.