Pereiti prie turinio

Gidai

Inventoriaus sinchronizavimas

Du srautai palaiko vietinį katalogą aktualų: /cars aktyviam inventoriui ir /archived-lots dingusiems skelbimams.

  1. 1

    Sukurkite pradinį katalogą

    Pereikite /cars puslapius, naudodami simple_paginate=1, kai bendri skaičiai nereikalingi. Išsaugokite automobilio ID, šaltinį, loto identifikatorius ir atnaujinimo laiko žymas.

  2. 2

    Rinkite atnaujinimus

    Tikrinkite /cars?minutes=60 valandos laikotarpiui arba pasirinkite laikotarpį pagal savo tikrinimo intervalą (1–4320 minučių). Skaitykite kiekvieną puslapį su tais pačiais filtrais.

  3. 3

    Apdorokite archyvinius skelbimus

    Tikrinkite /archived-lots?minutes=60 tokiu pačiu laikotarpiu ir pažymėkite tą šaltinio lotą neaktyviu. Vienas archyvinis lotas nereiškia, kad visi automobilio skelbimai neaktyvūs.

  4. 4

    Taikykite pakeitimus idempotentiškai

    Atlikite upsert pagal identifikatorius. Naudokite persidengiančius laikotarpius ir išsaugotas laiko žymas, kad atlaikytumėte pakartojimus ir dublikatus.

  5. 5

    Periodiškai suderinkite

    Slenkantis laikotarpis nėra patvarus žymeklis. Po ilgesnės nei 72 valandų pertraukos atkurkite aktyvų inventorių, užuot pasitikėję prieaugio srautu.

Archyvuokite loto lygiu pagal lot_id. Automobilis gali turėti kitų aktyvių lotų. Senesni archyvo atsakymai turi skaliarinius bid/sale_date, naujesni naudoja {value, updated_at}. Nelaikykite seno bid patvirtinta galutine pardavimo kaina.

Veikiantis serverio pusės Python pavyzdys: pereina abiejų srautų puslapius, įrašo arba atnaujina automobilius ir lotus SQLite duomenų bazėje ir archyvuoja tik paveiktą lotą. Naudoja raktą iš serverio aplinkos, laiko limitus, ribotus pakartojimus ir paskutinės sėkmingos sinchronizacijos žymą. Įdiekite requests. Nustatykite AUCTIONS_API_KEY serveryje ir vieną kartą paleiskite python sync_auction_cars.py --initial; vėlesnius paleidimus planuokite be --initial. Numatytieji puslapių dydžiai: cars=50, archyvas=100. Su Unlimited galima nustatyti AUCTIONS_CARS_PER_PAGE=1000 ir AUCTIONS_ARCHIVE_PER_PAGE=1000. Vienu metu leiskite tik vieną procesą (planuoklio užraktas); pritaikykite SQLite saugyklą ir suderinkite ilgesnes nei 72 valandų spragas. Šis pavyzdys nepaverčia kintančio srauto fiksuota momentine kopija.

© 2025. AuctionsAPI operates independently and is not affiliated with Copart, IAAI or Encar.