ประสิทธิภาพ

ไลบรารีของไคลเอ็นต์สําหรับ Perl ช่วยให้การโต้ตอบกับ Google Ads API ง่ายขึ้น โดยคุณจะต้องกําหนดค่าเพียงเล็กน้อย อย่างไรก็ตาม ประสิทธิภาพจะขึ้นอยู่กับวิธีใช้และผสานรวมไลบรารีเป็นอย่างมาก

แนวทางปฏิบัติแนะนำเหล่านี้ส่วนใหญ่ใช้ได้กับทุกภาษา คู่มือนี้จะอธิบายเกี่ยวกับคำสั่งเฉพาะของ Perl

การสร้างโปรไฟล์แอปพลิเคชัน

ตรวจสอบโปรไฟล์แอปพลิเคชันทั้งสำหรับการใช้งาน CPU และหน่วยความจำเพื่อระบุจุดคอขวดด้านประสิทธิภาพ Devel::NYTProf เป็นเครื่องมือวิเคราะห์ซอร์สโค้ด Perl ที่มีประสิทธิภาพและเต็มไปด้วยฟีเจอร์ที่คุณสำรวจได้

เวอร์ชัน Perl

เราขอแนะนำให้อัปเกรดเป็น Perl เวอร์ชันใหม่เป็นประจำ เนื่องจากมักจะมีประสิทธิภาพโดยรวมที่ดีขึ้น ดู Perl เวอร์ชันล่าสุดและเวอร์ชันขั้นต่ำที่จําเป็นสําหรับไลบรารีในหน้านี้ที่นี่

การบันทึก

การบันทึกข้อมูลอย่างละเอียดอาจทำให้เสียเวลาในการดำเนินการและหน่วยความจำอย่างมาก เราขอแนะนำให้ตั้งค่าระดับการบันทึกเป็น WARN สําหรับโค้ดในระบบที่ใช้งานจริง

ดูรายละเอียดเพิ่มเติมเกี่ยวกับการกําหนดค่าโปรแกรมบันทึกข้อมูลสรุปและรายละเอียดได้ในคู่มือการบันทึก

เมธอด Search หรือ SearchStream

Google Ads API มี 2 วิธีหลักในการดึงข้อมูลออบเจ็กต์ ได้แก่ Search (ซึ่งใช้การแบ่งหน้า) และ SearchStream (ซึ่งใช้การสตรีม) SearchStream ให้ประสิทธิภาพที่ดีกว่าวิธีการ Search แต่อาจมีบางสถานการณ์ที่ควรใช้วิธีการ Search

ดูข้อมูลเพิ่มเติมเกี่ยวกับ 2 วิธีนี้ได้ที่นี่

หมดเวลา HTTP

ไลบรารีไคลเอ็นต์ Perl มีแพลตฟอร์มสําหรับการตั้งค่าการหมดเวลา HTTP ที่ระดับไคลเอ็นต์ ดังนี้

my $api_client = Google::Ads::GoogleAds::GoogleAdsClient->new({
  # Set HTTP timeout to 5 minutes.
  http_timeout   => 300
});

ค่าเริ่มต้นจะตั้งค่าตามการตั้งค่า DEFAULT_HTTP_TIMEOUT ใน Constants.pm ตั้งค่าที่ต่ำลงหากต้องการบังคับใช้ขีดจํากัดที่สั้นลงสําหรับเวลาสูงสุดในการเรียก API

คุณสามารถตั้งค่าการหมดเวลาเป็น 2 ชั่วโมงขึ้นไปได้ แต่ API อาจยังคงหมดเวลาสำหรับคำขอที่ใช้เวลานานมากและแสดงข้อผิดพลาด DEADLINE_EXCEEDED หากพบข้อผิดพลาดดังกล่าว ให้แยกคำขอและดำเนินการแต่ละส่วนพร้อมกัน วิธีนี้จะช่วยหลีกเลี่ยงกรณีที่คำขอที่ใช้เวลานานดำเนินการไม่สำเร็จ และวิธีเดียวในการกู้คืนคือเรียกใช้คำขออีกครั้งตั้งแต่ต้น