Si es la primera vez que corren now, no tendrán las credenciales, por lo que deben correr primero:
now login
Y seguir las instrucciones de verificación.
Introducción al proyecto del curso y su arquitectura
Arquitectura de un backend complejo
Estructuras de datos para nuestro proyecto
Creando la estructura principal
Estructura inicial del proyecto: API y rutas
Aislar el código de la base de datos
Rutas para usuarios
Documentación de nuestra API
Autenticación basada en tokens
JWT: Gestión de acceso
Autenticación: registro
Autenticación: login
Autenticación: cifrar contraseñas para evitar problemas de seguridad
Autenticación: gestión de permisos
Comprobar verificación con token
Gestión avanzada de errores: Throw
Almacenando datos: MySql
Base de datos real: MySQL
Completando la base de datos
Relacionando entidades: follow
Posts y likes
Microservicios en Node
Microservicios: pros y contras
Separando la base de datos a un microservicio
Conectando con nuestro microservicio de datos
Separando los posts a un microservicio
Gestión de microservicios con PM2
Puesta en producción serverless
Microservicios en Zeit Now, serverless y seguridad
Variables de entorno en Now y despliegue local
Cacheando nuestra aplicación
Caché como un microservicio. Redis
Conectando el microservicio a Redis
Conectar la API al caché
Puesta en producción en virtual machine
Desplegando los servicios de Node
Nginx como proxy inverso
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 28
Preguntas 5
Si es la primera vez que corren now, no tendrán las credenciales, por lo que deben correr primero:
now login
Y seguir las instrucciones de verificación.
dado que now ahora es vercel, les dejo mi archivo de vercel.json:
{
"version": 2,
"builds": [
{
"src": "api/index.js",
"use": "@vercel/node"
},
{
"src": "post/index.js",
"use": "@vercel/node"
}
],
"routes": [
{
"src": "/api/auth(.*)",
"dest": "/api/index.js"
},
{
"src": "/api/user(.*)",
"dest": "/api/index.js"
},
{
"src": "/api/post(.*)",
"dest": "/post/index.js"
}
]
}
tengan ccuidado con las rutas de los index.js, ya que Carlos las cambio para no confundirse cuando utilizo pm2. En mi caso quedaron como estaban desde un principio.
Serverless es básicamente no tener dependencia en un único servidor. es una manera de desplegar y usar servicios de cómputo.
De manera más fancy es “desatendernos” del server y delegarle la tarea a otra entidad o servicio.
Pueden aprender más aquí: https://platzi.com/clases/1824-google-serverless/26193-por-que-elegir-serverless/ ✋
Esta clase debería ser actualizado
Hoy en día Zeit Now ahora es Vercel, son los creadores del framework backend Next.js
.
Debemos instalar npm i -g vercel-cli
, para ver cambios en local hacemos vercel dev
y cuando tengamos todo listo para producción simplemente hay que hacer git push
en la rama main.
El archivo now.json
debe llamarse vercel.json
:
{
"version": 2,
"builds": [
{
"src": "api/index.js",
"use": "@vercel/node"
},
{
"src": "post/index-post.js",
"use": "@vercel/node"
}
],
"routes": [
{
"src": "/api/auth(.*)",
"dest": "/api/index.js"
},
{
"src": "/api/user(.*)",
"dest": "/api/index.js"
},
{
"src": "/api/post(.*)",
"dest": "/post/index-post.js"
}
]
}
Zeit now: https://vercel.com/
Si están usando una base de datos local no pueden acceder a la base desde Now, podemos ejecutar now para desarrollo, de esta maner correrá en un servidor local y no habrá probelmas al acceder a la base, esto se ve en la siguiente clase. El comando es:
now dev
No me da un link .now.sh y tambien me al introducir my-link/api/user/
Me da el siguiente error:
Zeit Es una plataforma serverless que permite abstraer todas las funciones que existen por debajo, corre con AWS levanta cada servicio de node como si fueran funciones lambda que se ejecutan, hacen lo que tienen que hacer y mueren.
Lo instalamos con npm i -g now
iniciamos now con now login y seguimos las instrucciones
creamos el archivo de configuracion en la carpeta raiz
vercel.json
{
"version": 2,
"builds": [{
"src": "./api/index.js",
"use": "@vercel/node"
},
{
"src": "./post/index.js",
"use": "@vercel/node"
}
],
"routes": [{
"src": "/api/auth(.*)",
"dest": "/api/index.js"
},
{
"src": "/api/user(.*)",
"dest": "/api/index.js"
},
{
"src": "/api/post(.*)",
"dest": "/post/index.js"
}
]
}
Now cambio un poco, para los que se encuentren un poco perdidos Platzi hace poco saco un curso donde se ve Vercel que es el nuevo Now les dejo el link https://platzi.com/clases/despliegue-apps/ 😎
No pude hacer esta clase, ya que encontré diversos problemas que no he podido realizar 😦
Les recomiendo tener un poco de paciencia en esta clase, ya que ahora se utiliza diferente configuración, ahora es con vercel y previamente deberiamos haber subiro el proyecto en github
Al hacer deploy si les sale inmediatamente un 404 al ingresar a la URL, es porque no tienen activado el “Directory Listing”
.
Para activarlo, basta con ir a los Project Settings, después ir a la opción de Advanced, y ahí dentro poner Enabled en el Directory Listing.
Zeit Now serverless, Es similar a cloud functions?
NOW ahora se llama Vercel
Ahora es con vercel
npm i -g gatsby-cli
gatsby new my-gatsby-project
vercel
Es posible que pida login entonces
vercer login
y sigue las instrucciones
Por ultimo abre la URL que lo lleva a
😉
Este curso se está poniendo tremendamente bueno
tengo el siguiente error
Ya no funciona la linea de comandos. El paquete now ya no tiene soporte
✌
Serverless en Zeit now o Vercel: Levanta los microservicios como funciones lambda, se ejecutan cuando se requiera, y mueren
Muy buena
Excelente y rápido.
No puedo conectarme a la Base de Datos desde la ruta de now, pero en postman si funciona normal
Realmente es muy rápido y fácil hacer despliegue de éstas APIs. solo con el comando now, hasta ahora es lo más rápido que he hecho en despliegues.
Actualmente Zeit a cambiado
Ahora now es Vercel
Now ahora es vercel, cambió un poco la forma de realizar lo de esta clase pero casí cambiando exclusivamente now por vercel sea donde sea que aparezca es suficiente para lograrlo.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.