dev · · 09:19 · 2 min de citit
Reconstruirea API-ului pentru istoricul stelelor GitHub pentru a reduce încărcarea cererilor
GitHub a reproiectat API-ul său pentru istoricul stelelor depozitelor pentru a oferi date despre tendințe fără a expune identitățile individuale ale utilizatorilor, reducând semnificativ încărcarea cererilor de la 2.500 la 24 per interogare. Această decizie de inginerie prioritizează performanța și scalabilitatea prin abstractizarea datelor granulare ale utilizatorilor.
GitHub a reproiectat cu succes API-ul său pentru istoricul stelelor depozitelor, transformându-l dintr-un proces intensiv din punct de vedere al resurselor, care gestiona până la 2.500 de cereri per interogare, într-un sistem eficient care necesită doar 24 de cereri. Această optimizare semnificativă a fost determinată de necesitatea de a oferi informații valoroase despre tendințe fără suprasolicitarea generată de urmărirea și returnarea activităților individuale de „stargazing” ale utilizatorilor, îmbunătățind astfel scalabilitatea și performanța pentru dezvoltatorii care se bazează pe aceste date.
Soluția tehnică a implicat o schimbare fundamentală în modul în care este urmărit și servit istoricul stelelor. În loc să interogheze acțiunile individuale ale utilizatorilor, noul API se concentrează pe date agregate despre tendințe, utilizând probabil structuri de baze de date optimizate și mecanisme de caching. Această abordare elimină necesitatea operațiunilor nelimitate în baza de date asociate cu preluarea fiecărui eveniment de „star”, ducând la o reducere dramatică a încărcării computaționale și de rețea. Compromisurile de inginerie realizate au prioritizat eficiența și capacitatea de a servi tendințele istorice în mod fiabil, în detrimentul datelor granulare, în timp real, ale utilizatorilor individuali.
Această dezvoltare are implicații substanțiale pentru dezvoltatori și pentru platforma GitHub, permițând aplicații mai robuste și mai performante care utilizează datele istoricului stelelor. Concentrarea pe tendințe agregate sugerează o mișcare către servicii de date mai scalabile în cadrul GitHub, deschizând potențial calea pentru optimizări similare în alte domenii. Dezvoltările viitoare ar putea implica rafinarea suplimentară a acestor metrici de tendință sau explorarea unor noi modalități de prezentare a datelor de implicare a depozitelor.
$ sursa --originală
github.blog
Rezumat realizat de Sudofeed pe baza articolului original. Drepturile asupra conținutului aparțin sursei originale.