Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasi Detak Jantung untuk Neptune Serverless
Saat menggunakan WebSocket klien Gremlin dengan Neptune Serverless, Anda perlu mengonfigurasi interval ping klien dengan tepat untuk mempertahankan koneksi yang stabil selama peristiwa penskalaan. Klien Gremlin menggunakan WebSocket koneksi dan mengirimkan ping berkala untuk memverifikasi koneksi aktif. Klien mengharapkan respons dari server dalam jangka waktu interval ping. Jika server tidak merespons, klien secara otomatis menutup koneksi.
Untuk inst ans yang disediakan Neptunus, sebaiknya atur interval ping menjadi 5 detik. Untuk cluster Neptune Serverless, kami sarankan mengatur interval ping setidaknya 20 detik untuk mengakomodasi potensi penundaan selama operasi penskalaan. Parameter ini mengontrol berapa lama klien menunggu antara penulisan ke server sebelum mengirim ping untuk memverifikasi koneksi masih aktif.
Konfigurasi parameter ini bervariasi tergantung pada implementasi klien:
Konfigurasi Klien Java
Untuk klien Java TinkerPop Gremlin, konfigurasikan parameter: keepAliveInterval
Cluster.Builder builder = Cluster.build() .addContactPoint(endpoint) .keepAliveInterval(20000); // Configure ping interval in milliseconds
Untuk detail selengkapnya tentang konfigurasi driver Java, lihat TinkerPop dokumentasi Java
Konfigurasi Klien Go
Untuk klien Gremlin Go, konfigurasikan parameter: KeepAliveInterval
rc, err := driver.NewDriverRemoteConnection(endpoint, func(settings *driver.DriverRemoteConnectionSettings) { settings.TraversalSource = "g" settings.AuthInfo = auth settings.KeepAliveInterval = 20 * time.Second // Configure ping interval ... })
Untuk detail selengkapnya tentang konfigurasi driver Go, lihat TinkerPop dokumentasi Go
JavaScript/Node.js Konfigurasi Klien
Untuk klien JavaScript/Node.js Gremlin, konfigurasikan parameter: pingInterval
const gremlin = require('gremlin'); const DriverRemoteConnection = gremlin.driver.DriverRemoteConnection; const connection = new DriverRemoteConnection(endpoint, { traversalSource: 'g', pingInterval: 20000 // Configure ping interval in milliseconds });
Untuk detail selengkapnya tentang konfigurasi JavaScript driver, lihat JavaScript TinkerPop dokumentasi
Konfigurasi Klien Python
Untuk klien Python Gremlin, interval ping biasanya dikelola di lapisan transport. Konsultasikan dokumentasi implementasi transportasi khusus untuk opsi konfigurasi:
from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection g = traversal().with_remote( DriverRemoteConnection('wss://your-neptune-endpoint:your-neptune-port/gremlin','g', transport_factory=lambda: AiohttpTransport(read_timeout=60, write_timeout=20, heartbeat=20, // Configure heartbeat call_from_event_loop=True, max_content_length=100*1024*1024, ssl_options=ssl.create_default_context(Purpose.CLIENT_AUTH))))
Untuk detail selengkapnya tentang konfigurasi driver Python, lihat TinkerPop dokumentasi Python
Konfigurasi ini memastikan klien Anda mempertahankan stabilitas koneksi selama peristiwa penskalaan Neptune Serverless, mencegah penutupan koneksi yang tidak perlu dan meningkatkan keandalan aplikasi.