Golang
Жыйынтыктадан синхрондуу туруктуулук менен орундар жана баланс боюнча эсебиңизди айтып бериңиз.
Go-дөгү Stop the World деген эмне?
Go-догу канал эмне жана ал кандайча маалыматтарды өткөрөт?
Кызматтар арасында кантип байланышуу — gRPC, REST же башка нерсе?
Docker, Kubernetes менен иштедиңби? Пайплайн түзүү жөнүндө сүйлөштүңбү?
пакет сактагыч импорт ( "database/sql" "errors" "fmt" "time" "github.com/company/my-service/internal/event" "github.com/company/my-service/internal/metric" ) type Partner struct { ID string `db:"id" json:"id"` Balance float32 `db:"balance" json:"balance"` Hold float32 `db:"hold" json:"hold"` } type PayoutRepository struct { db sql.DB eventPublisher event.Publisher metricCollector metric.Collector totalPayouts int } func NewPayoutRepository() *PayoutRepository { db, err := sql.Open("postgres", "host=localhost user=postgres password=postgres dbname=affiliate") if err != nil { panic(err) } r := PayoutRepository{ db: db, eventPublisher: event.NewKafkaPublisher("localhost:9092"), metricCollector: metric.NewPrometheusCollector("localhost:9090"), } go func() { for range time.Tick(time.Minute) { _ = r.metricCollector.Send("TotalPayouts", r.totalPayouts) } }() return r } func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(advertiserID) if err != nil { return err } partner, err := r.find(partnerID) if err != nil { return err } advertiser.Balance -= amount partner.Hold -= amount partner.Balance += amount if err := r.save(advertiser); err != nil { return err } if err := r.save(partner); err != nil { return err } r.totalPayouts++ return nil } func (r *PayoutRepository) find(id string) (Partner, error) { p := Partner{} err := r.db.QueryRow("SELECT * FROM partners WHERE id = " + id).Scan(&p) if err != nil { if err == sql.ErrNoRows { return p, errors.New("partner not found") } return p, err } return p, nil } func (r *PayoutRepository) save(p Partner) error { _, err := r.db.Exec( fmt.Sprintf("UPDATE partners SET balance = %s, hold = %s WHERE id = %s", p.Balance, p.Hold, p.ID), ) if err != nil { return err } if err := r.eventPublisher.Publish("BalanceChanged", p); err != nil { return err } return nil }
Конкуренция менен параллелдиктин айырмасы эмнеде?
REST жана Kafkaда коопсуздукту кантип камсыз кылуу керек? HTTPS/TLS деген эмне?
Select оператору жөнүндө айтып бериңиз, ал эмне кылат жана эмне үчүн керек.
Медициналык агрегатор менен интеграциянын ишенимдүүлүгүн кантип жогорулатып, маалымат жоготууну 2% дан 0,01% га кыскарттыңыз? Бул медицинада 2% жоголгон маалыматтар көп эмеспи?
grpc-server AddItemAndOrder ыкмалды ишке ашырыңыз: 1. Сатып алынган товарларды себетке кошуу 2. Себет түзүлгөнү тууралуу мүмкүн болгон керектөөчүлөргө билдирүү брокер аркылуу милдеттүү 3. Себеттин курамы өзгөргөндө, basket.Total = сумма(саны * баа) кайра эсептелиши керек 4. Бардык элементтер ProductID ачкычына ылайык уникалдуу болушу керек 5. Себетти заказ кылуу үчүн, анын статусун ordered кылуу керек 6. Тастыкталган себеттерде өзгөртүүлөргө жол берилбейт Бардык колонкалары бүтүн сандардан турган таблица бар. Коддо төмөнкү суроо бар: select * from t1 where a > ? and b = ? and c != ? order by a;
Неге статусду enum кылуу жакшы жана качан string колдонуу жакшы?
Redis жалпы кандай көйгөйдү чечет?
HeadHunterде күнүнө 16 миң резюме көрүү чектөөсү бар, жана кең фильтр бардыгын жейт — кантип чечүү керек?
Маалыматтар базада кантип сакталат?
Сизде эки таблица бар: orders (тартиблер): order_id (тартибдин уникалдуу идентификатору) customer_id (кардардын идентификатору) order_date (тартибдин датасы) total_amount (бардык тартибдин суммасы) customers (кардарлар): customer_id (кардардын уникалдуу идентификатору) customer_name (кардардын аты) city (шаары) Миссия: SQL суроо жазгыла, ал төмөнкү маалыматтарды кайтарат: Жалпы суммасы 1000 доллардан ашкан заказдар жасаган кардарлардын тизмеси (аты жана шаары). 1-абзацтан ар бир кардар үчүн, бардык заказдардын жалпы суммасын көрсөтүңүз.
API долбоорлоо негиздери
Сиз 4 жылдык тажрыйбаңыз бар екенін айттыңыз, бирок 2024-жылы университетти бектірдіңіз. Соңғы курста оқып жүріп жұмыс істедіңіз бе?
Мага суроолор барбы?
TCP менен UDPнин айырмасы эмнеде? Кайсы учурларда колдонулат?