Sobes.tech

Golang

Yaddaşı və ya yığınına dəyişəni açıq şəkildə ayıra bilərikmi? Dəyişənin harada ayırıldığını necə başa düşmək olar?

375

Outbox Pattern necə həyata keçirildi? Outbox cədvəlindən Kafka-ya hansı alət göndərirdi?

305

VACUUM və VACUUM FULL arasındakı fərq nədir?

268

Niyə Kafka və digər sistemlər deyil?

243

İndeksi istehsala əlavə etməzdən əvvəl onun effektivliyi və faydalılığını necə əvvəlcədən qiymətləndirmək olar?

232

gRPC hansı nəqliyyat protokolundan istifadə edir? HTTP/2 və HTTP/1.1 arasında nə fərq var?

218

PostgreSQL-də şərtsiz DELETE FROM table sorğusu icra olunduqda nə baş verir?

218

EXPLAIN ANALYZE hansı məlumatları göstərir?

215

SSL və TLS arasındakı fərq nədir?

215

int32, int64 və sadə int məlumat tipləri arasındakı fərq nədir?

215

Artıq bağlanmış kanalı bağlasaq nə olur? Nil kanala yazsaq nə olur?

211

Go-da map nədir? Daxili quruluşu necədir? Çatışma zamanı nə baş verir?

209

Rate Limiting nədir? Hansı alqoritmlər mövcuddur?

197

Qürur duyduğun maraqlı bir vəzifəni, bir təcrübəni və ya çətinlikləri danış.

190

// Sifariş yeniləndikdə, sifariş məlumatlarını bir neçə xidmətə (üçüncü tərəf API-ləri) göndərməliyik // xidmətlərin sayı artır (minlərlə+ ola bilər) // kodu yazdıq, əvvəl hər şey yaxşı gedirdi, amma zamanla xidmətimiz çox yaddaş istifadə etməyə başladı func (s *orderService) SendOrder(ctx context.Context, hosts []string, order Order) { for i := 0; i < len(hosts); i++ { go func() { // Bu uzun müddətli şəbəkə çağırışı olduğunu düşünün response, err := s.httpClient.Send(ctx, hosts[i], order) if err != nil { s.logger.Error(ctx, "göndərmədə xəta", err) return } s.logger.Info(ctx, "uğur", response) }() } }

Middle+
187

Go-da sətirləri birləşdirməyin hansı yolları var? + və strings.Builder arasında nə fərq var?

185

// Məhsullar haqqında məlumat almaq üçün metodumuz var, bu metod çox tez-tez çağrılır // Bu kodda problemlər var mı və onları necə düzəltmək olar? postgress məlumat bazası func (r *ProductRepository) GetProductDetails(ctx context.Context, productIDs []int) []Product { products := make([]Product, 0, len(productIDs)) for _, id := range productIDs { go func(id int) { var p Product query := "SELECT name, price, description FROM products WHERE id = $1" err := r.db.QueryRowContext(ctx, query, id).Scan(&p.Name, &p.Price, &p.Desc) if err != nil { r.logger.Error("error get product", "err", err) return } products = append(products, p) }(id) } return products }

Middle+
184

Go-da kanallar nədir? Hansılar var? Daxili quruluşu necədir?

184

ACID-də Dayanıqlıq prinsipi nədir? PostgreSQL-də necə əldə edilir?

183
/3