Go ͕ Google Ͱੜ·ΕͨܦҢ
ແͷϋʔυΣΞɺແͷιϑτΣΞ
Լ͕Γଓ͚Δ։ൃޮʹର߅͢Δ
Slide 14
Slide 14 text
"Go was designed by and for people who write
—and read and debug and maintain—large
software systems."
Rob Pike, Go at Google
Slide 15
Slide 15 text
ͳͥ Go ϚΠΫϩαʔϏεͷͨΊͷݴޠͳͷ͔
https://blog.docker.com/2019/02/weve-got-❤%EF%B8%8F-for-our-first-batch-of-dockercon-speakers/
ཧ༝: ΫϥυωΠςΟϒͱͷ
૬ੑ͕ʮΓΑ͔ʯ
γϯάϧόΠφϦɺߴͳϏϧυɺলϝϞϦ
Slide 16
Slide 16 text
Docker and Go
Slide 17
Slide 17 text
FROM golang:1.7.3
WORKDIR /go/src/github.com/alexellis/href-counter/
RUN go get -d -v golang.org/x/net/html
COPY app.go .
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/
COPY --from=0 /go/src/github.com/alexellis/href-counter/app .
CMD ["./app"]
ΈΜͳ͍͖ͩ͢
multi-stage builds
Slide 18
Slide 18 text
FROM golang:1.7.3
WORKDIR /go/src/github.com/alexellis/href-counter/
RUN go get -d -v golang.org/x/net/html
COPY app.go .
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/
COPY --from=0 /go/src/github.com/alexellis/href-counter/app .
CMD ["./app"]
ΈΜͳ͍͖ͩ͢
multi-stage builds
Ϗϧυ༻ͷεςʔδ
Slide 19
Slide 19 text
FROM golang:1.7.3
WORKDIR /go/src/github.com/alexellis/href-counter/
RUN go get -d -v golang.org/x/net/html
COPY app.go .
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/
COPY --from=0 /go/src/github.com/alexellis/href-counter/app .
CMD ["./app"]
ΈΜͳ͍͖ͩ͢
multi-stage builds
࣮ߦ༻ͷεςʔδ
Go Πϯετʔϧ͞Ε͍ͯͳ͍
Ϗϧυ༻ͷεςʔδ͔Β
ϑΝΠϧΛίϐʔ
Slide 20
Slide 20 text
Observability and Go
Slide 21
Slide 21 text
Clients
Server Side
ࡶͳ Microservices
Ͳ͜ͰԿ͕͓͖ͯΔ͔
Θ͔Βͳ͍