Funciones

Despliega funciones serverless en segundos

Entorno Deno gestionado en tu propio servidor. Escribe funciones en TypeScript, súbelas e invócalas por HTTPS. Sin paso de compilación, sin imágenes de contenedor, sin dependencia del proveedor.

Escribe una función, despliégala, invócala

// handler.ts
export default async function(req: Request) {
const url = new URL(req.url);
const name = url.searchParams.get('name') ?? 'world';
return new Response(
JSON.stringify({ hello: name }),
{ headers: { 'Content-Type': 'application/json' } },
);
}
# Invoke your function
curl https://my-functions.sh0.app/?name=sh0
{"hello":"sh0"}

Serverless sin compromisos

Todos los beneficios de las funciones serverless con el control del autoalojamiento.

TypeScript y JavaScript

Escribe funciones en TypeScript o JavaScript. Entorno de ejecución Deno completo con top-level await, módulos ES y la API Web estándar (fetch, crypto, streams).

Despliegue instantáneo

Sube tu archivo de función y estará activo de inmediato. Sin paso de compilación, sin imagen de contenedor, sin arranque en frío. Deno compila y almacena en caché en la primera solicitud.

Endpoint con Auto-SSL

Cada instancia de función obtiene su propio endpoint HTTPS a través de Caddy. Invoca desde cualquier frontend, webhook o tarea cron a través de una conexión segura.

Entorno de ejecución ligero

Cada instancia de Deno utiliza aproximadamente 256 MB de memoria. Arranque rápido, huella pequeña, ejecución eficiente.

Ejecución en sandbox

Deno se ejecuta en un sandbox seguro por defecto. Sin acceso al sistema de archivos, sin acceso a la red a menos que se otorgue explícitamente. Seguro por diseño.

Invocación HTTP

Las funciones se invocan mediante solicitudes HTTP estándar. Devuelve cualquier tipo de contenido: JSON, HTML, texto plano, binario. Úsalas como endpoints API, webhooks o microservicios.

Cómo funciona

01

Crear instancia de funciones

Haz clic en "Crear servidor de funciones" en el panel de sh0. Elige un nombre para tu entorno de ejecución serverless.

02

Escribe tu función

Escribe una función en TypeScript o JavaScript que gestione solicitudes HTTP. Exporta una función predeterminada que reciba un Request y devuelva un Response.

03

Despliega

Sube tu archivo de función a través del panel o la API. Se compila y está listo para servir en segundos.

04

Invoca

Llama a tu función a través de su endpoint HTTPS. Pasa datos como parámetros de consulta, encabezados o cuerpo de la solicitud.

Flujo de ejecución

Solicitud HTTP
Caddy (SSL)
Entorno Deno
Tu función
Respuesta

Ejecución directa. Sin arranques en frío de contenedores, sin sobrecarga de orquestación.

Cloud Functions (AWS/GCP/Azure)

  • x La facturación por invocación se acumula rápidamente
  • x Los arranques en frío degradan la experiencia del usuario
  • x APIs y herramientas específicas del proveedor
  • x Configuración compleja de IAM y redes
  • x Difícil de probar y depurar localmente
  • x Costes de transferencia de datos entre servicios

sh0 + Deno Functions

  • Precio fijo, invocaciones ilimitadas
  • Sin arranques en frío: Deno compila y almacena en caché
  • APIs Web estándar (Request/Response)
  • Endpoint HTTPS simple, sin configuración necesaria
  • Mismo entorno Deno en local y en producción
  • Acceso directo a tus bases de datos, sin costes de transferencia

Preguntas frecuentes

¿Qué lenguajes se admiten? +
TypeScript y JavaScript a través del entorno de ejecución Deno. Deno admite TypeScript de forma nativa, sin paso de compilación ni tsconfig necesario.
¿Hay arranque en frío? +
Deno compila y almacena en caché tu función en la primera solicitud. Las solicitudes siguientes se sirven desde la caché con latencia insignificante.
¿Pueden las funciones acceder a mis bases de datos? +
Sí. Tus funciones pueden conectarse a cualquier servidor de base de datos PostgreSQL, MySQL o Redis gestionado por sh0 usando cadenas de conexión estándar.
¿Cuál es el formato de solicitud/respuesta? +
Las funciones reciben un objeto Request de la API Web estándar y deben devolver un objeto Response. Es la misma API utilizada en Deno Deploy, Cloudflare Workers y otros entornos de ejecución edge.
¿Puedo usar paquetes npm? +
Sí. Deno admite la importación desde npm a través del especificador npm: (por ejemplo, import express from "npm:express"). También puedes importar desde URLs o deno.land/x.
¿En qué se diferencia de AWS Lambda? +
sh0 Functions se ejecuta en tu propio servidor: sin dependencia del proveedor, sin facturación por invocación, sin penalizaciones por arranque en frío. Tú controlas la infraestructura.

Despliega funciones, no infraestructura

Escribe TypeScript, despliega en tu servidor, invoca por HTTPS. Eso es todo.