Dalam pengembangan perangkat lunak, timeout mencegah program terblokir tanpa batas saat menunggu tanggapan. Jika tidak dikonfigurasi, timeout dapat menyebabkan pemborosan sumber daya atau bahkan crash sistem. Sebaliknya, jika timeout terlalu singkat, tugas mungkin terganggu sebelum selesai dan mengganggu fungsionalitas normal. Konfigurasi timeout yang tepat meningkatkan stabilitas sistem dan pengalaman pengguna. Topik ini menjelaskan cara mengonfigurasi timeout untuk SDK Go V2.0.
Metode konfigurasi timeout
Konfigurasi timeout diterapkan berdasarkan urutan prioritas berikut, dari tertinggi ke terendah: RuntimeOptions, Config, dan konfigurasi default.
Gunakan pengaturan default. Periode timeout default untuk permintaan koneksi adalah 5.000 milidetik, sedangkan periode timeout default untuk permintaan baca adalah 10.000 milidetik.
Konfigurasi timeout untuk permintaan saat ini menggunakan RuntimeOptions.
import ( util "github.com/alibabacloud-go/tea-utils/v2/service" ) runtime := &util.RuntimeOptions{} // Set the timeout parameters. Unit: ms. runtime.ConnectTimeout = tea.Int(5000) // Set the connection timeout to 5 seconds. runtime.ReadTimeout = tea.Int(10000) // Set the read timeout to 10 seconds.Konfigurasi timeout global menggunakan Config.
import ( openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client" ) config := &openapi.Config{ // Set the timeout parameters. Unit: ms. ConnectTimeout: tea.Int(5000), // Connection timeout ReadTimeout: tea.Int(10000), // Read timeout }