Yeqa uye kokuyinhloko
Izifundo ze-AI

Zijwayeze Izingxoxo Zokuklama Izinhlelo nge-System Design Trainer

Funda ukufaka i-System Design Trainer, udale izakhiwo ze-AWS ne-Azure ebhodini layo lokubhala elisebenzisanayo, uhlole umthamo nokwethembeka, uqede amazinga ahlelekile, futhi usebenzise u-Jev ukuze uthole impendulo ngezinqumo zokuklama.

Zijwayeze Izingxoxo Zokuklama Izinhlelo nge-System Design Trainer

Yini i-System Design Trainer?

I-System Design Trainer iyibhodi elimhlophe elisebenzisanayo lokuzijwayeza izingxoxo zokuklama amasistimu. Ukhetha isimo, uhudulela izingxenye ze-AWS noma ze-Azure kukhanvasi, uzixhumanise zibe ukwakheka, bese usebenzisa ukulingisa okunqunywe kusengaphambili komthamo.

Isilingisi silinganisa ukuthi ingxenye ngayinye ingasekela ithrafikhi engakanani, sikhombe ibhodlela lesistimu, futhi sigqamise izingozi zokwakheka. Uma ukwakheka sekulungile, u-Jev angahlola izinqumo ezingenakwahlulelwa ngezibalo zomthamo kuphela, okuhlanganisa ukukhula komthamo, ukwethembeka, ukwakheka kwedatha, kanye nencazelo yakho ebhaliwe.

Izici Eziyinhloko

  • Ikhanvasi yokwakha esebenzisanayo: Ibhodi elimhlophe lakhiwe nge-React Flow kusetshenziswa i-@xyflow/react.
  • Ukuzijwayeza okuhlelekile: Iphrojekthi inamazinga angu-15 ezahlukweni ezine.
  • Ukumodela komthamo bukhoma: Inodi ngayinye ibonisa ukusetshenziswa kanye nesilinganiso senani labasebenzisi engabasekela.
  • Ukuhlolwa kokwakheka: Isilingisi simaka izindawo zokwehluleka okukodwa, izibaluli zomthwalo ezingekho, kanye namaklayenti axhumeke ngqo kumadathabheyisi.
  • Izilinganiso zezindleko nokutholakala: Isistimu inikeza izinkomba ezengeziwe eceleni kwezibalo zokudluliswa kwedatha.
  • Ukuhlolwa kwesitayela somxoxisi: U-Jev unikeza amaphuzu ngokukhula komthamo, ukwethembeka, ukwakheka kwedatha, nezincazelo ezibhaliwe, bese encoma okufanele kuthuthukiswe ngokulandelayo.
  • Ubuchwepheshe obungokwezifiso: Ungafaka ubuchwepheshe obufana ne-Kafka, MongoDB, noma i-NGINX. U-Jev uhlukanisa indima yabo ekwakheni ukuze uhlelo lunikeze iphrofayela yomthamo.
  • Inqubekelaphambili yasendaweni: Ukwakheka kanye nenqubekelaphambili yezimo kugcinwa esipheqululini.
  • Ukudlala ngokukhululekile: Ibhodi elimhlophe elivulekile liyatholakala ngaphandle kwamazinga ahlelekile.

Faka Futhi Usebenzise Iphrojekthi

1. Faka okuncikile

Yenza i-clone noma ulande indawo yokugcina, uyivule kumkhombandlela wayo kutheminali, bese ufaka okuncikile kwe-npm:

npm install

2. Dala ifayela lendawo lemvelo

Kopisha ithempulethi yemvelo efakiwe uyibeke ku-.env.local:

cp .env.example .env.local

3. Lungiselela u-Jev

Ukuze uthole izimpendulo zangempela zika-Jev, engeza inani le-TYPESAFE_API_KEY ku-.env.local. U-Jev usebenzisa i-lib/server/jev.ts eyakhiwe nge-@typesafe-ai/sdk.

