/* Duotas simbolių eilutė. Raskite porų indeksų i ir j (i <= j) skaičių, tarp kurių nėra pasikartojančių simbolių. Eilutės "aba" atveju atsakymas yra 5: gali būti ne tik ASCII [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */
Golang
Paaiškinkite priklausomybių inversijos principą ir kodėl tiesioginis metodų kvietimas iš naudojimo atvejo pažeidžia SOLID.
Kaip atlikote atliktų užklausų teisingumo testavimą ir patvirtinimą?
Ar yra terminas?
Funkcija, kuri priima dvi surūšiuotas sveikųjų skaičių sekas. Reikia grąžinti visas pirmos sekos elementus, kurių nėra antroje. Kaip spręstumėte ir kokia būtų sudėtingumas?
Kaip patvirtina JWT savo autentiškumą? Kaip įsitikinti, kad tokenas nėra suklastotas?
/* Yra taikymas su mikroservisų architektūra. Mikroservisas gali būti abstrakčiai apibrėžtas naudojant Backend sąsają. Norint pasiekti mikroserviso egzempliorių, galima naudoti jau įgyvendintą BackendImpl tipą. Kiekvienas mikroservisas turi kelias dešimtis veikiančių egzempliorių, kurių kiekvienas pasiekiamas per savo adresą addr. Tačiau atskiros mikroserviso egzemplioriai nėra patikimi: jie gali kristi, būti neprieinami arba perkrauti. Todėl jums reikia įgyvendinti Balancer tipą, kuris taip pat įgyvendina Backend sąsają ir atlieka kliento pusės apkrovos balansavimą tarp mikroserviso egzempliorių, kiekvieną kartą pasirenkant **mažiausiai apkrautą** egzempliorių. */ type Request interface{} type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr saugo konkretaus egzemplioriaus ip:port adresą func NewBackend(addr string) *BackendImpl type Balancer struct { // TODO } var _ Backend = &Balancer{} // addrs saugo visų balansuojamų egzempliorių adresus func NewBalancer(addrs []string) *Balancer { // TODO }
Kuo skiriasi lokal, dev, stage, prod aplinkos?
Ar turite patirties vadovaujant komandai?
Ką pridedama į atsakymą, kai langas tampa galiojantis?
Kokia yra semaforo ir buferinio kanalo apribojimas kaip sprendimai, siekiant apriboti paralelinius užklausimus?
/* Yra taikymas su mikroservisų architektūra. Mikroservisas gali būti apibrėžtas naudojant Backend sąsają. Norint pasiekti mikroserviso egzempliorių, galima naudoti tipą BackendImpl, kuris jau yra įgyvendintas. Kiekvienas mikroservisas turi kelias dešimtis veikiančių egzempliorių, kurių kiekvienas yra pasiekiamas per savo adresą addr. Tačiau, atskiros mikroserviso egzemplioriai nėra patikimi: jie gali kristi, būti neprieinami arba perkrauti. Todėl jums reikia įgyvendinti tipą Balancer, kuris taip pat įgyvendina Backend sąsają ir atlieka kliento pusės apkrovos balansavimą tarp mikroserviso egzempliorių, kiekvieną kartą pasirenkant **mažiausiai apkrautą** egzempliorių. */
Kokia yra didžiausia užklausų per sekundę (RPS) skaičius, kurį apdorodavo labiausiai apkrautas paslauga?
Darbo formatas: nuotoliniu būdu, biure ar hibridinis?
Kas yra JWT tokenas? Iš ko jis sudarytas?
Parašykite užduotį Go kalba — praktinė dalis (programuotojo gyvenimo problemos, be algoritmų): patobulinti arba pataisyti paslaugą. Trukmė — 1,5 valandos.
Kaip padaryti atmintį pastovią (pašalinti priklausomybę nuo unikalių simbolių skaičiaus)?
Kaip veiks klientas, autorizacijos mikroservisas ir parduotuvės mikroservisas naudojant JWT? Ir kas pasikeis be JWT, su sesijomis?
Papaskink apie savo darbo patirtį ir ką darote.