Go asíncrono (Golang): guía completa
300 páginas
Spanish
PDF
4.5

Go asíncrono (Golang): guía completa

Go asíncrono (Golang): guía completa

Autor:

Año:

Resumen:

Este libro es una guía completa sobre programación asíncrona y concurrente en el lenguaje Go (Golang). A diferencia de muchos otros lenguajes, donde la asincronía es una capa adicional, en Go está integrada en el núcleo del lenguaje. El autor, Alexey Vetrov, desarrollador senior con 10 años de experiencia, aborda de manera secuencial todos los aspectos del trabajo con paralelismo, comenzando por los fundamentos y terminando con patrones complejos de producción.



Qué aprenderá del libro:

  • Goroutines: cómo crear hilos ligeros, gestionar su ciclo de vida y evitar fugas.
  • Channels: con y sin búfer, unidireccionales, patrones fan-in/fan-out, select.
  • Sincronización: mutex (sync.Mutex), RWMutex, operaciones atómicas, wait groups, once, cond.
  • Context: transmisión de señales de cancelación, plazos y valores entre goroutines.
  • Patrones avanzados: pipeline, worker pool, rate limiting, graceful shutdown, map/reduce paralelo.
  • Manejo de errores en código asíncrono: errgroup, panic recovery, structured logging.
  • Pruebas de código concurrente: race detector, pruebas de carga, objetos mock.


Para quién es este libro:

  • Desarrolladores de Go que desean pasar del código secuencial al asíncrono.
  • Ingenieros backend que crean servicios y microservicios de alta carga.
  • Programadores que migran a Go desde otros lenguajes (Python, Java, C#) y quieren dominar su filosofía de concurrencia.
  • Team Leads que desean implementar las mejores prácticas de paralelismo en su equipo.


Por qué debería leer este libro:

La concurrencia es uno de los temas más complejos en programación. Los errores en el código asíncrono (deadlocks, race conditions, goroutine leaks) son difíciles de detectar y reproducir. Este libro no solo ofrece teoría, sino soluciones probadas en la práctica. Cada patrón incluye código funcional, diagramas y explicaciones de por qué es correcto hacerlo de esa manera. Aprenderá a pensar en términos de goroutines y channels, en lugar de llamadas bloqueantes.



Se presta especial atención a las trampas típicas: cómo no perder datos al usar channels, cómo finalizar correctamente las goroutines, cómo evitar pánicos en código concurrente. El libro está estructurado para leerse de forma secuencial o usarse como referencia para patrones específicos.



Después de leerlo, podrá diseñar con confianza sistemas asíncronos de cualquier complejidad: desde servidores web simples hasta procesadores de eventos distribuidos y flujos de datos.

Recommendations