Go

Tối ưu hóa hiệu năng

Profiling, benchmarking, CPU profiling, memory profiling, phân tích bottleneck, tối ưu hóa

22 câu hỏi phỏng vấn·
Senior
1

Công cụ pprof trong Go là gì?

Câu trả lời

pprof là công cụ profiling tích hợp sẵn của Go cho phép phân tích hiệu năng CPU, bộ nhớ, goroutine và các chỉ số khác. Nó tạo ra các profile ở định dạng nhị phân có thể phân tích bằng go tool pprof. Công cụ này rất cần thiết để xác định các bottleneck hiệu năng và tối ưu hóa các ứng dụng Go trong môi trường production.

2

Làm thế nào để bật CPU profiling trong một ứng dụng Go?

Câu trả lời

CPU profiling được bật bằng pprof.StartCPUProfile(file) và dừng bằng pprof.StopCPUProfile(). Cách tiếp cận này ghi lại mức sử dụng CPU trong quá trình chương trình chạy. Đối với các ứng dụng web, việc dùng package net/http/pprof sẽ tự động expose các endpoint profiling.

3

Sự khác biệt giữa CPU profiling và memory profiling là gì?

Câu trả lời

CPU profiling đo thời gian dành cho mỗi hàm để xác định các bottleneck thực thi, trong khi memory profiling đo các cấp phát bộ nhớ để phát hiện rò rỉ và sử dụng quá mức. CPU profiling mặc định lấy mẫu mỗi 10ms, memory profiling ghi lại tất cả các cấp phát hoặc một mẫu tùy theo cấu hình.

4

Làm thế nào để tạo một benchmark trong Go với package testing?

5

Kết quả '1000 ns/op' trong một benchmark Go có nghĩa là gì?

+19 câu hỏi phỏng vấn

Nắm vững Go cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí