Эйч
Эйч
  • Все менторы
Задачи/Go-разработчик/Оптимизация высоконагруженного сервиса

Оптимизация высоконагруженного сервиса

Условие задачи

Требуется разработать защитный механизм от перегрузки сервиса, который обрабатывает до 500 000 запросов в минуту, при этом результат запроса остаётся актуальным в течение 10 секунд. Необходимо предложить решение, позволяющее снизить нагрузку и предотвратить перегрузку, обеспечив при этом быструю и стабильную отдачу актуальных данных

gofunc getBtcCourseHandler(w http.ResponseWriter, r *http.Request) { 
    // Генерация случайного числа вместо реального курса BTC.
    _, err := fmt.Fprintf(w, "The simulated BTC course is: %.2f USD", getCourse())
    if err != nil {
        log.Print(err)
    }
}

func main() {
    http.HandleFunc("/getCourse", getBtcCourseHandler)

    fmt.Println("Server is running on port 8080...")
    err := http.ListenAndServe(":8080", nil)
    if err != nil {
        fmt.Println("Server failed:", err)
    }
}

func getCourse() float64 {
    rand.Seed(time.Now().UnixNano())
    // volatility от 30000-80000
    btcCourse := rand.Float64()*50000 + 30000
    return btcCourse
}

Профессия

Go-разработчик

Сопроводим до оффера

Умножим шансы на каждом этапе поиска и поможем получить выгодный оффер

Узнать больше

Сервис развития карьеры

Контактыteam@h.careers@hcareers
TelegramVKYouTubeLinkedIn
Профессии
Компания
С чем помогаемОтзывыВопросы и ответыСертификатыВебинарыСтать ментором

Платформа принадлежит ООО "Эйч Карьера"
ИНН 9710095807 ОГРН 1227700077340
Адрес: 127006, город Москва, Старопименовский пер, д. 18 стр. 2, помещ./ком./этаж I/19/2

Copyright © 2020-2025 Сервис развития карьеры Эйч. Все права защищены.

Политика конфиденциальностиПользовательское соглашениеОферта