Golang
მითხარი Semaphore ნიმუშის შესახებ.
თქვენ თვითონ უყურებთ მონიტორინგს თუ გაქვთ ცალკე გუნდი?
რატომ არის Go-ს მიდგომა მრავალმხრივობის მიმართ უკეთესი, ვიდრე სხვა ენებში?
გთხოვთ, გაგვიზიაროთ თქვენი გამოცდილება მაღალი დატვირთვის სისტემებთან მუშაობაში. გქონდათ თუ არა დავალებები ტრეფიკის განაწილებისა და ბალანსის შესახებ?
თუ ოპერაცია 10-12 წუთი გრძელდება და აქტიური ჩანაწერი მიმდინარეობს და მონაცემები იცვლება, რაიმე გვერდითი ეფექტი არ ყოფილა?
როგორ არის ალგორითმის სირთულე დროისა და მეხსიერების მიხედვით?
გთხოვთ, აღწეროთ ტრანზაქციების იზოლაციის დონეები: Read Uncommitted, Read Committed, Repeatable Read, Serializable.
გახდომოდათ თუ არა არქიტექტურული დავალებების შესრულება? როგორ მიიღებოდა არქიტექტურული გადაწყვეტილებები?
[სახელი] ჰკითხა: გთხოვთ, მომიყევით GoLang-ის სინქრონიზაციის primitives-ებზე.
ახლა გვსურს მივიდეთ HeadHunter-ზე და ვეძებოთ კანდიდატები ფილტრებით — როგორ არქიტექტურიროთ ეს?
სადიდან მოდიოდა მონაცემები? ლოგისტიკურმა კომპანიებმა გამოგზავნეს თუ როგორ?
რა შეიძლება გაკეთდეს, რათა თავიდან აიცილოს რუკის ევაკუაცია მაღალი დატვირთვის სერვისში?
რა არის Load Average, როგორ შემოწმება და რა ყურადღება მიაქციოს?
მონაცემები კონტეინერის შემდეგი გაჩერების შემდეგ წაიშლება?
func (c *Client) Send(ctx context.Context, messages []Message, maxWorkers int) error { sem := make(chan struct{}, maxWorkers) var wg sync.WaitGroup var resultErr error var once sync.Once for _, msg := range messages { wg.Add(1) go func(msg Message) { defer wg.Done() sem <- struct{}{} defer func() { <-sem }() body, err := json.Marshal(msg) if err != nil { once.Do(func() { resultErr = err; cancel() }) return } req, _ := http.NewRequestWithContext( ctx, http.MethodPost, c.url, bytes.NewReader(body), ) req.Header.Set("Content-Type", "application/json") resp, err := c.httpClient.Do(req) if err != nil { once.Do(func() { resultErr = err; cancel()}) return } defer resp.Body.Close() if resp.StatusCode >= 500 { once.Do(func() { resultErr = fmt.Errorf("server error") cancel()}) return } c.sentCount.Add(1) time.Sleep(time.Second) }(msg) } wg.Wait() }
რისი დავალებებისთვის გამოიყენეთ goroutines და არხები?
როგორ მოახდინეთ გავლენა პროცესის ცვლილებაზე ანალიტიკის საშუალებით?
როგორ არის ტექნიკურად მოწყობილი ზოგადად HR პლატფორმა?
როგორ გაუმკლავდით სიტუაციას, როდესაც ტრანსფერების დროს ანგარიშები სხვადასხვა შარდზე ხვდებოდნენ?
როგორ გადავიყვანოთ რიცხვი ბინარული სისტემაში?