Golang
gRPC ve GraphQL ile ilgili deneyimin var mı? Onlar hakkında anlat.
Tür Response arayüz {} tür Backend arayüz { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr belirli bir örneğin ip:port adresini içerir func NewBackend(addr string) *BackendImpl tür Balancer struct { // TODO backends []*BackendImpl index int mu sync.Mutex } var _ Backend = &Balancer{} func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { eğer len(b.backends) == 0 { return nil, fmt.Errorf("Yığın içindeki backends sayısı 0") } b.mu.Lock() index := b.index eğer b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) return resp, err } // addrs tüm dengelenmiş örneklerin adreslerini içerir func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs))
Goroutine'ler arasında belleği nasıl paylaşılır? Hangi durumlarda Atomic kullanmak daha iyidir ve hangi durumlarda Mutex/RWMutex/SyncMap kullanmak daha iyidir?
Hangi görevleri daha çok seviyorsun ve hangilerini daha az?
Kod incelemesinde dikkat edilmesi gereken en önemli 3 şeyi söyleyebilir misin?
Go'da map nasıl çalışır?
Linux'ta CPU ve bellek kullanımını nasıl kontrol edilir?
Start-up'ın özelliğiyle ilgili olarak: her zaman net görev tanımları yok, bazen belirsiz oluyor, girişimcilik ve bağımsızlık gerekiyor, iş yükü düzensiz olabiliyor. Bunu nasıl hissediyorsunuz?
Dört protokolü adlandırın: HTTP, gRPC, WebDAV, ACSA — hangisi gereksiz?
ölçeklendirme görevi: Hizmet B, Hizmet A'dan artan bir yük yaşıyor. Ne yapılabilir?
Go'da veri hizalaması nedir?
Yeni bir iş yerinden beklentileriniz nelerdir?
Go dilinde bir görev yazın — pratik bölüm (geliştiricinin hayatından problemler, algoritmalar olmadan): bir hizmeti geliştirin veya düzeltin. Süre — 1,5 saat.
TLS nedir ve neden sertifika gerekir?
Bu görevde neden WaitGroup'e ihtiyacımız var?
Kafka mesajlarını nasıl doğruluyordunuz? Mesaj doğrulanmadıysa, onunla ne oluyordu?
L4 yük dengeleme ile L7 yük dengeleme arasındaki fark nedir?
Go servisinde hangi kütüphaneler ve çerçeveler kullanıldı?
Kafka ile RabbitMQ arasındaki fark nedir?
CTE (Ortak Tablo İfadesi, WITH) ile bir şeyler yazdınız mı?