មគ្គុទ្ទេសក៍លំហូរការងារ API

តើអ្នកចង់បង្កើតអ្វី?

ជ្រើសរើសលទ្ធផលដែលជិតបំផុតនឹងការងាររបស់អ្នក។ ផ្លូវនីមួយៗផ្តល់ឱ្យអ្នកនូវការស្នើសុំដែលដំណើរការមួយ, អ្វីដែលចម្លើយគួរមាន, របៀបពិនិត្យថាតើវាដំណើរការឬទេ, និងជំហានដែលមានប្រយោជន៍បន្ទាប់។

ផ្លូវអនុវត្តជាក់ស្តែងចំនួនប្រាំ

ចាប់ផ្តើមជាមួយលទ្ធផល មិនមែនបញ្ជី endpoint ទេ។

Selected: Harden a client

ផ្លូវ 1 ទាញយកទិន្នន័យម៉ាក្រូ ទាញយកស៊េរីពេលវេលាដែលស្អាត និងរក្សាទុកមេតាដាតាប្រភព និងគុណភាពនៅក្បែរនោះ។ ផ្លូវ 2 រៀបចំផែនការការងារចេញផ្សាយ ប្រើប្រាស់ប្រតិទិនចេញផ្សាយដើម្បីដំណើរការការងារដែលកំណត់គោលដៅជុំវិញពេលវេលាបោះពុម្ពដែលបានដឹង។ ផ្លូវ 3 វាស់វែងការភ្ញាក់ផ្អើល (surprises) ភ្ជាប់ការព្យាករណ៍មុនការចេញផ្សាយទៅនឹងតម្លៃដែលបានបោះពុម្ព ដោយមិនបង្កឱ្យមាន lookahead bias។ ផ្លូវ 4 ទទួលបានការធ្វើបច្ចុប្បន្នភាពរស់ ប្រើ SSE ជាសញ្ញាដែលមិនត្រឹមត្រូវ រួចទាញយកកំណត់ត្រាពេញលេញពី REST។ ផ្លូវ 5 បង្កើតគំរូម៉ាក្រូ បំប្លែងក្រុមតូចនៃសូចនាករដែលពាក់ព័ន្ធទៅជា scorecard រូបិយប័ណ្ណដែលមានស្លាកប្រភព។

ការសាកល្បង API រយៈពេល 14 ថ្ងៃរបស់អ្នក

ផ្លាស់ប្តូរពីការស្នើសុំលើកដំបូង ទៅជាការងារដែលមានតម្លៃគួររក្សាទុក។

គោលដៅមិនមែនជាការចូលទៅកាន់គ្រប់ទំព័រផលិតផលនោះទេ។ វាគឺដើម្បីបញ្ចប់ការងារ API ដែលមានការផ្ទៀងផ្ទាត់ប្រយោជន៍, ត្រឡប់មកវិញនៅថ្ងៃផ្សេងទៀត, និងចាកចេញជាមួយសំណុំទិន្នន័យ ឬលំហូរការងារកម្មវិធីដែលអាចធ្វើឡើងវិញបាន។

ពិនិត្យវឌ្ឍនភាព API

ថ្ងៃ 0

បញ្ជាក់ការចូលប្រើ

បង្កើត key បំពេញសំណើដែលមានការផ្ទៀងផ្ទាត់មួយ ហើយរក្សាទុកការឆ្លើយតបដំបូងជាមួយនឹង metadata របស់វា។

បើកជំហាន →

ថ្ងៃ 1-2

ធ្វើឱ្យសំណើមានភាពជឿជាក់

ដោះស្រាយបញ្ហាការផ្ទៀងផ្ទាត់ ឬបញ្ហា filter និងបំប្លែង script ដំបូងទៅជាការងារឈ្មោះដែលអាចធ្វើឡើងវិញបាន។

បើកជំហាន →

ថ្ងៃ 3-4

បន្ថែមពេលវេលាចេញផ្សាយ

