Todos los productos
Search
Centro de documentos

Function Compute:Principios

Última actualización: Sep 06, 2026

En un entorno de ejecución personalizado, su paquete de código (formato ZIP) es un programa de servidor HTTP. Function Compute inicia ese servidor HTTP durante un arranque en frío y enruta todas las solicitudes entrantes a través de él.

Cómo funciona

Durante un arranque en frío, Function Compute ejecuta el Startup Command y el Startup Parameter que configuró para iniciar su servidor HTTP. A partir de ese momento, el servidor HTTP gestiona todas las solicitudes de Function Compute.

Si no configura un comando de inicio ni parámetros, Function Compute inicia el servidor HTTP desde /code/bootstrap de forma predeterminada.

El arranque en frío se completa en dos etapas:

  1. Preparación de la plataforma: Function Compute inicializa el entorno de ejecución y se prepara para iniciar su código.

  2. Inicio del servidor HTTP: Function Compute ejecuta su comando de inicio. El servidor HTTP debe estar listo en un máximo de 120 segundos.

Configure el comando de inicio

El comando de inicio se define en customRuntimeConfig:

Campo

Descripción

command

El ejecutable que se debe ejecutar

args

Los argumentos que se pasan al ejecutable

Function Compute concatena command y args para formar el comando de inicio completo.

Suponga que su paquete de código se llama function.zip. A continuación, se muestran la estructura del paquete y el customRuntimeConfig correspondientes para cada entorno de ejecución.

Java 8 o Spring Boot

.
└── demo.jar
customRuntimeConfig:
  command:
    - java
  args:
    - '-jar'
    - 'demo.jar'

Python 3.7

.
└── server.py
customRuntimeConfig:
  command:
    - python
  args:
    - 'server.py'

Node.js 10

.
└── server.js
customRuntimeConfig:
  command:
    - node
  args:
    - 'server.js'

PHP 7.4

.
└── server.php
customRuntimeConfig:
  command:
    - php
  args:
    - 'server.php'

Requisitos del servidor HTTP

Configure su servidor HTTP para cumplir los requisitos que se indican a continuación. El incumplimiento de cualquiera de estos requisitos hace que Function Compute rechace la conexión o que esta falle.

Requisito

Detalles

Error si se incumple

Escuchar en la dirección correcta

Escuche en 0.0.0.0:CAPort o *:CAPort. No use 127.0.0.1:CAPort.

FunctionNotStarted — conexión rechazada

Usar el puerto configurado

El puerto de escucha del servidor debe coincidir con el valor de CAPort en la configuración de la función. El valor predeterminado es 9000. Para usar un puerto diferente (por ejemplo, 8080), establezca CAPort en 8080 en la configuración de la función.

FunctionNotStarted — ping con errores

Habilitar keep-alive

Habilite el modo keep-alive y establezca el tiempo de espera de la conexión en 24 horas como mínimo (el tiempo máximo de ejecución de la función).

Las conexiones se cortan durante la ejecución

Iniciar en un máximo de 120 segundos

El servidor HTTP debe estar listo para aceptar conexiones en un plazo de 120 segundos desde su inicio.

Error de inicio

Ejemplo: configuración de keep-alive (Node.js con Express)

const server = app.listen(PORT, HOST);
server.timeout = 0;          // never timeout
server.keepAliveTimeout = 0; // keep-alive, never timeout

Referencia de error: enlace a 127.0.0.1

Si el servidor HTTP escucha en 127.0.0.1 en lugar de 0.0.0.0, Function Compute no puede conectarse a él y devuelve:

{
  "ErrorCode": "FunctionNotStarted",
  "ErrorMessage": "TheCA'shttpservercannotbestarted:ContainerStartDuration:25000000000.PingCAfaileddueto:dialtcp21.0.XX.XX:9000:getsockopt:connectionrefusedLogs:2019-11-29T09:53:30.859837462ZListeningonport9000"
}