Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Cómputo
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Redes
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Gestión y gobernanza
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
Cloud Operations Center
Resource Governance Center
Migración
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Análisis
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
IoT
IoT Device Access
Otros
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Seguridad y cumplimiento
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Situation Awareness
Managed Threat Detection
Blockchain
Blockchain Service
Servicios multimedia
Media Processing Center
Video On Demand
Live
SparkRTC
Almacenamiento
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Storage Disaster Recovery Service
Scalable File Service
Volume Backup Service
Cloud Server Backup Service
Data Express Service
Dedicated Distributed Storage Service
Contenedores
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Bases de datos
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Aplicaciones empresariales
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Data Lake Factory
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Distribución de contenido y cómputo de borde
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Soluciones
SAP Cloud
High Performance Computing
Servicios para desarrolladores
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
Cloud Application Engine
aPaaS MacroVerse
KooPhone
KooDrive

Gestión de funciones

Actualización más reciente 2022-11-07 GMT+08:00

Información general

La función es una combinación de código, tiempo de ejecución, recursos y ajustes necesarios para lograr un propósito específico. Es la unidad mínima que puede funcionar independientemente. Los activadores pueden activar una función y programar automáticamente los recursos y entornos necesarios para lograr los resultados esperados.

Edición de código en línea

FunctionGraph le permite editar el código de función de la misma manera que administrar un proyecto. Puede crear y editar archivos y carpetas. Después de cargar un paquete ZIP de códigos, puede consultar y editar los códigos en la consola. Tabla 1 describe los menús del editor en línea.

Tabla 1 Menús del editor en línea

Uso

Descripción

File

Crea archivos y carpetas. Puede crear archivos, crear carpetas basadas en plantillas y cerrar todos los archivos.

Edit

Edita el código de función. Puede realizar la operación de deshacer, editar o comentar.

Find

Busca y reemplaza el código.

Go to

Va a una ubicación determinada en el código. Puede ir a una línea especificada, corchetes o la siguiente línea problemática.

View

Proporciona funciones comunes. Puede ver la paleta de comandos y cambiar el tema de visualización.

Test

Prueba una función en línea y muestra el resultado de la prueba, el resumen y los registros.

  • Java es un lenguaje compilado, que no admite la edición de código en línea. Si su función no utiliza ninguna dependencia de terceros, puede cargar un archivo JAR de función. Si su función utiliza dependencias de terceros, comprima las dependencias y el archivo JAR de función en un archivo ZIP y luego cargue el archivo ZIP.
  • Si edita código en Go, comprima el archivo compilado en formato ZIP y asegúrese de que el nombre del archivo de biblioteca dinámica sea coherente con el nombre del complemento del controlador. Por ejemplo, si el nombre del archivo de biblioteca dinámica es function.so, establezca el controlador en function.Handler de acuerdo con Tabla 2.
  • Cuando cree un archivo ZIP, coloque el archivo de controlador bajo el directorio root para asegurarse de que su código puede ejecutarse normalmente después de ser descomprimido.
  • Working directory: Una función puede leer archivos en el directorio de código. El directorio de trabajo de una función es el directorio de nivel superior del archivo de controlador. Para leer el archivo test.conf en el mismo nivel de directorio que el archivo manejador, utilice la ruta relativa code/test.conf o una ruta absoluta (valor de la variable de entorno RUNTIME_CODE_ROOT). Para escribir un archivo (por ejemplo, para crear o descargar un archivo), vaya al directorio /tmp o utilice la función de montaje del sistema de archivos proporcionada por FunctionGraph.

Modificación del código de función

