Subiendo 2 millones de archivos a la nube

En el contexto de la migracion de un sistema PHP desde un entorno local a servidores en AWS, sin embargo debemos subir mas de 220 Gb de informacion en archivos 100K

Para poder subir archivos a servidores en la nube suelo usar comandos como scp o rsync, los cuales realizan la transferencia de los archivos en una conexion segura. Esta solucion funciona relativamente bien cuando se sube hasta 1000 archivos, sin embargo mas alla de eso se puede empezar algunos problemas.

Como generar o restaurar un backup de PostgreSQL ?

Realizar un backup de una base de datos ( en este caso PostgreSQL ) es un proceso obligatorio en cualquier sistema en produccion.

Diferentes eventos pueden generar la perdida de datos, como por ejemplo: falla de los discos duros, acceso no permitido a la base de datos, un bug en tus sistemas que corrompa los datos, error humano de gestion, etc. Sin una politica de backup adecuada, ese suceso podria ocasionar la perdida completa de tu proyecto.

En el caso de postgresql, son dos los comandos que nos van a permitir trabajar con backups:

IMAPCOPY, una herramienta para migrar cuentas de correo entre servidores

SPOILER, migrar cuentas de correo toma su tiempo. Depende de la cantidad de mails existentes en cada cuenta pero diria que entre 8 y 20 horas por cuenta de correo. Asi que preparense un cafe y relajense.

Cuando un cliente quiere salir de Godaddy y migrar a Bluehost, no solo hay que mover el sitio web ... tambien debes mover todas sus cuentas de correo. Aca explicaremos como realizar esa migracion usando la herramienta IMAPCOPY.

Primero debemos instalar las herramientas:

sudo apt install imapcopy stunnel4

Como configurar una aplicacion aspnet como servicio en Ubuntu

Una vez desarrollada nuestra aplicacion en dotnet, e instalada en el servidor queda un ultimo paso. Como hacer que este permanentemente activa ? Esto lo lograremos creando un servicio en Ubuntu ( Linux )

Lo primero sera crear nuestro archivo de definicion de servicio

# nano /etc/systemd/system/dotnet-app.service

El nombre del servicio en este caso sera dotnet-app, pero podria ser cualquier otro.

Este archivo donet-app.service, tiene un formato .INI que debemos completar, asi:

Configurar drush con drupal y docker-compose

Drupal es un CMS muy potente para la creacion de sitios web o MVP de aplicaciones, sin embargo algunas operaciones de mantenimiento son mas sencillas de realizar desde la consola de comandos o directamente ser automatizadas en el servidor. Para poder realizar estas funciones utilizamos drush, y en este articulo aprenderemos a usarlo con docker-compose.

Como instalar una app ASPNETCore en Linux

ASPNET Core es un framework de desarrollo web OpenSource de Microsoft. En este articulo, vamos a detallar los pasos para configurar tu servidor Linux una aplicacion ASPNET Core.

Creacion del VPS

Creamos nuestros VPS en cualquiera de las plataformas disponibles actualmente ( DigitalOcean, Linode, AWS Ligthsail, etc ). En nuestro ejemplo en particular utilizamos Ubuntu 20.04

Instalacion del Framework ASPNET Core

Para instalar las librerias basicas del framework debemos ejecutar los siguientes pasos con permiso de root

SSH: Como mantener las conexiones SSH abiertas

A veces cuando trabajamos con servidores remotos por SSH, la terminal del servidor deja de responder y obtenemos un Broken pipe.

Esto sucede cuando por algun motivo, la conexion entre el cliente y el servidor se ha roto. Es decir no pudieron comunicarse existosamente durante un lapso de tiempo, entonces el servidor invalido la conexion.

Para evitarlo, podemos indicarle al comando SSH que envie comandos vacios cada cierto tiempo y asi evitar que la conexion se declarada muerta por el servidor.