Junior — Middle
Go тилинде ишке ашырылган HTTP серверинин негизги максаты жана иштөө принциптери жөнүндө түшүндүрүңүз
sobes.tech AI
AIден жооп
Go тилиндеги HTTP сервер кирүүчү HTTP суроолорду иштетүү жана кардарларга (браузерлер, API кардарлары жана башкалар) ылайыктуу HTTP жоопторун жөнөтүү үчүн арналган. Негизги иштөө принциби — сервер белгилүү бир портто угуп турат, суроолорду кабыл алат, аларды handlers аркылуу иштетет жана натыйжаны кайтарат.
Goда HTTP сервер түзүү үчүн net/http пакети колдонулат. Негизги компоненттер:
- Handler — функция же объект, ал
http.Handlerинтерфейсин ишке ашырып, суроону иштетүүгө жооптуу. - ListenAndServe — серверди ишке киргизип, белгиленген дарек боюнча угуп баштайт.
Төмөндө жөнөкөй Go HTTP серверинин мисалы келтирилген:
package main
import (
"fmt"
"net/http"
)
func helloHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Салам, дүйнө!")
}
func main() {
http.HandleFunc("/", helloHandler) // Жол үчүн handler катталат "/"
http.ListenAndServe(":8080", nil) // 8080 портунда сервер иштетилет
}
Мындайча айтканда, Goда HTTP серверин оңой ишке ашырса болот, ал эффективдүү жана goroutines аркылуу ички атаандаштыкты колдоосу менен жакшы масштабдалышы мүмкүн.