赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 函数计算 FC 2.0
  4. 操作指南
  5. 代码开发
  6. Custom Runtime
  7. 基本原理

基本原理

  • Custom Runtime
  • 发布于 2025-04-16
  • 0 次阅读
文档编辑
文档编辑

针对Custom Runtime,您的代码文件ZIP包是一个HTTP Server程序。本文介绍冷启动Custom Runtime的基本原理和HTTP Server配置要求。

基本原理

针对Custom Runtime,您的代码文件ZIP包是一个HTTP Server程序,您只需设置函数配置中的启动命令和启动参数完成HTTP Server的启动。函数计算冷启动Custom Runtime时,会调用您设置的启动命令和启动参数启动您自定义的HTTP Server,该HTTP Server接管了来自函数计算的所有请求。HTTP Server的默认端口是9000,如果您的HTTP Server是其他端口,例如8080,您可以设置函数配置中的监听端口为8080。

例如,函数的程序包名称为function.zip,该运行时各个语言程序包内的文件形式和相应的启动命令和启动参数示例如下。

Java 8或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'
说明

customRuntimeConfig是函数的自定义启动命令配置。其中command是容器的入口命令列表,args是启动参数列表。函数计算依次把command和args列表中的内容进行拼接,形成完整的启动命令。如果未配置启动命令及启动参数,HTTP Server将默认从/code/bootstrap启动。

HTTP Server配置要求

创建HTTP Server时您需要满足以下要求:

  • Custom Runtime启动的服务一定要监听0.0.0.0:CAPort或*:CAPort端口。如果您使用127.0.0.1:CAPort端口,会导致请求超时,出现以下错误:

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

    Custom Runtime的监听端口,即函数属性监听端口默认是9000。如果Custom Runtime使用默认的监听端口,那么您实现的Custom Runtime的HTTP Server监听的端口也必须是9000。如果Custom Runtime使用的监听端口是8080,那么您实现的Custom Runtime的HTTP Server监听的端口也必须是8080。

  • Connection需要设置为Keep-Alive,Server端请求超时时间需设置在24小时(函数最大运行时间)及以上。示例如下:

    //例如Node.js使用express时。  
    
    var server = app.listen(PORT, HOST);
    server.timeout = 0; // never timeout
    server.keepAliveTimeout = 0; // keepalive, never timeout
  • HTTP Server需要在120秒内启动完毕。

相关文章

环境说明 2025-04-16 14:22

本文介绍在函数计算中使用Custom Runtime编写函数的运行环境信息。 背景信息

基本原理 2025-04-16 14:22

针对Custom Runtime,您的代码文件ZIP包是一个HTTP Server程序。本文介绍冷启动Custom Runtime的基本原理和HTTP Server配置要求。 基本原理

请求处理程序(Handler) 2025-04-16 14:22

本文介绍在函数计算中使用Custom Runtime运行时开发请求处理程序的相关概念和方法。 什么是请求处理程序

事件请求处理程序(Event Handler) 2025-04-16 14:22

本文介绍Custom Runtime中事件请求处理程序的结构特点、使用示例和常见问题。 背景信息 在Custom Runtime中,函数计算

HTTP请求处理程序(HTTP Handler) 2025-04-16 14:22

本文介绍Custom Runtime中HTTP请求处理程序的结构特点、调用说明、使用限制、使用示例和常见问题。 背景信息 函数计算会将

函数实例生命周期回调 2025-04-16 14:22

本文介绍Custom Runtime实现函数实例生命周期回调的方法。 回调方法 当您实现并配置函数实例生命周期回调后,

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号