表格存储触发函数计算示例之 Nodejs/Php/Java/C# Runtime

简介: 创建Table Store触发器,能够实现Table Store Stream和函数计算的自动对接,从而实现OTS数据发生变更时候定制化的自动处理。本教程作为补充,通过代码示例说明在其他runtime下怎么玩转Table Store触发器。

前言

函数计算(Function Compute)是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Table Store Stream是用于获取Table Store表中增量数据的一个数据通道,通过创建Table Store触发器,能够实现Table Store Stream和函数计算的自动对接,从而实现OTS数据发生变更时候定制化的自动处理。具体可以查看表格存储触发函数计算官方教程,但是该官方教程只有python版的代码示例,本教程作为补充,通过代码示例说明在其他runtime下怎么玩转Table Store触发器。

其他 Runtime 使用的第三库

打包第三方库, 请分别参考:

本文附件中有 nodejs 和 php 完整的代码示例下载, 而 java 和 C# 分别有单独一篇文章说明具体操作过程:

代码示例

nodejs

  • 目录结构

    -rw-r--r--  1 songluo  staff   350 Nov 21 16:22 index.js
    drwxr-xr-x  9 songluo  staff   288 Nov 21 15:54 node_modules
    -rw-r--r--  1 songluo  staff  1639 Nov 21 15:54 package-lock.json
    -rw-r--r--  1 songluo  staff    49 Nov 21 15:54 package.json
  • 入口函数

    'use strict';
    var cbor = require('cbor');
    
    module.exports.handler = function(event, context, callback) {
        cbor.decodeFirst(event, function(error, obj){
            // error != null if there was an error
            // obj is the unpacked objec
            console.info(JSON.stringify(obj));
            // use obj do anything
        });
        callback(null, 'ok');
    };

php

  • 目录结构

    -rw-r--r--  1 songluo  staff   218 Nov 21 16:43 composer.json
    -rw-r--r--  1 songluo  staff  1979 Nov 21 16:43 composer.lock
    -rw-r--r--  1 songluo  staff  1197 Nov 21 17:01 index.php
    drwxr-xr-x  5 songluo  staff   160 Nov 21 16:43 vendor
  • 入口函数

    <?php
    require_once __DIR__ . "/vendor/autoload.php";
    
    function myErrorHandler($errno, $errstr, $errfile, $errline) {
        if (!(error_reporting() & $errno)) {
            return false;
        }
    
        switch ($errno) {
        case E_USER_ERROR:
            $errInfo = array(
                "errorMessage" => $errstr,
                "errorType"    => \ServerlessFC\friendly_error_type($errno),
                "stackTrace"   => array(
                    "file" => $errfile,
                    "line" => $errline,
                ),
            );
            throw new \ErrorException($errstr, 0, $errno, $errfile, $errline);
            break;
    
        default: // E_USER_WARNING | E_USER_NOTICE
            break;
        }
    
        /* Don't execute PHP internal error handler */
        return true;
    }
    
    // set to the user defined error handler
    // solve 'Non-static method CBOR\\CBOREncoder::bigint_unpack() should not be called statically'
    // https://stackoverflow.com/questions/10768576/how-can-i-solve-non-static-method-xxxxxx-should-not-be-called-statically-in
    set_error_handler("myErrorHandler");
    
    function handler($event, $context){
        //decode
        $decoded_evt = \CBOR\CBOREncoder::decode($event);
        //output
        var_export(json_encode($decoded_evt));
    }

java

请参考表格存储触发 java runtime 的函数计算处理示例教程

C

请参考表格存储触发 C# runtime的函数计算处理示例教程

相关实践学习
函数计算部署PuLID for FLUX人像写真实现智能换颜效果
只需一张图片,生成程序员专属写真!本次实验在函数计算中内置PuLID for FLUX,您可以通过函数计算+Serverless应用中心一键部署Flux模型,快速体验超写实图像生成的魅力。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
目录
相关文章
|
7月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
7月前
|
存储 小程序 Java
热门小程序源码合集:微信抖音小程序源码支持PHP/Java/uni-app完整项目实践指南
小程序已成为企业获客与开发者创业的重要载体。本文详解PHP、Java、uni-app三大技术栈在电商、工具、服务类小程序中的源码应用,提供从开发到部署的全流程指南,并分享选型避坑与商业化落地策略,助力开发者高效构建稳定可扩展项目。
|
9月前
|
JavaScript Java Go
Go、Node.js、Python、PHP、Java五种语言的直播推流RTMP协议技术实施方案和思路-优雅草卓伊凡
Go、Node.js、Python、PHP、Java五种语言的直播推流RTMP协议技术实施方案和思路-优雅草卓伊凡
680 0
|
JavaScript Java Serverless
函数计算产品使用问题之如何使用Node.js编写程序
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
消息中间件 JavaScript 中间件
函数计算产品使用问题之WebIDE编写的Node.js代码是否会自动进行打包部署
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
ly~
|
安全 Java 大数据
php跟java有什么区别
PHP 和 Java 是两种常用编程语言,各有特色。PHP 语法简洁灵活,适用于快速开发中小型网站,尤其在 Web 脚本和数据库交互中表现出色。Java 则语法严谨,强类型特性使其在企业级应用、移动开发及大数据处理中更受欢迎,具备高稳定性和安全性。通过优化,PHP 性能可提升,而 Java 在大规模应用中表现更佳。总体而言,PHP 开发效率高但维护性稍差,Java 则更注重代码质量和安全性。
ly~
659 5
|
缓存 NoSQL PHP
使用PHP-redis实现键空间通知监听key失效事件的技术与代码示例
通过上述方法,你可以有效地在PHP中使用Redis来监听键空间通知,特别是针对键失效事件。这可以帮助你更好地管理缓存策略,及时响应键的变化。
341 4
|
存储 运维 Java
函数计算产品使用问题之怎么配置定时触发器来调用Java函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
JavaScript Serverless Linux
函数计算产品使用问题之遇到Node.js环境下的请求日志没有正常输出时,该如何排查
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
Java 应用服务中间件 PHP
PHP——调用java文件中的方法
PHP——调用java文件中的方法
237 0
PHP——调用java文件中的方法

相关产品

  • 函数计算