Comparisons

Cara mengukur waktu respons solver CAPTCHA pada 2025

Lingkup aman: Panduan ini berlaku hanya untuk lingkungan QA, staging, dan praproduksi milik sendiri atau yang Anda miliki otorisasinya. Materi membahas pola diagnostik, pengujian, dan observabilitas untuk integrasi CAPTCHA Anda sendiri — bukan untuk situs pihak ketiga atau alur tanpa otorisasi.

Waktu respons solver CAPTCHA sangat bergantung pada jenis CAPTCHA, wilayah, beban, dan integrasi. Panduan ini memberikan metodologi yang konsisten untuk mengukur di lingkungan Anda sendiri — bukan klaim universal tentang penyedia mana yang paling cepat.

Mengapa benchmark harus dilakukan di lingkungan sendiri

Latensi jaringan dari pusat data Anda, jenis CAPTCHA spesifik, dan tingkat retry semuanya mempengaruhi waktu yang Anda lihat dalam produksi. Benchmark publik adalah indikatif — hasil di lingkungan Anda dapat berbeda.

Metodologi pengukuran

Untuk setiap jenis CAPTCHA, jalankan 200+ tugas dari pipeline Anda sendiri. Catat untuk setiap tugas: timestamp submit in.php, timestamp polling pertama yang sukses dari res.php, dan total waktu wallclock. Hitung median, P90, dan P99.

Template tabel pengukuran

Jenis CAPTCHA Sampel Median P90 P99
reCAPTCHA v2 200 diisi diisi diisi
reCAPTCHA v3 200 diisi diisi diisi
Cloudflare Turnstile 200 diisi diisi diisi
GeeTest v3 200 diisi diisi diisi
Image / OCR 200 diisi diisi diisi

Nilai bersifat indikatif untuk lingkungan Anda dan dapat bervariasi menurut jenis CAPTCHA, wilayah, beban, dan integrasi.

Kompatibilitas dan cakupan

Saat membandingkan penyedia, pastikan setiap penyedia menangani jenis CAPTCHA yang sama. Bandingkan apel dengan apel: reCAPTCHA v2 vs reCAPTCHA v2, bukan image OCR vs Turnstile.

Perencanaan kapasitas dengan data sendiri

Setelah Anda memiliki distribusi sendiri, hitung throughput berkelanjutan: tugas/menit = 60 / median_detik * worker. Tambahkan buffer 30% untuk lonjakan.

Script benchmark

import os, time, statistics, requests
API_KEY = os.environ['CAPTCHAAI_API_KEY']
SAMPLES = 200

def submit_recaptcha_v2(sitekey, pageurl):
    r = requests.post('https://ocr.captchaai.com/in.php', data={
        'key': API_KEY, 'method': 'userrecaptcha',
        'googlekey': sitekey, 'pageurl': pageurl, 'json': 1,
    }).json()
    return r['request']

def wait(task_id):
    t0 = time.time()
    while True:
        time.sleep(5)
        rr = requests.get('https://ocr.captchaai.com/res.php', params={
            'key': API_KEY, 'action': 'get', 'id': task_id, 'json': 1,
        }).json()
        if rr['status'] == 1:
            return time.time() - t0

times = [wait(submit_recaptcha_v2(SITE, PAGE)) for _ in range(SAMPLES)]
print('median', statistics.median(times))
print('p90', statistics.quantiles(times, n=10)[8])
print('p99', statistics.quantiles(times, n=100)[98])

Pertanyaan umum

Apakah ada solver respons kompetitif universal? Tidak. Hasil bervariasi menurut wilayah, jenis, beban, dan integrasi.

Apakah klaim akurasi tinggi yang bersifat indikatif atau peningkatan waktu yang bersifat indikatif valid? Hanya jika didukung oleh metodologi yang dipublikasikan dan signoff. Tanpa itu, perlakukan sebagai indikatif saja.

Pemecahan masalah

Gejala Tindakan yang disarankan
Tes tidak menemukan widget Periksa selector dan timing pada staging Anda
CaptchaAI mengembalikan ERROR_NO_SLOT_AVAILABLE Coba ulang dengan backoff pada pipeline internal
Backend QA menolak token Bandingkan action/sitekey dengan konfigurasi sebenarnya

Panduan terkait yang aman

  • Mulai cepat CaptchaAI
  • QA CAPTCHA terotorisasi
  • Pengujian endpoint CAPTCHA pada formulir sendiri
  • Debug saat tes browser gagal padahal API berfungsi
  • Menyelesaikan reCAPTCHA v2 dengan API
  • Menyelesaikan Cloudflare Turnstile dengan API
  • Menyelesaikan GeeTest v3 dengan API

Validasi integrasi CAPTCHA Anda di lingkungan sendiri dengan CaptchaAI.

Komentar dinonaktifkan untuk artikel ini.