Concurrencia en Go (Golang): Guía Práctica
300 páginas
Spanish
PDF
4.5

Concurrencia en Go (Golang): Guía Práctica

Concurrencia en Go (Golang): Guía Práctica

Autor:

Año:

Resumen:

El libro «Concurrencia en Go (Golang)» es una guía práctica sobre uno de los temas más potentes y a la vez complejos del lenguaje de programación Go. Si ya domina los fundamentos de la sintaxis y desea pasar al siguiente nivel, creando aplicaciones de alto rendimiento, tolerantes a fallos y escalables, este libro se convertirá en su compañero indispensable.



La concurrencia no es solo la capacidad de ejecutar varias tareas simultáneamente. En Go está integrada en la propia arquitectura del lenguaje: gorutinas ligeras, canales eficientes para el intercambio de datos y una rica biblioteca estándar. Sin embargo, el uso incorrecto de estas herramientas puede provocar errores difíciles de detectar: condiciones de carrera, interbloqueos y fugas de recursos. Este libro le ayudará a evitar estas trampas y a aprender a pensar de forma concurrente.



Qué aprenderá en este libro:

  • Gorutinas: Cómo ejecutar miles de tareas paralelas con una sobrecarga mínima, gestionar su ciclo de vida y evitar fugas.
  • Canales: Organización del intercambio seguro de datos entre gorutinas, sincronización y construcción de tuberías de procesamiento.
  • Patrones de concurrencia: Fan-In, Fan-Out, Worker Pool, Pipeline, Or-Channel y otras soluciones arquitectónicas probadas por el tiempo.
  • Sincronización: Uso de mutexes, WaitGroup, Cond y operaciones atómicas para proteger recursos compartidos.
  • Context: Gestión del tiempo de vida de las gorutinas, cancelación de operaciones y transmisión de metadatos a través del contexto.
  • Pruebas: Escritura de pruebas para código concurrente, detección de condiciones de carrera con el detector integrado.
  • Manejo de errores: Cómo gestionar correctamente los errores en un entorno multiproceso sin perder información sobre fallos.
  • Ejemplos reales: Desde un simple rastreador web hasta un servidor de chat distribuido y un sistema de procesamiento de eventos.


Para quién es este libro:

  • Desarrolladores de Go que conocen los fundamentos y quieren dominar la concurrencia.
  • Programadores de otros lenguajes (Python, Java, C++) que migran a Go y desean comprender su modelo único de paralelismo.
  • Ingenieros backend, especialistas en DevOps y todos aquellos que crean sistemas de alta carga y microservicios.
  • Estudiantes y profesores que estudian enfoques modernos de programación paralela.


El libro está escrito en un lenguaje sencillo y claro, con gran cantidad de listados de código y ejercicios prácticos. Cada capítulo contiene ejercicios para afianzar el material. Después de leerlo, podrá diseñar e implementar con confianza sistemas concurrentes en Go que funcionen de forma rápida, estable y segura.



No importa si está creando un servidor web, un procesador de datos o una herramienta de línea de comandos: comprender la concurrencia en Go le abrirá nuevas posibilidades para la optimización y la construcción de una arquitectura elegante.

Recommendations