ប្រើប្រាស់ប្រតិទិនជាគ្រួសារ endpoint ទីពីរ និងកំណត់កាលវិភាគការដំណើរការ API ដែលមានប្រយោជន៍បន្ទាប់។

បើកជំហាន →

ថ្ងៃ 5-7

បង្កើតលទ្ធផលស្រាវជ្រាវ

បន្ថែមការរំពឹងទុក ឬក្រុមតូចនៃស៊េរីម៉ាក្រូ រួចបង្កើតការប្រៀបធៀប តារាង ឬកាតពិន្ទុដែលបានរក្សាទុកមួយ។

បើកជំហាន →

ថ្ងៃ 8-10

ស្វ័យប្រវត្តិកម្មនៃការធ្វើបច្ចុប្បន្នភាព

ជ្រើសរើស REST, SSE ដែលបានកំណត់ពេល ឬ webhooks និងបញ្ចប់ការដំណើរការ API ជោគជ័យមួយទៀតនៅថ្ងៃផ្សេង។

បើកជំហាន →

ថ្ងៃ 11-13

ពង្រឹង client

បន្ថែមការកំណត់ពេលផុតកំណត់ (timeouts), ការព្យាយាមឡើងវិញដែលមានកម្រិត, ការផ្ទៀងផ្ទាត់ចម្លើយ, ការកត់ត្រាដែលមានសុវត្ថិភាពនូវលិខិតបញ្ជាក់, និងការត្រួតពិនិត្យទិន្នន័យដែលហួសសម័យ។

បើកជំហាន →

ថ្ងៃ 14

ពិនិត្យមើលភស្តុតាង

បញ្ជាក់ថា API ផ្តល់នូវការងារដែលអាចធ្វើឡើងវិញបានដែលក្រុមរបស់អ្នកនឹងរក្សាទុក រួចជ្រើសរើសសំណុំទិន្នន័យ ឬលំហូរការងារកម្មវិធីបន្ទាប់។

បើកជំហាន →

Production readiness

ធ្វើឱ្យ client API ត្រៀមរួចជាស្រេចសម្រាប់ផលិតកម្ម

Production reliability comes from treating status codes differently, keeping retries bounded, reusing ETags, and choosing scheduled REST, SSE, or webhooks for the job.

25 minutes Production pattern ការប្រកាសchangesstreamwebhooks

ឧទាហរណ៍ដែលដំណើរការ

រក្សាកូនសោរបស់អ្នកនៅក្នុង 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.

នៅពេលដែល script ដំបូងក្លាយជាប្រព័ន្ធពិតប្រាកដ

ការដោះស្រាយបញ្ហា និងការណែនាំអំពីផលិតកម្ម

ប្រើប្រាស់មគ្គុទ្ទេសក៍ទាំងនេះ នៅពេលដែលការឆ្លើយតបបរាជ័យ, មិនផ្តល់ទិន្នន័យ ឬត្រូវការការគ្រប់គ្រងផលិតកម្មដូចជា caching, timeouts, retries និងការបញ្ជូនព្រឹត្តិការណ៍។

មគ្គុទ្ទេសក៍ប្រើប្រាស់វា នៅពេលចាប់ផ្តើម
វិនិច្ឆ័យ response ដែលបរាជ័យ ឬទទេ បំបែកបញ្ហាការផ្ទៀងផ្ទាត់, ការចូលប្រើប្រាស់, ផ្លូវ, កម្រិតកំណត់អត្រា, និងភាពអាចរកបាននៃទិន្នន័យ ដោយមិនបង្ហាញកូនសោរបស់អ្នក។ បើកមគ្គុទ្ទេសក៍ →
ធ្វើឱ្យ client API ត្រៀមរួចជាស្រេចសម្រាប់ផលិតកម្ម បន្ថែម timeouts, bounded retries, caching, conditional requests, និងគំរូនៃការផ្តល់ជូនដែលត្រឹមត្រូវ។ បើកមគ្គុទ្ទេសក៍ →