Vorbește-mi despre CQRS
Golang
Aveți o întreprindere individuală deschisă sau lucrați ca liber profesionist pentru o afacere externă?
Spune-ne despre sarcinile pe care le îndeplinești în actualul tău loc de muncă pe o platformă FinTech.
Cum se implementează o hartă ordonată în Go care garantează ordinea cheilor în timpul iterației?
De ce ați ales Kafka și nu alte sisteme de mesagerie (RabbitMQ, NATS)?
Spuneți-mi despre companie: cine sunteți, cu ce vă ocupați, care este domeniul vostru de activitate?
Cum ați optimizat scenariile de căutare?
Ce să faci dacă PM-ul dă o sarcină cu o estimare nerealistă?
Ce alte percentiles ați folosit?
Cum adăugați context metodei Stop pentru a putea întrerupe așteptarea executării sarcinilor cu timeout?
// Scrieți un handler asincron de sarcini ca bibliotecă // Clientul transmite un obiect (Task) cu date pentru executarea sarcinii, // în exemplul nostru vom folosi o structură goală. // Handler-ul poate procesa simultan nu mai mult de N sarcini, // și nu mai mult de X sarcini pot fi puse în coadă pentru procesare. // Dacă nu există loc în coadă, se returnează imediat o eroare clientului. // Sarcina este preluată pentru procesare dacă există procesatoare libere. // Simulăm durata procesării cu time.Sleep(5*time.Second). // De îndată ce o sarcină se finalizează, luăm următoarea din coadă. // Dacă coada este goală, așteptăm noi sarcini de la clienți. // Cu un asterisc: extindeți structura Task și obțineți stările sarcinilor printr-o solicitare separată.
Ce probleme de acces concurent apar atunci când apelăm metodele Get și Set din gorutine diferite? Cum le rezolvăm?
50 observații la revizuirea codului — ce vei face?
Vă mulțumesc foarte mult pentru răspuns. Puteți să-mi spuneți dacă ați lucrat cu AWS?
Cum a fost organizat procesul de dezvoltare în echipa ta (CI/CD, testare, revizuire de cod)?
Normalizarea și denormalizarea tabelelor — vorbește-mi despre formele normale
Ce se întâmplă la o apelare repetată a Stop? Cum va funcționa după ce primul Stop a fost deja executat?
Care sunt avantajele și dezavantajele celor două scenarii: adăugarea de sarcini înainte de a porni pool-ul și după ce acesta a fost pornit?
Ce lipsește în Go comparativ cu alte limbaje (de exemplu, C#)?
Ce trebuie îmbunătățit în implementarea hărții ordonate, dacă aș avea mai mult timp? Care sunt problemele posibile și direcțiile de dezvoltare ale bibliotecii?