¿Qué es Gin?
Gin es un framework para desarrollo web escrito en Golang.
Cuenta con una API tipo martini con un rendimiento mucho mayor, hasta 40 veces más rápido.
Si necesitas rendimiento y productividad amarás a Gin.
Enrutamiento basado en Radix tree, poco consumo de memoria. Sin reflection. Rendimiento predecible del API.
Una petición entrante HTTP puede ser manejada por diversos middleware encadenados y la acción final. Ejemplo: Logger, Authorization, GZIP y por úlitmo guardar el mensaje en la BD.
Gin puede recibir y recuperarse de un panic ocurrido durante una petición HTTP. Así tu servidor estará siempre disponible. También es posible hacer un reporte del panic, por ejemplo ¡a Sentry!
Gin permite analizar y validar datos JSON en una petición, y por ejemplo, revisar la existencia de datos requeridos.
Organiza mejor tus rutas: Rutas con autorización vs rutas públicas, versiones diferentes de API. Adicionalmente los grupos de rutas pueden anidarse ilimitadamente sin afectar el rendimiento.
Gin ofrece una conveniente forma de recopilar los errores ocurridos durante una petición HTTP. Un middleware puede incluso registrarlos en un archivo de logs, la BD o enviarlos por la red.
Gin cuenta con una API fácil de usar para el render de JSON, XML y HTML.
Crear un middleware nuevo es muy sencillo. Sólo debes revisar los códigos de ejemplo.