POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Gonk: MVP del Proyecto Terminado

Gonk: framework HTTP minimalista en Go para construir APIs y servicios web sencillos y mantenibles

Publicado el 07/09/2025

Que es Gonk

Gonk es un framework HTTP minimalista en Go creado sobre la librería estándar net/http. Su objetivo es ofrecer en un solo paquete enrutamiento, middleware, utilidades para JSON y una base sólida para construir APIs y servicios web de manera sencilla y mantenible. Forma parte de un proyecto dividido en cuatro fases, donde este framework es el primer pilar técnico.

Que ha cambiado desde la primera entrega

Desde la versión inicial, Gonk alcanzó un MVP funcional. Además de rutas para GET, ahora soporta POST, PATCH, PUT, DELETE, HEAD y OPTIONS. Se añadieron middlewares para CORS, registro de peticiones, recuperación ante pánicos y gestión de identificadores de solicitud mediante la cabecera X-Request-Id.

Middleware con un objetivo claro

El diseño del middleware prioriza la simplicidad. En lugar de replicar todas las características de frameworks masivos, se centró en cubrir lo esencial para aprender con claridad el que y el porqué de cada pieza.

Request ID

Cada petición lleva un identificador X-Request-Id. Si el cliente ya lo envía, se reutiliza; si no, el framework genera uno nuevo como cadena hex codificada. El ID se inyecta en el contexto de la petición y puede recuperarse después en cualquier punto de la cadena, lo que permite correlacionar logs y depurar con precisión.

Logger

El registro del servidor produce salidas en JSON pensadas para observabilidad, fácil ingesta y análisis. Para cada solicitud se incluyen campos como método, ruta, estado HTTP, bytes escritos, latencia en milisegundos, X-Request-Id, IP remota y user agent. Con esto resulta sencillo integrarlo en pipelines de análisis o SIEM y activar alertas por latencias anómalas o errores.

Recuperación ante pánicos

La capa de recuperación envuelve el manejo de peticiones para evitar que un pánico derribe el servidor. Ante un fallo inesperado, captura el error, registra la traza de pila solo para el lado servidor y responde al cliente con un 500 Internal Server Error con un cuerpo JSON limpio, sin exponer información sensible.

CORS seguro y configurable

El middleware de CORS es configurable para permitir todos los orígenes en entornos de desarrollo o limitar a orígenes específicos en producción. Gestiona peticiones simples y preflight OPTIONS. Se evita mezclar el comodín asterisco con Allow-Credentials true, cumpliendo las restricciones del navegador y manteniendo una postura segura por defecto.

Utilidades JSON

El framework incorpora funciones para trabajar con JSON de forma consistente. WriteJSON establece cabeceras correctas y el estado HTTP y serializa la respuesta. WriteError devuelve errores con una forma homogénea y legible por máquinas. DecodeJSON aplica decodificación estricta, rechazando campos desconocidos, cuerpos vacíos y múltiples valores JSON, y devuelve errores tipados. StatusFromDecodeError traduce esos errores a códigos HTTP adecuados como 400 para entrada inválida, 413 para cuerpos demasiado grandes o 422 para desajustes de tipo.

Decisiones de diseño

La filosofía ha sido usar al máximo la librería estándar net/http, incluyendo http.ServeMux, para aprender de primera mano cómo maneja Go las peticiones HTTP y avanzar con rapidez sin añadir complejidad innecesaria. El resultado es un framework pequeño, comprensible y útil.

Mirando a una versión 2.0

Si se retoma el proyecto, una evolución natural sería construir un router propio y profundizar aún más en TCP, HTTP y el manejo de sockets, incluso limitando o evitando el uso de net/http para aprender desde una capa inferior. La experiencia de este MVP no solo fue útil, sino que consolidó el entendimiento de los fundamentos de Go y de la red.

Lo que viene a continuación

El siguiente paso del proyecto es el Data Store, segunda parte del plan en cuatro secciones. La base HTTP ya está lista para integrarse con persistencia, seguridad y observabilidad.

Como Q2BSTUDIO impulsamos proyectos como Gonk para acelerar la entrega de soluciones escalables y seguras. Somos una empresa de desarrollo de software y aplicaciones a medida, especialistas en inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi. Si tu organización necesita una API robusta, un backend eficiente o integrar analítica avanzada, nuestro equipo puede ayudarte a convertir la arquitectura en valor de negocio.

Conoce cómo abordamos proyectos de software a medida y aplicaciones multiplataforma en nuestra página de desarrollo de aplicaciones y software a medida, y si planeas desplegar tus servicios con alta disponibilidad y escalado automático, descubre nuestros servicios cloud en AWS y Azure donde alineamos arquitectura, seguridad y costes.

En Q2BSTUDIO también integramos ciberseguridad de forma transversal, incorporamos IA para empresas con modelos y agentes IA orientados a casos de uso reales y llevamos la toma de decisiones a otro nivel con servicios de inteligencia de negocio y cuadros de mando con Power BI. Así, desde el framework hasta el despliegue, tu empresa obtiene una plataforma sólida para crecer.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio