search 🔒 SIGN IN
Por fin tengo un Blog.

📅 01/11/2024 19:15 Por 👤  Karim Mribti

Llevaba tiempo queriendo poner en marcha un blog, por un motivo u otro, pero siempre me echaba atrás las soluciones que había, por un lado no quería utilizar servicios externos donde cedemos nuestra información sin mas y por otro, me preocupaba mucho la poca seguridad que tiene poner un aplicativo PHP o similar y ponerlo cara al publico asumiendo que no tenga fallos que pueden poner en peligro el resto de servicios en el servidor.




Total, he conseguido montar una App de blog propia usando ultimísima tecnología con la cual duermo tranquilo, y explico:

   - Servidor Ngnix como proxy inverso, versión actual 1.26 (h2, h3...), 
   - WebService desarrollado en pleno C++ usando el framework Drogon.
   - DragonflyDB como servicio cache para el WS.
   - PostgreSQL para almacenar toda la información.
   - Python como lenguaje de maquetación y gestión general, usando Mako para el Html
   - HtmlElements como librería web,  ligera y potente.

Alguien puede pensar que esto es demasiado para un blog tan simple, pero resulta que son las mismas herramientas que uso en mi día a día que básicamente es para hacer aplicaciones web (NO PAGINAS WEB) modernas entre otras cosas.

Cabe destacar que todas estas herramientas las instalo de las fuentes que consigo vía los sitios oficiales, todo alojado en un Linux compilado by hand.



 


Nginx (pronunciado "engine-x") es un servidor web de código abierto conocido por su alto rendimiento, estabilidad, rica configuración de características y bajo consumo de recursos. Originalmente creado para manejar 10,000 conexiones concurrentes, Nginx es ideal para balanceo de carga, caché de contenido, y como proxy inverso para HTTP y otros protocolos.

A su favor, resulta que es muy ligero y es poco código en completo C sin renunciar a lo ultimo como h3, h2..etc.



Me quedé maravillado por su calidad de código y por su increíble rendimiento, usa técnicas que no tienen nada que envidiar a GoLang o Rust, la implementación del ORM que tiene es increíblemente flexible y potente y todo con posibilidad de ejecutarlo en Síncrono u Asíncrono, por supuesto soporte "cacheado" con Redis y su gestión de la memoria es impecable,



Acostumbrado a Redis, este es la verdad mas rápido y mas fácil de trabajar con el, muy recomendable.



Todo lo que pueda decir de PostgreSQL es poco, una maravilla de producto que no sería el mismo sin el, llevo trabajando con esta base de dados 25 años, un gran equipo de desarrollo, unas prestaciones inigualables incluso si la comparamos con bases de datos comerciales.


 


Ni es el mejor lenguaje ni el mas rápido ni el mas simple, pero es muy versátil, lo uso siempre en algunas capas porque es una navaja suiza en la programación, su gran ventaja aquí y por eso lo incluyo es que viene con el PostgreSQL, no se requiere extensiones externas, su uso se limita aquí a la maquetación y manipulación del Html y lo hace de maravilla.



Y por fin, Mako, la verdad no lo conocía, pero me resultó mas simple que el Jinja2, de momento cumple su función, quizás su punto fuerte no es la gestión de errores, pero acabo de empezar, alguna cosa encontraré.

De HtmlElements no puedo decir nada, cumple con el propósito, pero al ser comercial y he tenido que hacer uso de mi licencia para poder usarla, no parece que tenga mucho merito valorarla, lo habría hecho con otro producto opensource, pero como ya tenía este y lo conocía y teniendo en cuenta que no soy muy fan de maquetación Html, pues eso, no digo nada.




Quiere comentar ?

Recuerda que tiene que validar el link que recibirá por email para que su comentario pueda ser publicado