Mikä on Idempotenssi
Toistettu pyyntö antaa saman tuloksen
Idempotenssi on operaation ominaisuus, jossa useampi suoritus tuottaa saman tuloksen kuin yksi suoritus.
Esimerkkejä idempotenteista operaatioista
- GET — tietojen hakeminen ei muuta tilaa
- PUT — arvon toistuvasti asettaminen antaa saman tilan
- DELETE — jo poistetun resurssin toistuvasti poistaminen
Ei-idempotentit operaatiot
- POST — luo uuden resurssin jokaisella kutsulla
- Laskurin kasvattaminen
Miksi sillä on merkitystä
- Uudelleenyritykset — turvallisia verkkovikojen aikana
- Hajautetut järjestelmät — yksinkertaistaa virheiden käsittelyä
- Maksujärjestelmät — suoja tuplavierityksiä vastaan
Toteutus
- Idempotenssiavain — yksilöllinen avain jokaiselle pyynnölle
- Suoritettujen operaatioiden tilan tallennus
- TTL idempotenssiavaimille