Después de crear una función, la versión predeterminada es la última. Cada función tiene la última versión. Puede modificar una función basándose únicamente en su última versión.

  1. Inicie sesión en la consola FunctionGraph y seleccione Functions > Function List en el panel de navegación.
  2. Haga clic en un nombre de función.
  3. (Opcional) En la página de detalles de la función, seleccione la versión más reciente y haga clic en la ficha Code.
  4. En la página de ficha Code, modifique la información de código de acuerdo con Tabla 2 y Tabla 3.

    Tabla 2 Información de código

    Parámetro

    Descripción

    controlador

    • Para una función Node.js o Python, el controlador puede ser nombrado en el formato de [file name].[function name], que debe contener un punto (.). ". Ingrese myfunction.handler, que indica que el nombre del archivo es myfunction.js (myfunction.py para una función de Python y myfunction.java para una función de Java) y el nombre de la función es manejador.
    • Para una función Java, el controlador debe ser nombrado en el formato de [nombre del paquete].[nombre del archivo].[nombre de la función], por ejemplo, com.xxxxx.exp.Myfunction.myHandler.
    • Para una función Go, el controlador debe ser nombrado en el formato de [nombre del complemento].[nombre de la función], por ejemplo, function.Handler. El nombre de la función debe comenzar con una letra mayúscula y el nombre del controlador puede contener un máximo de 128 caracteres.
    • Para una función C#, el controlador debe ser nombrado en el formato de [nombre de archivo de ensamblado .NET]::[namespace y clase de la función del controlador]::[nombre de la función del controlador], por ejemplo, HelloCsharp::Example.Hello::Handler.

    Iniciador

    Puede habilitar la inicialización de funciones en la página de ficha Configuration. El inicializador debe ser nombrado del mismo modo que el controlador. Por ejemplo, para una función Node.js o Python, establezca un nombre de inicializador en el formato de [file name].[initialization function name].

    NOTA:

    Este parámetro no es necesario si la inicialización de la función está deshabilitada. Para obtener más información sobre cómo crear una función de inicialización, consulte Inicialización de una función.

    Dependencias

    Paquetes de software de terceros requeridos por la función. Puede administrar sus dependencias subiéndolas a FunctionGraph y administrándolas. Si las dependencias son demasiado grandes, súbelas a través de OBS. Para obtener más información, consulte Bibliotecas dependientes.

    NOTA:

    Excepto sus dependencias privadas, el FunctionGraph proporciona algunas dependencias comunes, que puede elegir al crear una función.

    Modos de entrada de código

    Método para introducir el código de función. Para obtener más información sobre los modos de entrada de código admitidos, consulte Tabla 3.

    Tabla 3 Modos de entrada de código

    Tiempo de ejecución

    Modos de entrada de código

    Descripción

    Node.js 6.10/Node.js 8.10/Node.js 10.16/Node.js 12.13/Node.js 14.18

    Editar código en línea

    Editar código en el cuadro de código. Para obtener más información, consulte Tabla 1.

    Subir archivo ZIP

    Haga clic en Select File y cargue un paquete de código local a FunctionGraph. El tamaño del archivo ZIP que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, cargue el archivo ZIP con un bucket OBS.

    Subir archivo desde OBS

    Pegue la URL de enlace del bucket OBS que almacena un archivo ZIP de código.

    Python 2.7/Python 3.6/Python 3.9

    Editar código en línea

    Editar código en el cuadro de código. Para obtener más información, consulte Tabla 1.

    Subir archivo ZIP

    Haga clic en Select File y cargue un paquete de código local a FunctionGraph. El tamaño del archivo ZIP que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, cargue el archivo ZIP con un bucket OBS.

    Subir archivo desde OBS

    Pegue la URL de enlace del bucket OBS que almacena un archivo ZIP de código.

    Java 8/Java 11

    Subir archivo ZIP

    Haga clic en Select File y cargue un paquete de código local a FunctionGraph. El tamaño del archivo ZIP que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, cargue el archivo ZIP con un bucket OBS.

    Subir archivo JAR

    Haga clic en Select File y cargue un archivo JAR local a FunctionGraph. El tamaño del archivo JAR que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, conviértelo en un archivo ZIP y suba el archivo ZIP a OBS.

    Subir archivo desde OBS

    Pegue la URL de enlace del bucket OBS que almacena un archivo ZIP de código.

    Go 1.8/Go 1.x

    Subir archivo ZIP

    Haga clic en Select File y cargue un paquete de código local a FunctionGraph. El tamaño del archivo ZIP que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, cargue el archivo ZIP con un bucket OBS.

    Subir archivo desde OBS

    Pegue la URL de enlace del bucket OBS que almacena un archivo ZIP de código.

    C#(.NET Core 2.0)/C#(.NET Core 2.1)/C#(.NET Core 3.1)

    Subir archivo ZIP

    Haga clic en Select File y cargue un paquete de código local a FunctionGraph. El tamaño del archivo ZIP que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, cargue el archivo ZIP con un bucket OBS.

    Subir archivo desde OBS

    Pegue la URL de enlace del bucket OBS que almacena un archivo ZIP de código.

    PHP 7.3

    Subir archivo ZIP

    Haga clic en Select File y cargue un paquete de código local a FunctionGraph. El tamaño del archivo ZIP que se va a cargar no puede exceder los 50 MB. Si supera los 50 MB, cargue el archivo ZIP con un bucket OBS.

    Subir archivo desde OBS

    Pegue la URL de enlace del bucket OBS que almacena un archivo ZIP de código.

    Si el código que se va a cargar contiene informaciones confidenciales (como contraseñas de cuenta), cífrelas para evitar fugas.

  5. Haga clic en Save.

Modificación de configuraciones de función

