/* Verilmiş simvol sətiri. Təkrarlanmayan simvollar arasında i və j indeksləri cütlərinin sayını tapın. "aba" sətiri üçün cavab 5: yalnız ASCII olmaya bilər [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */
Golang
Asılılıqların tərs çevrilməsi prinsipini izah edin və niyə istifadə halından depo metodlarına birbaşa çağırış SOLID prinsipi pozur.
Siz necə həyata keçirdiniz sorğuların düzgünlüyünün test və təsdiqini?
Həddiniz varmı?
İki sıralanmış artan sıralı tam ədəd ardıcıllığını qəbul edən bir funksiya verilir. Birinci ardıcıllıqdan ikinci ardıcıllıqda olmayan bütün elementləri necə geri qaytararsınız və bu həllin mürəkkəbliyi nədir?
JWT özünün düzgünlüyünü necə yoxlayır? Tokenin saxta olmadığını necə təsdiqləyir?
/* Mikroservis memarizası ilə tətbiq mövcuddur. Mikroservis Backend interfeysi vasitəsilə abstraktlaşdırıla bilər. Mikroservisin bir nümunəsinə giriş üçün, artıq tətbiq olunmuş BackendImpl tipindən istifadə edə bilərsiniz. Hər mikroservisin bir neçə onlarla işləyən nümunəsi var, hər biri öz ünvanı addr ilə əlçatan. Ancaq, mikroservisin ayrı-ayrı nümunələri etibarlı deyil: onlar çökmə, əlçatan olmama və ya yüklənmə ilə qarşılaşa bilər. Buna görə, siz müştəri tərəfi yük balanslaşdırması həyata keçirən və hər dəfə **ən az yüklənmiş** nümunəni seçən Balancer tipini tətbiq etməlisiniz. */ type Request interface{} type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr müəyyən nümunənin ip:port ünvanını ehtiva edir func NewBackend(addr string) *BackendImpl type Balancer struct { // TODO } var _ Backend = &Balancer{} // addrs bütün balanslaşdırılan nümunələrin ünvanlarını ehtiva edir func NewBalancer(addrs []string) *Balancer { // TODO }
Yerli, inkişaf, mərhələ, istehsal mühitləri necə fərqlənir?
Komanda idarəetmə təcrübəniz varmı?
Pəncərə etibarlı hala gəldikdə cavaba nə əlavə olunur?
Paralel sorğuları məhdudlaşdırmaq üçün həllər kimi semafor və tamponlu kanalın məhdudiyyəti nədir?
/* Bir mikroservis mimarisi ilə tətbiq var. Mikroservis, Backend interfeysi vasitəsilə abstraktlaşdırıla bilər. Bir mikroservisin nümunəsinə giriş üçün BackendImpl tipindən istifadə edə bilərsiniz, bu artıq həyata keçirilib. Hər mikroservisin bir neçə onlarla işləyən nümunəsi var, hər biri öz ünvanı addr ilə əlçatandır. Ancaq, mikroservisin ayrı-ayrı nümunələri etibarlı deyil: onlar çökmə, əlçatmazlıq və ya yüklənmə ilə qarşılaşa bilər. Buna görə, siz Balancer tipini həyata keçirməlisiniz, bu da həmçinin Backend interfeysini həyata keçirir və mikroservis nümunələri arasında müştəri tərəfi yük balanslaşdırmasını həyata keçirir, hər dəfə **ən az yüklü** nümunəni seçərək. */
Ən çox yüklənmiş xidmətin saniyədə (RPS) işlədiyi maksimum sorğu sayı nədir?
İş formatı: uzaqdan, ofisdə və ya hibrid?
JWT tokeni nədir? Nədən ibarətdir?
Go dilində vəzifə yazın — praktiki bölmə (inkişafçının həyatından problemlər, alqoritmlər olmadan): xidməti təkmilləşdirin və ya düzəldin. Müddət — 1,5 saat.
Yadda yaddaşını sabit etmək olar (unikal simvolların sayına asılılığı aradan qaldırmaq)?
JWT istifadə edərkən müştəri, icazə mikroxidmət və mağaza mikroxidmətinin qarşılıqlı əlaqəsi necə olacaq? Və JWT olmadan, sessiyalar ilə nə dəyişəcək?
İş təcrübəniz və nə ilə məşğul olduğunuz haqqında danışın.