Өдөр 0
Хандалтыг баталгаажуулах
Түлхүүр үүсгэж, нэг удаа баталгаажсан хүсэлт илгээж, эхний хариултыг мета өгөгдөлтэй нь хадгалаарай.
Алхмыг нээх →API ажлын урсгалын заавар
Өөрийн ажлыг хамгийн сайн илэрхийлэх үр дүнг сонгоно уу. Зам бүр нь танд нэг ажиллаж буй хүсэлт, хариултд юу байх ёстой, хэрхэн ажилласныг шалгах болон дараагийн хэрэгцээтэй алхмыг өгнө.
Таван практик зам
Selected: Harden a client
Таны 14-хоногийн API туршилт
Зорилго нь бүтээгдэхүүний хуудас бүр дээр зочлох биш юм. Харин баталгаажсан хэрэгцээт API ажлыг гүйцэтгэж, өөр өдөр эргэж ирж, давтагдах өгөгдлийн багц эсвэл аппликейшны ажлын урсгалыг авч явах явдал юм.
Өдөр 0
Түлхүүр үүсгэж, нэг удаа баталгаажсан хүсэлт илгээж, эхний хариултыг мета өгөгдөлтэй нь хадгалаарай.
Алхмыг нээх →Хоног 1-2
Баталгаажуулалт эсвэл шүүлтүүрийн асуудлыг шийдвэрлэж, эхний скриптийг нэртэй давтагдах ажлаар хувиргах.
Алхмыг нээх →Өдрүүд 3-4
Хуанлийг хоёр дахь төгсгөлийн гэр бүл болгон ашиглаж, дараагийн хэрэгцээт API ажиллагааг товло.
Алхмыг нээх →Хоног 5-7
Хүлээлт эсвэл макро цувралын жижиг бүлгийг нэмээд, хадгалсан нэг харьцуулалт, хүснэгт эсвэл онооны хуудас гаргана уу.
Алхмыг нээх →Өдрүүд 8-10
Хуваарьт REST, SSE эсвэл webhooks-оо сонгож, өөр өдөр дээр өөр нэг амжилттай API ажиллагааг гүйцэтгэнэ үү.
Алхмыг нээх →Хоног 11-13
Цаг хугацааны хязгаар, хязгаарлагдмал дахин оролдлого, хариултын баталгаажуулалт, нууцлал хангасан лог хөтлөлт болон хуучирсан өгөгдлийн хяналтыг нэмнэ үү.
Алхмыг нээх →Өдөр 14
API нь танай баг үргэлжлүүлэн ашиглах давтагдах боломжтой ажил нийлүүлж байгааг баталгаажуулж, дараа нь дараагийн өгөгдлийн багц эсвэл аппликейшны ажлын урсгалыг сонгоно уу.
Алхмыг нээх →Production readiness
Production reliability comes from treating status codes differently, keeping retries bounded, reusing ETags, and choosing scheduled REST, SSE, or webhooks for the job.
Ажиллаж буй жишээ
Түлхүүрээ энд хадгалаарай FXMD_API_KEY; үүнийг хэзээ ч эх сурвалж хяналтад (source control) бүү хуулж наанаа.
import os
import requests
from urllib3.util.retry import Retry
session = requests.Session()
retry = Retry(total=3, backoff_factor=0.5, status_forcelist=(429, 502, 503, 504))
session.mount("https://", requests.adapters.HTTPAdapter(max_retries=retry))
response = session.get(
"https://api.fxmacrodata.com/v1/announcements/eur/inflation",
params={"api_key": os.environ["FXMD_API_KEY"], "limit": 5},
headers={"Accept-Encoding": "gzip"},
timeout=(3.05, 20),
)
response.raise_for_status()
Хүлээгдэж буй үр дүн: A bounded client that handles transient failures without retry storms and is ready to add ETag-based conditional refreshes.
Эхний скрипт бодит систем болох үед
Хариулт алдаа гарахад, өгөгдөл ирэхгүй байх, эсвэл кэшлэлт, хугацаа дуусах, дахин оролдох, үйл явдлын хүргэлт зэрэг үйлдвэрлэлийн хяналтууд шаардлагатай үед эдгээр заавруудыг ашиглана уу.
| Заавар | Дараах тохиолдолд ашиглах | Эхлэх |
|---|---|---|
| Алдаатай эсвэл хоосон хариултыг оношлох | Түлхүүрээ ил гаргахгүйгээр баталгаажуулалт, хандалт, зам, хурдны хязгаарлалт болон өгөгдлийн бэлэн байдлын асуудлуудыг тусад нь шийдвэрлэх. | Зааврыг нээх → |
| API клиентийг үйлдвэрлэлд бэлэн болгох | Timeout, хязгаарлагдмал давталт, кэшлэл, нөхцөлт хүсэлт болон зөв хүргэлтийн загварыг нэмэх. | Зааврыг нээх → |