Uhlelo lusengasebenza ngaphandle kokhiye we-API. Kuleso simo, izimpendulo zika-Jev zishintshela ku-mock ebhalwe ngokusobala, okukuvumela ukuthi uhlole yonke enye inqubo ngaphandle kokuhlolwa kwangaphandle.

4. Qalisa iseva yokuthuthukisa

npm run dev

Vula ikheli lendawo elibikwe yiseva yokuthuthukisa ukuze uqale ukusebenzisa umqeqeshi.

Qedela Umsebenzi Wakho Wokuqala Wokuklama Isistimu

  1. Khetha umyalo. Khetha isimo esifana nokuklama ingqalasizinda yabasebenzisi abayisigidi. Isimo ngasinye sinikeza inani labasebenzisi nezimfuneko ezinqunyiwe.
  2. Funda izinhloso. Amazinga aqukethe izinhloso ezidingekayo kanye nezinhloso zebhonasi ozikhethela zona, ezihlolwa lapho usebenzisa ukwakheka.
  3. Engeza izingxenye zamafu. Hudulela izingxenye ezifanele ze-AWS noma ze-Azure ebhodini elimhlophe.
  4. Xhumanisa ukwakheka. Dala izindlela zezicelo nedatha phakathi kwamaklayenti, izingxenye zenethiwekhi, amasevisi ohlelo lokusebenza, amakheshi, imigqa, namadathabheyisi njengoba kufanele kuleso simo.
  5. Sebenzisa ukwakheka. Hlola ukusetshenziswa, izilinganiso zabasebenzisi abasekelwayo, ukutholakala, izindleko, nezixwayiso zokwakheka.
  6. Lungisa ibhodlela. Buyekeza ukwakheka ngokusekelwe ezingxenyeni ezithwele ngokweqile noma ezixwayisweni zesakhiwo, bese usisebenzisa futhi.
  7. cela impendulo ku-Jev. Thumela ukwakheka nencazelo ebhaliwe ukuze kuhlolwe uma usukulungele.

Indlela amaphuzu ezinga asebenza ngayo

Ukufeza yonke inhloso edingekayo kukuzuzisa inkanyezi eyodwa. Inhloso ngayinye yebhonasi ikuzuzisa enye inkanyezi. Izinkanyezi zinikeza i-XP futhi zibe negalelo esigabeni sakho, kuyilapho inqubekelaphambili igcinwa esipheqululini.

Isahluko 4 sikucela ukuthi wakhe kabusha ukwakheka okuyizibonelo okuvela ku-Azure Architecture Center. Ngemva kokuphumelela kwelinye lala mazinga, umqeqeshi uxhumanisa nokwakheka kwasekuqaleni.

Qonda Imodeli Yomthamo

Injini yomthamo iku-lib/simulate.ts. Inqunywe kusengaphambili futhi ayisebenzisi i-AI. Umthwalo ophakeme utholakala esimweni kusetshenziswa lobu budlelwano:

DAU × izicelo ngosuku ÷ 86,400 × isici somthwalo ophakeme

Imodeli ihlukanisa lo mthwalo ube ukufundwa nokubhalwa, bese iwudlulisa enodini Yabasebenzisi idlule kugrafu exhunyiwe.

Indlela izingxenye ezivamile ezithinta ngayo ithrafikhi

  • Ama-CDN: Amunca ingxenye yethrafikhi isimo esiyimaka njenge-cacheable emaphethelweni.
  • Amakheshi: Amunca ukufundwa ngokwezinga lawo lokushaywa. Imodeli isekela kokubili ukubekwa kwama-sibling kusetshenziswa i-cache-aside kanye nokubekwa ngaphakathi komzila.
  • Imigqa: Isusa ukubhalwa endleleni evumelanayo futhi ikushelele ibheke ezingeni elijwayelekile lezicelo.
  • Izingxenye ezingama-sibling: Izingxenye zohlobo olufanayo zihlukanisa umthwalo ngokulinganayo. Ngokwesibonelo, isibaluli somthwalo esixhunywe emaqenjini amabili ezinhlelo zokusebenza sisabalalisa ithrafikhi phakathi kwawo.
  • Amadathabheyisi e-SQL: Umthamo wokubhala ukhawulelwa yi-primary eyodwa.
  • Amadathabheyisi e-NoSQL: Umthamo wokubhala ukhula ngokwezahlukaniso.

