
Optimización del rendimiento
Profiling, benchmarking, CPU profiling, memory profiling, análisis de cuellos de botella, optimizaciones
1¿Qué es la herramienta pprof en Go?
¿Qué es la herramienta pprof en Go?
Respuesta
pprof es la herramienta de profiling integrada en Go que permite analizar el rendimiento de CPU, memoria, goroutines y otras métricas. Genera perfiles en formato binario analizables con go tool pprof. Esta herramienta es esencial para identificar los cuellos de botella de rendimiento y optimizar las aplicaciones Go en producción.
2¿Cómo habilitar el profiling de CPU en una aplicación Go?
¿Cómo habilitar el profiling de CPU en una aplicación Go?
Respuesta
El profiling de CPU se habilita con pprof.StartCPUProfile(file) y se detiene con pprof.StopCPUProfile(). Este enfoque captura el uso de CPU durante la ejecución del programa. Para las aplicaciones web, usar el paquete net/http/pprof expone automáticamente los endpoints de profiling.
3¿Cuál es la diferencia entre el profiling de CPU y el profiling de memoria?
¿Cuál es la diferencia entre el profiling de CPU y el profiling de memoria?
Respuesta
El profiling de CPU mide el tiempo que se pasa en cada función para identificar los cuellos de botella de ejecución, mientras que el profiling de memoria mide las asignaciones de memoria para detectar fugas y un uso excesivo. El profiling de CPU usa muestreo cada 10ms por defecto, el profiling de memoria captura todas las asignaciones o una muestra según la configuración.
¿Cómo crear un benchmark en Go con el paquete testing?
¿Qué significa el resultado '1000 ns/op' en un benchmark de Go?
+19 preguntas de entrevista
Otros temas de entrevista Go
Fundamentos de Go
Estructuras de datos en Go
Interfaces en Go
Manejo de errores
Goroutines básicas
Channels
Go Modules
Servidor HTTP
Cliente HTTP
Codificación JSON
Database/SQL
Paquete context
Testing
Patrones de concurrencia
Primitivas de sincronización
Frameworks web de Go
Diseño de API REST
gRPC
Reflection
Gestión de memoria
Generics
Go Design Patterns
Microservices
Seguridad y autenticación
Docker & Containerization
Kubernetes Basics
Go Avanzado
Desarrollo de CLI
Domina Go para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis