PHP 5 telah mencapai akhir dukungan dan akan
dihentikan penggunaannya
pada 31 Januari 2026. Setelah penghentian penggunaan, Anda tidak akan dapat men-deploy aplikasi PHP 5, meskipun organisasi Anda sebelumnya menggunakan kebijakan organisasi untuk mengaktifkan kembali deployment runtime lama. Aplikasi PHP 5 yang sudah ada akan terus berjalan dan menerima traffic setelah
tanggal penghentiannya. Sebaiknya Anda
bermigrasi ke versi PHP terbaru yang didukung.
Mencoba Ulang Tugas Push yang Gagal
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Tugas push yang sedang diproses melalui task queue bisa gagal karena berbagai alasan. Jika pengendali gagal menjalankan tugas (sehingga menampilkan kode status HTTP apa pun di luar rentang 200–299), App Engine akan mencoba kembali tugas tersebut hingga berhasil.
Secara default, sistem akan mengurangi tingkat percobaan ulang secara bertahap agar tidak membebani aplikasi Anda dengan terlalu banyak
permintaan. Namun, sistem akan menjadwalkan upaya percobaan ulang agar dilakukan maksimal satu jam sekali
hingga tugas berhasil.
Mencoba ulang tugas
Anda dapat menyesuaikan skema Anda sendiri untuk percobaan ulang tugas dengan
menambahkan parameter
coba ulang
di queue.yaml
. Dengan penambahan ini, Anda dapat menentukan jumlah maksimum percobaan ulang tugas yang gagal dalam antrean tertentu. Anda juga dapat menetapkan batas waktu untuk percobaan ulang dan
mengontrol interval antar-percobaan.
Contoh berikut menunjukkan berbagai skenario percobaan ulang:
- Dalam
fooqueue
, tugas dicoba ulang hingga tujuh kali dan hingga dua hari
sejak upaya eksekusi pertama. Setelah kedua batas terlampaui, tugas akan gagal
secara permanen.
- Pada
barqueue
, App Engine akan mencoba ulang tugas, meningkatkan interval
secara linear di antara setiap percobaan ulang hingga mencapai backoff maksimum dan mencoba ulang
tanpa batas pada interval maksimum (sehingga interval antar permintaan adalah
10 detik, 20 detik, 30 detik, ..., 190 detik, 200 detik, 200 detik, ...).
- Dalam
bazqueue
, interval percobaan ulang dimulai pada 10 detik, ditingkatkan tiga kali lipat,
lalu ditingkatkan secara linear, dan akhirnya dicoba ulang tanpa batas waktu pada
interval maksimum (sehingga interval antar permintaan adalah
10 detik, 20 detik, 40 detik, 80 detik, 160 detik, 240 detik, 300 detik, 300 detik, ...).
queue:
- name: fooqueue
rate: 1/s
retry_parameters:
task_retry_limit: 7
task_age_limit: 2d
- name: barqueue
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 200
max_doublings: 0
- name: bazqueue
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 300
max_doublings: 3
Langkah berikutnya
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-09-04 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-09-04 UTC."],[[["\u003cp\u003ePush tasks in App Engine are automatically retried upon failure, with the system gradually reducing the retry rate to prevent application overload, up to a maximum of once per hour.\u003c/p\u003e\n"],["\u003cp\u003eCustom retry schemes can be configured using the \u003ccode\u003eretry_parameters\u003c/code\u003e element in \u003ccode\u003equeue.yaml\u003c/code\u003e, allowing control over the maximum number of retries, the retry time limit, and the interval between retries.\u003c/p\u003e\n"],["\u003cp\u003eDifferent retry strategies can be implemented, including fixed retry limits, linearly increasing retry intervals, and exponentially increasing intervals with a cap, as demonstrated by the \u003ccode\u003efooqueue\u003c/code\u003e, \u003ccode\u003ebarqueue\u003c/code\u003e, and \u003ccode\u003ebazqueue\u003c/code\u003e examples.\u003c/p\u003e\n"],["\u003cp\u003eThis retry API is compatible with first-generation runtimes and can be used during upgrades to second-generation runtimes, with a separate migration guide for PHP 7/8 runtimes.\u003c/p\u003e\n"]]],[],null,["# Retrying Failed Push Tasks\n\nPush tasks being processed via a task queue can fail for many reasons. If a handler\nfails to execute a task (and therefore returns any HTTP status code outside of\nthe range 200--299), App Engine retries the task until it succeeds.\n| This API is supported for first-generation runtimes and can be used when [upgrading to corresponding second-generation runtimes](/appengine/docs/standard/\n| php-gen2\n|\n| /services/access). If you are updating to the App Engine PHP 7/8 runtime, refer to the [migration guide](/appengine/migration-center/standard/migrate-to-second-gen/php-differences) to learn about your migration options for legacy bundled services.\n\nBy default, the system gradually reduces the retry rate to avoid overloading your application with too many\nrequests, but schedules retry attempts to recur at a maximum of once per hour\nuntil the task succeeds.\n\n\nRetrying tasks\n--------------\n\nYou can customize your own scheme for task retries by\nadding the [retry\nparameters](/appengine/docs/legacy/standard/php/config/queueref#retry_parameters)\nelement in [`queue.yaml`](/appengine/docs/legacy/standard/php/config/queueref). This\naddition allows you to specify the maximum number of times to retry failed tasks\nin a specific queue. You can also set a time limit for retry attempts and\ncontrol the interval between attempts.\n\nThe following example demonstrates various retry scenarios:\n\n- In `fooqueue`, tasks are retried up to seven times and for up to two days from the first execution attempt. After both limits are passed, it fails permanently.\n- In `barqueue`, App Engine attempts to retry tasks, increasing the interval linearly between each retry until reaching the maximum backoff and retrying indefinitely at the maximum interval (so the intervals between requests are 10s, 20s, 30s, ..., 190s, 200s, 200s, ...).\n- In `bazqueue`, the retry interval starts at 10s, then doubles three times, then increases linearly, and finally retries indefinitely at the maximum interval (so the intervals between requests are 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ...).\n\n queue:\n - name: fooqueue\n rate: 1/s\n retry_parameters:\n task_retry_limit: 7\n task_age_limit: 2d\n - name: barqueue\n rate: 1/s\n retry_parameters:\n min_backoff_seconds: 10\n max_backoff_seconds: 200\n max_doublings: 0\n - name: bazqueue\n rate: 1/s\n retry_parameters:\n min_backoff_seconds: 10\n max_backoff_seconds: 300\n max_doublings: 3\n\nWhat's next\n-----------\n\n- Learn more about the [task queue parameters](/appengine/docs/legacy/standard/php/config/queueref)."]]