Inodi ngayinye ibika ukusetshenziswa futhi inikeze isilinganiso esithi supports ~N users, esibalwa ngokuhlukanisa inani labasebenzisi besimo ngokusetshenziswa. Umthamo wesistimu wonke unqunywa ingxenye evimbelayo enesilinganiso esiphansi kakhulu sabasebenzisi abesekelwayo.

Isibonelo Sokuphindaphinda Umklamo

Ake sithi umklamo uthumela yonke ithrafikhi yamakhasimende ngqo engxenyeni eyodwa yohlelo lokusebenza bese iya kusizindalwazi. Ukuqhuba isifaniso kungaveza uhlelo lokusebenza noma isizindalwazi njengengxenye evimbelayo, kanye nezixwayiso zokwethembeka.

Ungabe usubuyekeza isakhiwo ngokwengeza ukusabalalisa okufanele, i-caching, ukucubungula okungavumelanisiwe, noma izingxenye zedatha. Isibonelo, amaqembu ohlelo lokusebenza afanayo angemuva kwe-load balancer angahlukanisa ithrafikhi yohlelo lokusebenza, i-cache inganciphisa ukufundwa kwesizindalwazi ngokwezinga lokutholwa kwayo, futhi i-queue ingasusa ukubhala endleleni evumelanisiwe. Phinda uqhube imodeli ngemva koshintsho ngalunye ukuze ubone ukuthi ingxenye evimbelayo isithuthele kwenye indawo yini.

Isilinganiso somthamo esiphezulu asenzi umklamo ube olungile ngokuzenzakalelayo. Sebenzisa i-Jev ukuhlola ukuhwebelana phakathi kokwethembeka, ukwakheka kwedatha, ukunwebeka, kanye nokucabanga okusekela izinqumo zakho.

Sebenzisa I-Jev Ngempumelelo

Isifanisi esinqumayo sinikeza i-Jev izinombolo esizibalile njengamaqiniso. I-Jev ibe isisingatha izahlulelo ezingenakuncishiswa zibe amafomula e-throughput.

  • Amaphuzu okuhlola: Ihlola ukunwebeka, ukwethembeka, ukwakheka kwedatha, kanye nencazelo ebhaliwe.
  • Ukukhetha ukuthuthukiswa: Ikhetha okufanele kuthuthukiswe ngokulandelayo.
  • Izahlulelo zohlu lokuhlola: Ikhiqiza i-Noul eyodwa entweni ngayinye yohlu lokuhlola lwesimo.
  • Ukuhlukaniswa kwengxenye yangokwezifiso: Inikeza ubuchwepheshe obufakayo indima yesakhiwo, okwenza umqeqeshi asebenzise iphrofayela yomthamo ehambisanayo.

Ukuze uthole impendulo enamandla, yenza incazelo ebhaliwe icace. Chaza ukugeleza kwethrafikhi, imicabango yokukala, ukuphathwa kokwehluleka, amaphethini okufunda nokubhala, nokuthi kungani ingxenye ngayinye enkulu ikhona.

Amathiphu Athuthukile

Thuthukisa ingxenye evimbelayo, hhayi zonke izingxenye

Isistimu isekela abasebenzisi abaningi kuphela njengengxenye yayo enomkhawulo. Qala ngenodi ebonisa isilinganiso esiphansi kakhulu sabasebenzisi abesekelwayo. Ngemva kokushintsha umklamo, phinda uqhube isifaniso ngoba ukususa ingxenye eyodwa evimbelayo kungaveza enye.

Qhathanisa izindlela ezivumelanisiwe nezingavumelanisiwe

