Sobes.tech

Блокиратсияи песимистӣ чист?

194

// Ҳангоми навсозии фармоиш, мо бояд маълумоти фармоишро ба чанд хидмат (API-ҳои ҷониби сеюм) фиристем // шумораи хидматҳо меафзояд (мумкин аст ҳазор+) // мо код навиштем, дар оғоз ҳама хуб буд, аммо бо вақт хидмати мо оғоз кард, ки ёдгории зиёд истеъмол кунад func (s *orderService) SendOrder(ctx context.Context, hosts []string, order Order) { for i := 0; i < len(hosts); i++ { go func() { // Бигзор ин як даъвати дарозмуддати шабакавӣ бошад response, err := s.httpClient.Send(ctx, hosts[i], order) if err != nil { s.logger.Error(ctx, "нишон додани ноком", err) return } s.logger.Info(ctx, "камол", response) }() } }

Middle+
194

Чаналҳо дар Go чистанд? Кадомҳоянд? Дар дохил чӣ гуна сохта шудаанд?

194

Контекст дар Go чист? Фарқи байни context.WithTimeout ва context.WithDeadline чист?

191

Чӣ гуна роҳҳои пайваст кардани сатрҳо дар Go ҳаст? Фарқи байни + ва strings.Builder дар чист?

191

Чӣ тавр ҳамаи ҳодисаҳои як фармоиш ба як партисияи Kafka ворид шаванд?

191

Чӣ гуна кэш кардани маълумотҳо амалӣ шуд? Кадом сиёсати кэш истифода шуд?

191

Агар Redis пур бошад ва сиёсати хориҷ кардан ғайрифаъол бошад, бо Redis ва мизоҷон чӣ мешавад?

189

Слайс чист? Даруни слайс чӣ аст? Чӣ тавр функсияи append кор мекунад?

184

Dead Letter Queue (DLQ) чист?

184

// таблица товаров: // ID | cnt_view // ----------- // 1 | 100 // два пользователя одновременно начали просматривать товар с id = 1 // и в нашей базе данных запущены 2 параллельные транзакции // какой будет результат? postgresql func IncrementView(ctx context.Context, db *sql.DB, id int64) error { tx, err := db.BeginTx(ctx, nil) if err != nil { return err } defer tx.Rollback() var cnt int err = tx.QueryRowContext(ctx, "SELECT cnt_view FROM goods WHERE id = $1", id, ).Scan(&cnt) if err != nil { return err } cnt++ _, err = tx.ExecContext(ctx, "UPDATE goods SET cnt_view = $1 WHERE id = $2", cnt, id, ) if err != nil { return err } return tx.Commit() }

Middle+
178

Чӣ тавр ҷамъоварии партовҳо дар Go кор мекунад? Вақте ки оғоз мешавад? Оё мумкин аст онро дастӣ оғоз кард?

177

Мутекс ва RWMutex нима? Улар қандай фарқ қилади?

177

Чӣ тавр ҳисоб карда шуд 25%? Чаро на 20 ё 30?

176

Стрингҳо дар Go чистанд? Дар дохили мотора чӣ маъно доранд?

173

func (r *OrderRepository) GetActiveOrderIDs(ctx context.Context, offset, limit int) ([]uint32, error) { var ( res []uint32 args []interface{} ) query := `SELECT id FROM "order" WHERE is_terminated = false LIMIT $1 OFFSET $2;` args = append(args, limit, offset) rows, err := r.slave.Query(ctx, query, args...) if err != nil { return nil, err } for rows.Next() { var orderID uint32 if err = rows.Scan(&orderID); err != nil { return nil, err } res = append(res, orderID) } return res, nil }

Middle+
172

Оё дар татбиқи Kafka нусхаҳо ва мушкилот буданд? Ин аввалин таҷрибаи шумо дар татбиқ буд?

168

Кадом асбобҳои профайл дар Go вуҷуд доранд?

167

Чӣ тавр ҳамоҳангсозии сохторҳо дар Go аст? Чӣ гуна метавон майдонҳои сохторро дар хотира оптимизатсия кард?

166
/3