Puede definir variables para su función y modificar las configuraciones de la función.

  1. Inicie sesión en la consola FunctionGraph y seleccione Functions > Function List en el panel de navegación.
  2. Haga clic en un nombre de función.
  3. (Opcional) En la página de detalles de la función, seleccione la versión más reciente y haga clic en la ficha Configuration.
  4. Establezca los parámetros descritos en Tabla 4.

    Tabla 4 Parámetros de configuración

    Parámetro

    Descripción

    Description

    Descripción de la función, que no puede superar los 512 caracteres. Modifique la descripción según sea necesario.

    Agency

    Se utiliza para delegar FunctionGraph para acceder a otros servicios en la nube. Por ejemplo, se requiere una delegación cuando FunctionGraph accede a servicios en la nube como OBS o SMN.

    Seleccione una delegación de la lista desplegable. Si no hay ninguna delegación en la lista desplegable, haga clic en Create Agency para crear una en la consola de IAM.

    Para más detalles, consulte Configuración de permisos de delegación.

    Memory (MB)

    Valor: 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 o 4096. Modifique la descripción según sea necesario.

    Initialization Timeout (s)

    Duración máxima de la función puede ser inicializada. Establezca este parámetro si habilita la inicialización de funciones.

    El valor oscila entre 1s y 300s.

    Execution Timeout (s)

    Duración máxima de la función puede ser ejecutada.

    El valor oscila entre 3s y 900s.

    Max. Requests per Instance

    Número de solicitudes simultáneas admitidas por una sola instancia. Rango de valores: 1–100. Para más detalles, consulte Configuración de Single-Instance Multi-Concurrency.

    Max. Instances per Function

    Número máximo de instancias en las que se puede ejecutar una función. –1 (predeterminado): La función puede ejecutarse en cualquier número de instancias. 0: La función está deshabilitada.

    NOTA:

    Las solicitudes que excedan la capacidad de procesamiento de las instancias serán descartadas.

    Los errores causados por solicitudes excesivas no se mostrarán en los registros de funciones. Puede obtener detalles de error haciendo referencia a Configuración de la notificación de ejecución asincrónica.

    VPC Access

    Si el acceso de VPC está habilitado para la función, especifique una delegación con permisos de administración de VPC.

    Encryption Settings

    Pares clave-valor definidos para almacenar información confidencial. Las teclas pueden contener letras, dígitos y guiones bajos (_), y deben comenzar con una letra. Los valores se cifrarán para su almacenamiento y no se mostrarán en texto plano.

    Haga clic en Add now? y establecer claves y valores.

    Para eliminar un par clave-valor, haga clic en Delete junto a él.

    Environment Variables

    Pares clave-valor definidos para la función. Las teclas pueden contener letras, dígitos y guiones bajos (_), y deben comenzar con una letra.

    Haga clic en Add now? y establecer claves y valores.

    Para eliminar un par clave-valor, haga clic en Delete junto a él.

    • La duración máxima para devolver un resultado es de 90s. Si tanto el tiempo de espera establecido como la duración de ejecución real de una función superan los 90s, se visualiza un mensaje que indica que la función ha expirado el tiempo de espera. Sin embargo, el backend todavía está en ejecución. Puede ver el resultado devuelto en la página de ficha Logs.
    • Al definir variables de entorno, el FunctionGraph muestra toda la información de entrada en texto sin formato. Para garantizar la seguridad, no incluya información confidencial.

  5. Haga clic en Save.

Exportación de una función

Puede exportar las funciones que ha creado.

  1. Inicie sesión en la consola FunctionGraph y seleccione Functions > Function List en el panel de navegación.
  2. Haga clic en un nombre de función.
  3. En la página de detalles de la función mostrada, seleccione Operation > Export function en la esquina superior derecha.

    • Un usuario solo puede exportar una función a la vez.
    • El paquete de recursos de función exportado no puede exceder los 50 MB.
    • El nombre del paquete de recursos de función exportado tiene el formato nombre de función + valor MD5 de código de función.zip.
    • El paquete de recursos de función exportado no incluye información de alias.

Desactivación de una función

Las funciones deshabilitadas ya no se pueden ejecutar.

  1. Inicie sesión en la consola FunctionGraph y seleccione Functions > Function List en el panel de navegación.
  2. Haga clic en el nombre de la función que desea deshabilitar.
  3. En la página de detalles de la función mostrada, haga clic en Disable en la esquina superior derecha.
  4. En la página mostrada, haga clic en Yes. La función está desactivada.

    • Solo se pueden desactivar las funciones de la última versión.
    • Las versiones publicadas basadas en la última versión deshabilitada de una función también están deshabilitadas y nunca se pueden habilitar.
    • Después de deshabilitar una función, puede modificar su código pero no puede ejecutar la función.

Habilitación de una función

Las funciones deshabilitadas se pueden activar de nuevo según sea necesario.

  1. Inicie sesión en la consola FunctionGraph y seleccione Functions > Function List en el panel de navegación.
  2. Haga clic en el nombre de la función que desea habilitar.
  3. En la página de detalles de la función mostrada, haga clic en Enable en la esquina superior derecha.

Eliminación de una función

Puede eliminar las funciones no utilizadas para liberar recursos.

  1. Inicie sesión en la consola FunctionGraph y seleccione Functions > Function List en el panel de navegación.
  2. Haga clic en el nombre de la función que desea eliminar.
  3. Seleccione un criterio de búsqueda (nombre de función, tiempo de ejecución o nombre de aplicación) en la esquina superior derecha, introduzca una palabra clave y haga clic en para buscar la función que desea eliminar.
  4. Haga clic en Delete en la misma fila que la función.
  5. En el cuadro de diálogo Delete Function, haga clic en Yes para confirmar la eliminación.

Utilizamos cookies para mejorar nuestro sitio y tu experiencia. Al continuar navegando en nuestro sitio, tú aceptas nuestra política de cookies. Descubre más

Comentarios

Comentarios

Comentarios

0/500

Seleccionar contenido

Enviar el contenido seleccionado con los comentarios