Ama-queue asusa ukubhala endleleni yezicelo ezivumelanisiwe futhi akusabalalise ngokushelelayo kuya kumthwalo omaphakathi. Sebenzisa imodeli ukuqhathanisa indlela yokubhala eqondile nesakhiwo esisebenzisa i-queue lapho isimo sivumela ukucubungula okungavumelanisiwe.

Hlola ukubekwa kwe-cache

Isifanisi sibona ama-cache asetshenziswa njengezingxenye ezifanayo ephethinini ye-cache-aside, kanye nama-cache abekwe emgqeni oqondile. Bheka ukuthi ukubekwa nezinga lokutholwa kuyithinta kanjani ithrafikhi yokufunda eya ezingxenyeni ezingezansi.

Qaphela izixwayiso zesakhiwo

Ungagxili ekusetshenzisweni kuphela. Hlola izindawo zokwehluleka okukodwa, ama-load balancer angekho, kanye nokuxhumana okuqondile phakathi kweklayenti nesizindalwazi. Lezi zixwayiso zingaveza ubuthakathaka bomklamo obuhlobene nokwethembeka noma nokuphepha ngisho nalapho umthamo ongahluziwe wanele.

Hlola umthombo ongemuva kwezinombolo zekhathalogi

Idatha yomthamo, ukutholakala, nezindleko ichazwa ku-lib/catalog.ts. Inombolo ngayinye inomthombo oboniswa ekhadini lezakhiwo zengxenye. Amanani ahlukaniswa abe imikhawulo esemthethweni, ama-SLA asemthethweni, izilinganiso zomthengisi, imicabango, noma amasevisi angenawo umkhawulo oshicilelwe.

  • Umkhawulo osemthethweni: I-quota eshicilelwe ye-AWS noma ye-Azure, njengomkhawulo wezicelo osezingeni le-akhawunti.
  • I-SLA esemthethweni: Isithembiso somthengisi sokusebenza kwanyanga zonke.
  • Isilinganiso somthengisi: Inombolo yokusebenza eshicilelwe engasiqinisekisi isiqinisekiso.
  • Umcabango: Inani eliyimodeli lapho kungekho nombolo yomthengisi etholakalayo. Iphrojekthi iphinde iphathe zonke izindleko njengemicabango.
  • Awukho umkhawulo oshicilelwe: Isevisi eyimodeli enwebeka ngokuzimela, ngakho ayibi ingxenye evimbelayo.

I-README ithi le mithombo yagcina ihlolwe ngoSepthemba 2026. Ama-quota e-cloud ayashintsha, futhi amaningi angakhushulwa, ngakho imiphumela yesifaniso kufanele iphathwe njengezilinganiso hhayi njengeziqinisekiso.

Hlola noma wandise izimo

Izincazelo zezimo zigcinwe ku-lib/scenarios.ts, kuyilapho amazinga ahlelekile angu-15 echazwe ku-lib/levels.ts. Faka izimo ku-lib/scenarios.ts lapho wandisa imiyalelo yokuzijwayeza etholakalayo.

Qonda ukugcinwa kolwazi esipheqululini

Imiklamo ye-Canvas igcinwa ngesimo ngasinye ku-localStorage, futhi inqubekelaphambili nayo igcinwa esipheqululini. Khumbula ukuthi ukugcinwa kwesiphequluli kungokwephrofayela nesimo sesiphequluli samanje kuphela.

Isiphetho

I-System Design Trainer ihlanganisa i-canvas yesakhiwo se-cloud esebenzisanayo, ukumodela umthamo okunqumayo, izinhloso ezihlelekile, kanye nokubuyekezwa komklamo okusekelwe ku-Jev. Sebenzisa isifanisi ukuhlola ukuziphatha okulinganisekayo, sebenzisa izixwayiso ukubamba izinkinga zesakhiwo, futhi usebenzise i-Jev ukuthuthukisa ukucabanga nokuhlaziya ukuhwebelana okulindelekile kwinhlolokhono yokuklama isistimu.