View Single Post
Hei.
Jeg har en tabell med tokens:

ID, token, used

API-et jeg jobber mot har en begrensing på hvor ofte jeg kan kjøre calls med en token. Derfor har jeg en liste med 4 ulike tokens, slik at jeg kan bytte token hver gang jeg kjører et API-call, og dermed får jeg kjørt flere API-calls enn med bare en token.

La oss si at jeg har en liste med 4 tokens:
1: token1
2: token2
3: token3
4: token4

Dette ligger i tabellen "tokens".
Hvert 30. sekund kjører den et API-call, og velger neste token hver gang. Forrige token var token1, så den skal bruke token2 denne gangen, osv.

Det fungerer fint med en while / for loop!

Problemet mitt er at jeg ønsker å kjøre denne Python-roboten på flere maskiner, for å fordele belastningen / oppgavene litt rundt.

Server nr. 2 må vite hvilken token server nr. 1 brukte sist, slik at den kan velge neste token. Server 1 får da vite hvilken token server 2 har brukt, og bruker dermed neste token igjen. Osv.

Derfor har jeg en liten ide, jeg har lagt til kolonnen "used". Hver gang en token blir brukt, blir used satt til 1. Serveren som leser databasen hopper over den, og velger neste token, samt. oppdaterer "used" slik at det blir riktig videre.

Jeg klarer å gjøre at Python forstår at den ikke skal bruke den som er satt til used=1, men jeg klarer ikke å forstå hva jeg må gjøre for at den ikke skal forsøke å finne token nr. 5, men heller starte øverst på lista igjen.

Token nr. 5 eksisterer jo ikke, det er bare en liste med 4 tokens. Den må altså se at token4 er used=1, og dermed sjekke om det finnes flere tokens enn de 4, hvis ikke, begynn øverst på lista igjen med token1 og så videre.

Forslag?