Go Worker Pool

Los worker pool son threads, implementados en Go como Goroutines, que recibe tareas a través de un channel. Cada tarea permanece en el canal como una cola hasta que el worker termina y se libera para tomar otro nuevo trabajo.

[Leer más]
go  golang 

Go Defer

Defer invoca una función después de que la función actual ha terminado. La sentencia defer hará que la función que se ha “diferido” se ejecute al finalizar la función que se está ejecutando.

[Leer más]
go  golang 

Golang leer archivos

Leer archivos es una de las tareas más básicas de cualquier programa y en Golang es bastante simple. Veremos en este post como abrir un archivo, leer su contenido e imprimirlo. Si deseas leer un archivo de texto y visualizar su contenido solo debes hacer uso del paquete io/ioutil en conjunto con bufio de Golang. Leer todo un archivo en memoria con Golang Partamos de un ejemplo en el que leemos un archivo de texto en memoria con Go y luego imprimimos todo su contenido. [Leer más]

Golang curso inicial

¿Cual es el propósito de este curso inicial de Go en Español? Este curso inicial de Go intenta darte una introducción muy rápida sobre las principales características de Golang con ejemplos simples. Todo el código de ejemplo está disponible en github y gitlab. Una vez obtenido un pantallazo sobre el lenguaje podrás empezar a construir tus primeras aplicaciones :) . Acerca de Go Go es un lenguaje bastante nuevo creado por Google. [Leer más]

Golang Select

Select te permite esperar y elegir el resultado de operaciones que has realizado usando channels. Esta instrucción es bloqueante, por lo que bloquea el flujo de código hasta tanto una de las operaciones de envío y recepción haya finalizado. En el caso de que haya varias operaciones listas al mismo tiempo, ‘go’ elige uno al azar. Veamos el siguiente ejemplo en el que creamos dos funciones. Una de ellas simula una operación que se ejecuta rápidamente y la otra que demora más tiempo. [Leer más]
go  golang 

Golang Closures

Para comprender los closures en Go primero debemos comprender sobre funciones anónimas. Las funciones anónimas son simplemente funciones que hemos creado sin un nombre y que luego asignamos a una variable o que usamos directamente. Veamos el ejemplo a continuación en donde hemos asignado una función a la variable “a” . No hay nombre definido para la función y podemos usarla a través de la variable a la cual la función está asignada. [Leer más]

Go Channels

Qué son los channels en Golang En Golang los channels son canales que usas para comunicarte con Goroutines. A través de estos canales puedes enviar de un extremo a otro información. Para este fin utilizamos el operador <- Cómo se crea un channel en Golang Para crear un canal debes usar make y definir el tipo. En este caso definimos un channel de tipo string mychannel := make(chan string) Cómo se envían mensajes a través de un channel Para escribir un mensajes a través de un channel y para leer lo haces de este modo. [Leer más]
go  golang 

Como usar Spring Boot Retry

Descripción Spring Boot Retry ofrece una forma simple para reintentar alguna operación que ha fallado. Esto es útil sobre todo cuando se tratan errores temporales o transitorios como el acceso a un recurso externo. Spring Boot Retry puede configurarse de forma declarativa mediante anotaciones o definiendo una config general. Vamos a ver aquí cómo utilizar la funcionalidad Retry dentro de SpringBoot. Dependencias necesarias para Spring Boot Retry Las dependencias que necesitas son las siguientes [Leer más]