• 关于 函数的介绍 的搜索结果

回答

Node.js 事件函数 在函数计算服务使用 Node.js 编程,需要定义一个 Node.js 函数作为入口。本文介绍了 Node.js 事件函数的结构和特点。 Node.js HTTP 函数 在函数计算服务使用 Node.js 编程,需要定义一个函数作为入口函数。 本文介绍了 Node.js HTTP 函数,为函数设置 HTTP 触发器后,可以直接处理发来的 HTTP 请求,方便搭建 Web 应用。 Node.js Initializer 函数 Initializer 函数 是实例的初始化函数,保证同一实例成功且仅成功执行一次。 本文介绍了 Node.js Initializer 函数的结构。 Node.js 运行环境 函数计算目前支持 Node.js 6.10(runtime = nodejs6)、Node.js 8.9.0(runtime = nodejs8)和 Node.js 10.15.3(runtime = nodejs10)运行环境。本文介绍了 Node.js 运行环境的以下内容:

1934890530796658 2020-03-27 16:23:19 0 浏览量 回答数 0

回答

PHP 函数入口 在函数计算中使用 PHP 编程,您需要定义一个 PHP 编写的函数作为入口。本文详细介绍了 PHP 的函数入口定义项。 PHP HTTP 函数 在函数计算服务使用 PHP 编程,需要定义一个函数作为入口函数。本文介绍了 PHP HTTP 函数,为函数设置 HTTP 触发器后,可以方便处理发来的 HTTP 请求。 PHP 运行环境 函数计算支持 PHP 7.2.7(runtime = php7.2)运行环境。本文介绍了 PHP 运行环境的以下内容: 打印日志 错误处理 PHP 内置扩展 PHP 自定义扩展 PHP 内置库 PHP 自定义库 调用外部命令

1934890530796658 2020-03-27 16:26:11 0 浏览量 回答数 0

回答

Python 事件函数 在函数计算服务中使用 Python 编程,需要定义一个函数作为入口函数,本文介绍了Python 事件函数。 函数计算目前支持以下 Python 运行环境: Python 2.7 ( runtime = python2.7 ) Python 3.6 ( runtime = python3 ) Python HTTP 函数 本文介绍了 Python HTTP 函数,为函数设置 HTTP 触发器后,可以方便处理发来的 HTTP 请求,方便搭建 Web 应用。 Python Initializer 函数 Initializer 函数是实例的初始化函数,保证同一实例成功且仅成功执行一次。本文介绍了 Python Initializer 入口的结构和特点。 函数计算目前支持以下 Python 运行环境: Python 2.7 ( runtime = python2.7 ) Python 3.6 ( runtime = python3 ) Python 运行环境 函数计算目前支持以下 Python 运行环境: Python 2.7 ( runtime = python2.7 ) Python 3.6 ( runtime = python3 ) 本文介绍了 Python 运行环境的以下内容: 打印日志 错误处理 使用内置模块 使用自定义模块 调用外部命令

1934890530796658 2020-03-27 16:24:59 0 浏览量 回答数 0

海外云虚拟主机包年25元/月起

海外独享虚拟主机全面上线,助力构建海外网站,提升公司国际形象;全球有效覆盖,超高性价比;建站入门首选,助力出口,适合跨境贸易企业。

问题

函数计算的开始使用阿里云函数计算

boxti 2019-12-01 21:47:56 1289 浏览量 回答数 0

回答

本文介绍了如何通过函数计算控制台开发简单的 Serverless Hello World 应用。 前提条件 您已注册阿里云账号并完成实名认证。 开通函数计算服务 打开阿里云函数计算首页。 在页面单击免费开通按钮。函数计算首页 在开通成功页面单击管理控制台,进入函数计算控制台。 创建函数 在函数计算页面右下方快速入口区域单击新建函数。快速入口 在创建函数页面,选择事件函数,然后单击下一步。创建函数2 创建函数有三种方式,分别是:事件函数、HTTP 函数和模板函数。本文以事件函数的方式示例。 配置函数 在配置参数页面,输入所有的必填信息。填写完毕后,单击完成。配置函数2 说明: 绑定日志:控制台会默认为您创建 LogProject 和 LogStore,将您的函数执行日志导入到 LogStore 中。 运行环境:运行环境选择您熟悉的语言,例如 Python、Java、PHP、Node.js 等。 函数入口:选择默认。控制台会创建 index.py 的文件与名为 handler 的函数,选择函数入口为 index.handler 会从 handler 函数开始执行。 函数执行内存:默认为 512 MB,最大为 3072 MB。 超时时间:默认为 60 秒,最长为 600 秒,超过设置的超时时间,函数将以执行失败结束。 实例并发度:单个实例能够并发处理的请求数。 执行函数 在代码执行页签,选择在线编辑,单击执行。代码执行2 结果验证 执行完毕后,您可以在页面下方看到执行结果和详细的日志信息。执行结果2执行完毕后,您也可以在日志查询页签查看历史执行情况。查看日志2 更多信息 关于更多触发函数执行的方式,请参见触发器管理。

1934890530796658 2020-03-27 16:03:45 0 浏览量 回答数 0

回答

本文简要介绍使用函数计算的流程。函数计算帮助您无需管理服务器(Serverless),仅专注于函数代码就能快速搭建应用。函数计算能够弹性地伸缩,您只需要按使用量付费。 开发者工具 您可以使用 fcli 或者控制台搭建服务和查询日志等。更多详情,请参阅 命令行工具fcli、命令行工具fun 和 可视化界面控制台。 使用简介 使用函数计算前,您需要在 产品详情页 开通服务。以下流程图包含了使用函数计算搭建服务的必要步骤: Flowchart 创建服务。 创建函数,编写代码,将应用部署到函数中。 以事件源触发函数。 查看执行日志。 查看服务的监控。 创建服务 服务(Service)是管理函数计算的基本资源单位。您可以在服务级别上授权、配置日志和创建函数等。 有关服务的更多信息请参阅 服务简介 。 有关服务操作的更多信息请参阅 服务的增删改查。 创建函数 函数(Function)是调度与运行的基本单位,更是一段代码的处理逻辑。您需要根据函数计算提供的函数接口形式编写代码,并将代码以函数的形式部署到函数计算。函数计算中的服务对应于软件应用架构领域中的微服务。在函数计算平台构建应用时,首先根据需求将业务逻辑抽象为微服务,然后再实现为函数计算中的服务。 一个服务下可以创建多个函数,每个函数可以设置不同的内存规格、环境变量等属性,并可以结合用户的实际业务场景来决定是否开启 Initializer 功能。这种服务或者函数层次化的抽象,在系统抽象和实现灵活度上能够取得很好的平衡。例如,实现一个微服务,调用阿里云语音合成服务,将文字转成语音,再把这段语音和一系列图片组合为视频。其中文字转语音函数是调用其他服务,可以设置很小的内存规格。而视频合成函数是计算密集型,需要更大的内存。因此您可以组合多个不同规格的函数实现微服务,优化成本。 有关函数的更多信息请参阅 函数简介。 有关函数操作的更多信息请参阅 函数的增删改查。 触发函数 函数计算支持事件触发,即当某个事件发生时触发函数的执行。例如配置 OSS 触发器后,当 OSS 对应 Bucket 中有对象新增或删除后都会触发函数的执行,方便您处理上传的对象。配置日志服务触发器,当日志服务对应 Logstore 中有新日志写入后可以触发函数的执行,方便您处理写入的日志。您需要设置触发器来设置事件触发的方式。 函数计算目前支持的触发器请参考 触发器列表 。 有关触发器的更多信息请参阅 触发器简介。 有关触发器操作的更多信息请参阅 触发器的增删改查。 如果不配置触发器,您也可以使用控制台、命令行工具 fcli 或者 SDK 等方式直接调用函数执行。 查看执行日志 查看日志是帮助您调试的一个重要环节。关于使用函数计算配置日志并查看日志,请参阅 函数日志。 查看服务监控 您可以在函数计算 控制台 上查看服务监控。 关于监控指标的更多信息,请参阅 监控指标参考手册。 关于监控数据访问的更多信息,请参阅 监控数据访问指南。

1934890530796658 2020-03-27 16:03:17 0 浏览量 回答数 0

问题

巧用函数-让你的代码更简洁

码栈 2019-12-01 21:48:32 3089 浏览量 回答数 0

问题

如何自定义ETL?

轩墨 2019-12-01 21:55:51 1872 浏览量 回答数 0

回答

Python获取帮助的3种方式(转载)我们可以很容易的通过Python解释器获取帮助。如果想知道一个对象(object)更多的信息,那么可以调用help(object)!另外还有一些有用的方法,dir(object)会显示该对象的大部分相关属性名,还有object._ doc _会显示其相对应的文档字符串。下面对其进行逐一介绍。1、 help()help函数是Python的一个内置函数。 函数原型:help([object])。 可以帮助我们了解该对象的更多信息。 2、dir()dir函数是Python的一个内置函数。 函数原型:dir([object]) 可以帮助我们获取该对象的大部分相关属性。 3、_ doc_在Python中有一个奇妙的特性,文档字符串,又称为DocStrings。 用它可以为我们的模块、类、函数等添加说明性的文字,使程序易读易懂,更重要的是可以通过Python自带的标准方法将这些描述性文字信息输出。 上面提到的自带的标准方法就是_ doc _。前后各两个下划线。 注:当不是函数、方法、模块等调用doc时,而是具体对象调用时,会显示此对象从属的类型的构造函数的文档字符串。

世事皆空 2019-12-02 01:07:24 0 浏览量 回答数 0

回答

本文介绍了工作流调度固定版本/预留资源函数和 Serverless 工作流实现的具体步骤。 简介 在实际生产场景中,任务流所调度的函数因为业务场景变化可能需要频繁变更,我们会考虑到如何避免变更带来的非预期行为,控制变更稳定性。在 Serverless 工作流任务步骤使用固定版本的函数将对以下场景产生帮助: 流程 A 编排了多个函数 f1、f2、f3,同一次任务必须执行函数的相同版本。假如流程 A 正在执行中,已执行完了函数 f1,但是此时进行了函数更新,则正在执行的流程可能会执行函数 f2、f3 的最新版本造成非预期情况发生。那么必须保证,每次流程执行函数的版本在执行时已经固定。 某个函数的快速回滚。上线后,发现流程执行失败是由于新变更引起的,那么需要快速回滚流程执行上一固定版本。 通过函数别名调用预留资源函数、降低函数冷启动时间及优化函数成本。 函数计算版本及别名可以有效支持类似上述场景的持续集成、持续发布的各种需求。下文将通过一个具体示例展示如何在流程中使用别名调用预留资源函数。预留资源函数是依赖于固定版本函数的,因此对于其他需要固定版本的场景,也可参见本示例操作。 Serverless 工作流实现 本次操作主要分为以下 3 个步骤: 创建函数预留实例 创建工作流 使用命令行/控制台执行并观察预留函数执行 步骤 1:创建函数预留实例 首先创建一个名为 fnf-demo 的 FC 服务,并在该服务下创建一个名为 provision 的 Python3 函数并发布版本、别名,生成预留实例,详细步骤可参见 FC 文档。 假设创建的函数版本为 1,别名为 online,并发布了一个预留实例。函数内容如下。 import logging def handler(event, context): logger = logging.getLogger() logger.info('Started function test') return {"success": True} 步骤 2:创建工作流 Serverless 工作流对函数计算版本及别名进行了原生支持。 在 Serverless 工作流的 Task 步骤中,默认填写的resourceArn一般为 acs:fc:{region}:{accID}:services/fnf/functions/test。按照函数执行规则,默认会选择最新的函数版本执行。您可以发布版本或别名,并在工作流 Task 步骤中填写 resourceArn 一项为 acs:fc:{region}:{accID}:services/fnf.{别名 or 版本}/functions/test来实现对特定版本函数的调用。因此,流程可以定义如下: version: v1 type: flow steps: - type: task resourceArn: acs:fc:::services/fnf-demo.online/functions/provision # 也可以使用版本号,resourceArn: acs:fc:::services/fnf-demo.1/functions/provision。 name: TestFCProvision 步骤 3:使用命令行/控制台执行并观察预留函数执行 启动工作流执行。使用预留模式前。1 使用预留模式后。2 从工作流的执行时间来看,在 task 步骤从未使用预留模式前的耗时 500 ms 缩短为预留模式后的 230 ms。

1934890530796658 2020-03-27 10:51:21 0 浏览量 回答数 0

回答

函数计算提供了许多函数模板,使用控制台创建函数的过程中,基于函数模板可以快速创建对应的函数服务,如网络爬虫、图像自动分类、访问阿里云的对象存储 OSS、表格存储 OTS 等。 关于函数计算提供的模板列表请参考文章 函数模板列表。 这里以一个网络爬虫模板创建一个网络爬虫函数为例,通过这个示例,您将了解函数模板的意义和使用方法。 使用过程 使用控制台创建一个名为 Demo 的服务,详情参见 函数计算入门示例-hello world。 在 Demo 内新建一个函数,选择函数模板为 image-crawler,之后触发器配置选择 无。 step1 在基础管理配置中填写对应的函数名和函数描述(可选)。 step2 完成之后,切换到 代码执行 菜单项,对代码进行在线编辑和改造(将代码中的 your region 和 your bucket name 替换成自己的)。 step3 单击触发事件,修改 event 参数。 step4 由于该函数涉及到 OSS 的读取和写入,因此还需要对该函数的服务进行角色授权,具体可参考 函数计算中角色和访问。 注:为了安全问题,函数是不能直接读写阿里云上的其他资源的,需要在函数服务进行授权,也就是说让函数能扮演某个角色(该角色具有访问某些资源的权限)对指定的资源进行访问,如下图所示。 role 下面展示用访问控制 RAM 的控制台创建一个对 OSS 可读可写的角色。 进入访问控制 RAM 的控制台,切换的角色菜单,单击新建角色。 ram1 选择函数计算服务,创建角色 fc-oss-rw。 37 38 进入角色详情,编辑角色详情,正确的角色详情应该如下所示。 6-3 切换到策略管理菜单,新建授权策略, 创建一个可以读写 OSS 的策略 fc-oss-rw-policy。 30 具体的策略内容如下:(策略语言详情相关,policy语言) { "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:GetObject", "oss:PutObject" ], "Resource": "*" } ] } 31 将 fc-oss-rw-policy 策略赋予角色 fc-oss-rw,这样角色 fc-oss-rw 就能读写 oss 上的资源了。 33 赋予成功后,应该有如下对应关系: 36 将角色 fc-oss-rw 作为 DEMO 服务角色。 37 执行函数。 39 总结 本例介绍了函数计算中函数模板的使用方法,您可以利用函数模板快速搭建自己的函数服务,不用再重复造轮子。

1934890530796658 2020-03-27 16:30:49 0 浏览量 回答数 0

问题

MaxCompute用户指南:常用命令:函数操作

行者武松 2019-12-01 22:01:48 1186 浏览量 回答数 0

回答

ZIP文件解压 OSS 控制台新增了对 ZIP 文件自动解压的功能,这个功能需要结合函数计算共同完成,目前只对 ZIP 后缀的文件进行处理,下面介绍配置过程和相关注意事项: 架构图 OSS 控制台配置 如何修改触发器 如何修改目标目录 如何删除触发器 扩展函数功能 大文件支持 架构图 ZIP文件 ZIP文件 OSS OSS 函数计算 函数计算 ZIP文件上传 自动触发函数(缺省支持PUT和POST请求) 解压文件 OSS控制台配置 打开 OSS 的控制台,选择某个 Bucket,在 Bucket 主页选择函数计算,如下图:001 注意:如果没开通函数计算,会提示开通函数后,才能进行下面的操作。 点击 ZIP 包解压按钮,进入 OSS 触发器编辑页面,如下图:002页面属性讲解: 服务授权:授予函数计算读写 OSS 该 Bucket 下的执行函数的权限,需要点击确认进入 RAM 进行授权后使用,每个触发器都需要重新设置一次。 触发器角色:授予 OSS 访问函数计算权限,仅需要设置一次即可。 前缀:当具备某前缀的文件可以触发函数执行,建议用户设置一定要设置,如果不设置,缺省对该 Bucket 下全部的 ZIP 文件都匹配到,有可能会触发循环执行。详细描述 目标目录:解压后的 ZIP 文件存放的目录,如果不设置,缺省会解压到当前 Bucket 下。 费用知晓: ZIP 包解压的功能是增值服务,在解压过程中,函数计算会根据解压执行时间计算费用。 如何修改触发器 当用户设置好触发器后,想进行修改,点击列表的编辑按钮,页面会跳转到函数计算触发器的修改页面进行编辑,如下图所示: 003 用户可以修改事件触发、前缀和后缀名,强烈建议不要修改后缀,因为系统根据后缀已经默认创建了系统函数,来保证业务逻辑的正常运转。 如何修改目标目录 如果用户想修改目标解压的目录,需要在函数计算的环境变量中修改,路径是,点击函数概览,点击函数属性的修改,修改环境变量的值即可,详见下图:004 如何删除触发器 如果用户想删除该功能,从 OSS 控制台点击函数触发器列表的编辑按钮,在函数计算的触发器页面,点击删除即可,删除触发器后,建议同时删除该函数,删除后的 ZIP 解压功能将无法提供运行。 扩展函数功能 通过 OSS 控制台生成的 ZIP 解压功能,是在用户的函数计算里自动生成了一个系统函数,用户可以根据自己的需求来修改函数代码,例如,用户的 ZIP 文件较小,处理的时间较小,可以选择更小规格的内存执行来节省费用,同样,如果用户的 ZIP 文件较大,例如 1GB 以上,建议把超时时间设置更长,以免出现超时现象。 另外,如果解压的文件不仅仅是 ZIP 格式,用户可以根据业务需要,扩展函数代码,目前函数计算提供的缺省函数是 Python2.7语言. 大文件支持 如果压缩文件包含太多文件,解压函数可能会超时,造成解压不完全。函数计算结合 Serverless 工作流服务提供了一个海量文件解压方案,可以在应用中心使用应用(目前该应用仅在上海,北京,杭州,深圳可用)。

1934890530796658 2020-03-27 17:25:36 0 浏览量 回答数 0

问题

MaxCompute产品简介:文档变更历史

行者武松 2019-12-01 22:01:15 1123 浏览量 回答数 0

问题

魔乐MLDN李兴华主讲Oracle视频教程

webssss 2019-12-01 20:58:21 13867 浏览量 回答数 5

问题

[实践] Android5.1.1源码 - 让某个APP以解释执行模式运行

移动安全 2019-12-01 21:23:08 5406 浏览量 回答数 0

回答

这是一个非常典型的解决方案, 对象存储 OSS 可以支持海量视频存储,采集上传的视频被转码以适配各种终端,CDN 加速终端设备播放视频的速度。此外还有一些内容安全审查需求, 比如鉴黄、鉴恐等。 而在视频点播解决方案中, 视频转码是最消耗计算力的一个子系统,虽然您可以使用云上专门的转码服务,但在很多情况下,您会选择自己搭建转码服务。比如: 您已经在虚拟机/容器平台上基于 FFmpeg 部署了一套视频处理服务,能否在此基础上让它更弹性,更高的可用性? 您的需求只是简单的转码需求,或是一些极其轻量的需求,比如获取 OSS 上视频前几帧的 GIF、获取视频或者音频的时长,自己搭建成本更低。 各种格式的音频转换或者各种采样率自定义、音频降噪等功能 您有更高级的自定义处理需求,比如视频转码完成后, 需要记录转码详情到数据库, 或者在转码完成后, 自动将热度很高的视频预热到 CDN 上, 从而缓解源站压力。 您有并发处理大量视频的需求。 自定义视频处理流程中可能会有多种操作组合, 比如转码、加水印和生成视频首页 GIF。后续为视频处理系统增加新需求,比如调整转码参数,希望新功能发布上线对在线服务无影响。 您的视频源文件存放在 NAS 或者 ECS 云盘上,自建服务可以直接读取源文件处理,而不需要将它们再迁移到 OSS 上。 如果您的视频处理系统有上述需求,或者您期望实现一个 弹性、高可用、低成本、免运维、灵活支持任意处理逻辑 的视频处理系统,那么本文则是您期待的最佳实践方案。 Serverless 自定义视频处理 在介绍具体方案之前, 先介绍两款产品: 函数计算 :阿里云函数计算是事件驱动的全托管计算服务。通过函数计算,您无需管理服务器等基础设施,只需编写代码并上传。函数计算会为您准备好计算资源,以弹性、可靠的方式运行您的代码,并提供日志查询、性能监控、报警等功能。 函数工作流:函数工作流(Function Flow,以下简称 FnF)是一个用来协调多个分布式任务执行的全托管云服务。您可以用顺序,分支,并行等方式来编排分布式任务,FnF 会按照设定好的步骤可靠地协调任务执行,跟踪每个任务的状态转换,并在必要时执行用户定义的重试逻辑,以确保工作流顺利完成。 免费开通函数计算,按量付费,函数计算有很大的免费额度。 免费开通函数工作流,按量付费,函数工作流有很大的免费额度。 函数计算可靠的执行任意逻辑, 逻辑可以是利用 FFmpeg 对视频任何处理操作, 也可以更新视频 meta 数据到数据库等。 函数工作流对相应的函数进行编排, 比如第一步的函数是转码, 第二步的函数是转码成功后,将相应 meta 数据库写入数据库等。 至此,您应该初步理解了函数计算的自定义处理能力 + 函数工作流编排能力几乎满足您任何自定义处理的需求,接下来,本文以一个具体的示例展示基于函数计算和函数工作流打造的一个弹性高可用的 Serverless 视频处理系统,并与传统方案进行性能、成本和工程效率的对比。 简单视频处理系统 假设您是对短视频进行简单的处理, 架构方案图如下: 如上图所示, 用户上传一个视频到 OSS, OSS 触发器自动触发函数执行, 函数调用 FFmpeg 进行视频转码, 并且将转码后的视频保存回 OSS。 OSS 事件触发器, 阿里云对象存储和函数计算无缝集成。您可以为各种类型的事件设置处理函数,当 OSS 系统捕获到指定类型的事件后,会自动调用函数处理。例如,您可以设置函数来处理 PutObject 事件,当您调用 OSS PutObject API 上传视频到 OSS 后,相关联的函数会自动触发来处理该视频。 简单视频处理系统示例工程地址 您可以直接基于示例工程部署您的简单视频处理系统服务, 但是当您想要处理大视频(比如 test_huge.mov ) 或者对小视频进行多种组合操作的时候, 您会发现函数很大概率会执行失败,原因是函数计算的执行环境存在一些限制, 比如最大执行时间为 10 分钟, 最大内存为 3G。 为了突破函数计算执行环境的限制,引入函数工作流 FnF 去编排函数实现一个功能强大的全功能视频处理系统。 全功能视频处理系统 如上图所示, 假设用户上传一个 mov 格式的视频到 OSS,OSS 触发器自动触发函数执行, 函数调用 FnF,并行进行提取音频文件,同时进行 avi,mp4,flv 格式的转码。 所以您可以实现如下需求: 一个视频文件可以同时被转码成各种格式以及其他各种自定义处理,比如增加水印处理或者在 after-process 更新信息到数据库等。 当有多个文件同时上传到 OSS,函数计算会自动伸缩, 并行处理多个文件。 对于每一个视频,先进行切片处理,然后并行转码切片,最后合成,通过设置合理的切片时间,可以大大加速较大视频的转码速度。 所谓的视频切片,是将视频流按指定的时间间隔,切分成一系列分片文件,并生成一个索引文件记录分片文件的信息 结合 NAS + 视频切片, 可以解决超大视频(大于 3G )的转码。 全功能视频处理系统示例工程地址

保持可爱mmm 2020-04-15 23:08:12 0 浏览量 回答数 0

回答

在很大程度上,标准C++是标准C的超集.实际上,所有C程序也是C++程序,然而,两者之间有少量区别.下面简要介绍一下最重要的区别.1、 在C++中,民,局部变量可以在一个程序块内在任何地方声明,在C中,局部变量必须在程序块的开始部分,即在所有"操作"语句之前声明,请注意,C99标准中取消了这种限制.2、在C中,按如下方式声明的函数没有对函数参数进行任何说明;int func();也就是说,如果没有在函数后面的括孤内指定任何参数,这在C中就意味着对函数参数未做任何声明,该函数可能有参数,也可能没有参数,然而,在C++中,这样的函数声明意味着该函数没有参数,也就是说,在C++中,下面这两个函数声明具有同样的作用:int func();int func(void);在C++中,参数列表中的void是任选的.许多C++程序员使用它们是为了表明函数没有任何参数的,以便于他人理解程序.但是,从技术上说,void不是必须的. 3、 在C++中,所有函数均必须被设计成原型,但这在C中只是一种选择.编程经验表明,在程序中也应该给函数采用原型设计方法.在C与C++之间还存在一个重要而又细微的差别,即字符常数在C中被自动作为整形来处理,但在C++中则不然.4、在C中,多次声明一个全局变量虽然不可取,但不算错.在C++中,多次声明同一个全局变量会引发错误.5、在C中,一个标识符可以至少31个有效的组成字符.在C++中,一个标识符的所有组成字符均是有效的.可是,从实用角度看,过长的标识符没有太大的用处,不仅不便于记忆,而且还会增加出现打字错误的可能性.6、在C中,在程序内部调用main()函数的情形不常见,但这种做法是容许的,在C++中,这种做法是不容许的. 7、在C中,无法获得register型的地址,在C++中则可以获得这种地址.8、在C中,如果类型声明语句中没有指定类型名,该类型被假定成int,这种隐式转型在C99与C++中是不允许的.。

a123456678 2019-12-02 02:16:26 0 浏览量 回答数 0

回答

在很大程度上,标准C++是标准C的超集.实际上,所有C程序也是C++程序,然而,两者之间有少量区别.下面简要介绍一下最重要的区别.1、 在C++中,民,局部变量可以在一个程序块内在任何地方声明,在C中,局部变量必须在程序块的开始部分,即在所有"操作"语句之前声明,请注意,C99标准中取消了这种限制.2、在C中,按如下方式声明的函数没有对函数参数进行任何说明;int func();也就是说,如果没有在函数后面的括孤内指定任何参数,这在C中就意味着对函数参数未做任何声明,该函数可能有参数,也可能没有参数,然而,在C++中,这样的函数声明意味着该函数没有参数,也就是说,在C++中,下面这两个函数声明具有同样的作用:int func();int func(void);在C++中,参数列表中的void是任选的.许多C++程序员使用它们是为了表明函数没有任何参数的,以便于他人理解程序.但是,从技术上说,void不是必须的. 3、 在C++中,所有函数均必须被设计成原型,但这在C中只是一种选择.编程经验表明,在程序中也应该给函数采用原型设计方法.在C与C++之间还存在一个重要而又细微的差别,即字符常数在C中被自动作为整形来处理,但在C++中则不然.4、在C中,多次声明一个全局变量虽然不可取,但不算错.在C++中,多次声明同一个全局变量会引发错误.5、在C中,一个标识符可以至少31个有效的组成字符.在C++中,一个标识符的所有组成字符均是有效的.可是,从实用角度看,过长的标识符没有太大的用处,不仅不便于记忆,而且还会增加出现打字错误的可能性.6、在C中,在程序内部调用main()函数的情形不常见,但这种做法是容许的,在C++中,这种做法是不容许的. 7、在C中,无法获得register型的地址,在C++中则可以获得这种地址.8、在C中,如果类型声明语句中没有指定类型名,该类型被假定成int,这种隐式转型在C99与C++中是不允许的.。

a123456678 2019-12-02 01:59:29 0 浏览量 回答数 0

问题

请问函数计算用什么函数获取网页所在域名

飞泉 2019-12-01 19:27:05 116 浏览量 回答数 1

问题

函数计算数据存入RDSmysql

m1keyang 2019-12-01 19:14:52 274 浏览量 回答数 1

问题

“IOT_MQTT_Nwk_Event_Handler”疑问

1145632917610191 2019-12-01 22:06:01 61 浏览量 回答数 1

问题

GenerateWP – 方便、傻瓜的 WordPress 开发工具

妙正灰 2019-12-01 20:58:41 8631 浏览量 回答数 1

回答

本文旨在介绍如何将基于 WSGI web 框架构建的工程部署到函数计算 python runtime 的具体操作过程,在介绍操作过程之前,先了解几个概念。 相关概念导读 函数计算 HTTP 触发器 HTTP 触发器是众多函数计算触发器中的一种,通过发送 HTTP 请求触发函数执行。主要适用于快速构建 Web 服务等场景。HTTP 触发器支持 HEAD、POST、PUT、GET 和 DELETE 方式触发函数。具体详情可以参考 HTTP 触发器 什么是WSGI WSGI的全称是 Web Server Gateway Interface,简单翻译就是 Web 服务器网关接口。具体来说,WSGI 是一个规范,定义了 Web 服务器如何与 Python 应用程序进行交互,使得使用 Python 写的 Web 应用程序可以和 Web 服务器对接起来。最新官方版本是在 Python 的 PEP-3333 定义的。 WSGI 如何工作 在 WSGI 中定义了两个角色,Web 服务器端称为 server 或者 gateway,应用程序端称为 application 或者 framework(因为 WSGI 的应用程序端的规范一般都是由具体的框架来实现的,下面统一使用 server 和 application 这两个术语,WSGI 相当于是 Web 服务器和 Python 应用程序之间的桥梁。server 端会先收到用户的请求,然后会根据规范的要求调用 application 端,然后 server 会将调用 application 返回的结果封装成 HTTP 响应后再发送给客户端,如下图所示: wsgi-fc 如果想了解更多关于WSGI的内容,请查阅 PEP-3333 函数计算遇见 WSGI FC python runtime 是 server,用户的函数是 application,applicaiton 可以完全自己实现,也可以基于 wsgi 的 web 框架上进行函数开发,具体可以参考 HTTP 触发器 Python-Runtime , 本文主要讲解如何运用 python wsgi 的 web 框架开发的工程部署到函数计算环境中。 Frameworks that run on WSGI 目前有很不少 Frameworks 是基于 WSGI 协议的,比如 Flask,Django 等,具体可以参考 Frameworks that run on WSGI, 本文讲解两个框架的的工程如何部署在函数计算中: Flask Django 具体详情参考: fc-python-web 部署 准备工作 免费开通 函数计算 准备域名(国内的需要备案过), 并将域名 CNAME 解析到对应的 FC EndPoint 比如将自己的域名 flask.mydomain.cn 解析到 123456.cn-hangzhou.fc.aliyuncs.com, 对应的域名、accountId 和 region 修改成自己的 安装 Fun 工具 安装版本为8.x 最新版或者10.x 、12.x nodejs 安装 funcraf $ npm install @alicloud/fun -g 安装完成后, 执行 fun config,按照提示完成 fun 的配置,参考:getting_started Clone 工程,在工程目录上,命令行输入 fun deploy 执行 $ git clone https://github.com/awesome-fc/fc-python-web.git $ cd fc-python-web 先将 template 中的 CustomDomain 修改成自己的 $ fun deploy

1934890530796658 2020-03-27 17:36:22 0 浏览量 回答数 0

回答

概述 本实践通过模拟搭建电商网站 Demo,演示如何使用阿里云日志服务接入电商系统 Web 服务器的接入日志,并在函数计算中编写 ETL 托管程序,对日志服务中数据进行处理,然后通过日志服务的仪表盘进行可视化展示。ETL 托管程序通过日志服务触发器以秒级准实时的频率被调用。 应用场景 数据加工场景:实时消费日志服务写入的日志 数据投递场景:从数据源抽取(Extract)出所需的数据,经过数据加工(Transform),最终按照预先定义好的数据仓库模型,将数据加载(Load)到数据仓库中去。 方案介绍 通过日志服务 + 函数计算 ETL,快速完成日志采集、加工、查询、分析和展示。 etl 日志服务+函数计算 ETL 的优势 一站式采集、存储、加工、分析和展示 全托管日志加工任务,按时间周期进行触发执行,自动重试 日志库资源按Shard水平扩展,满足大数据需求 基于函数计算提供数据加工、弹性资源、按需付费以及自定义代码逻辑 持续增加内置函数模板,降低主流需求下的函数开发代价 方案详情: 使用函数计算对日志服务中的数据进行 ETL 数据处理

1934890530796658 2020-03-27 17:15:25 0 浏览量 回答数 0

回答

众所周知,Python语言并不支持静态变量,比如下面这样一个应用场景void foo() {static int count = 0; count ++;}在Python中无法自然实现这个功能。换个角度来看这个问题,函数中的静态变量其实可以看做是函数的一个内部变量,而不是调用期间生成的局部变量。所以这里介绍一种使用装饰器的方法给函数添加这样的内部变量。def static_vars(**kwargs):def decorate(func): for k in kwargs: setattr(func, k, kwargs[k]) return func return decorate这是一个Python装饰器,通过@语法调用,在一个函数外层再包裹一层,这里相当于给函数添加内部变量。可以这样来使用这个装饰器,比如我们想实现上面的想法,在foo函数中添加一个计数器,有@static_vars(counter = 0)def foo():foo.counter += 1其实如果一定要通过内部变量来实现静态的效果,可以直接定义类来达到,但是装饰器将很多细节略去,而且通过**kwargs可以添加任意类型,任意数目,实现起来相对简单。作者:fromradio链接:https://www.jianshu.com/p/3ed1037b7c18來源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

xuning715 2019-12-02 01:10:20 0 浏览量 回答数 0

回答

前言 这篇文章适合所有的 C# 开发新手、老鸟以及想准备学习开发 C# 的程序猿。.NET Core是一个开源通用的开发框架,支持跨平台, 阿里云函数计算推出了 dotnetcore2.1 runtime, 使用 C# 编写 serverless 函数, 详情见官方文档:C# 函数入口. 在官方文档描述中,我们获知阿里云函数计算可以很好支持 asp.net core 的 Applicaiton: ASP.NET Core Web API ASP.NET Core Web App ASP.NET Core Web App (Model-View-Controller) 在介绍 Serverless Web 开发新模式之前,我们先了解下将 C# WebApi/WebApp Serverless 化的好处: 无需采购和管理服务器等基础设施 弹性伸缩,动态扩容 免运维, 极大降低人力成本 按需付费,财务成本低 本文以部署一个完善的 asp.net core 工程 Blogifier 为例,在函数计算环境中为例,向您讲解如何使用阿里云函数计算快速构建或移植基于 asp.net core 开发的 WebApi/WebApp ,通过本文,您将会了解以下内容: 案例概览 传统服务器架构 VS Serverless架构 Serverless架构详解 函数计算运行 Asp.net core App 原理 案例开发配置步骤 案例概览 在本教程中,我们讲解如何利用函数计算一步一步来构建 Web 的 Server 端,该案例是把一个 asp.net core 工程Blogifier 部署到函数计算,本文旨在展示函数计算做 Web Backend 能力,具体表现为以下几点: 完善的 ASP.NET Core Web 系统迁移到 FC 的成本不高 FC 打通了专有网络 VPC 功能,用户的函数可以配置访问专有网络的云资源,比如本案例中 NAS 案例体验入口: http://dotnet.mofangdegisn.cn/ https://dotnet.mofangdegisn.cn/ 传统服务器架构 VS Serverless架构 正常来说,用户开发 Server 端服务,常常面临开发效率,运维成本高,机器资源弹性伸缩等痛点,而使用 Serverless 架构可以很好的解决上述问题。下面是传统架构和 Serverless 架构的对比: image 阿里云函数计算是一个事件驱动的全托管计算服务。通过函数计算,您无需管理服务器等基础设施,只需编写代码并上传。函数计算会为您准备好计算资源,以弹性、可靠的方式运行您的代码,并提供日志查询,性能监控,报警等功能。借助于函数计算,您可以快速构建任何类型的应用和服务,无需管理和运维。 Serverless 架构详解 image.png 从上面的示例图中,整体架构十分简单明了, 用 FC 替代了 Web 服务器,但是换来的是免运维,弹性扩容,按需付费等一系列优点 函数计算运行 Asp.net Core App 原理 Asp.net Core App 运行在服务器上 image A http request to your website will go through IIS/Nginx, then Kestrel, and finally will be passed on to ASP.NET Core Asp.net Core App 运行在函数计算上 image 请求通过函数(with http trigger), 最后到达ASP.NET Core tips: 基于函数计算环境运行新建 asp.net core app 可以参考dotnet runtime HTTP 触发器的函数入口示例 在本文中,我们展示把一个现有的成熟的 asp.net core 工程低成本无缝迁移到函数计算环境。 案例开发配置步骤 准备工作 1. 创建 NAS 挂接点,配置 VPC , 具体参考函数计算nas使用示例 注:在本示例中使用 sqlite3 数据库,这种文件类型的数据库直接放置在 nas 即可,如果使用 mysql 等其他数据库, 需要创建 RDS 数据库, 配置 VPC , 具体参考通过 VPC 访问 RDS 实例 可选操作,在准备函数的 region 创建日志,用于函数的调试, 具体参考函数计算配置日志服务 创建函数 创建 Service (假设是 csharp-web), 配置准备 vpc config , nas config 和日志服务,比如案例体验的 Service 配置如下图: image 下载 asp.net core 工程,Blogifier, 用 vs 打开, debug 本地可以正常运行。 注:本地安装 dotnetcore2.1 在工程中增加入口函数,使得该工程可在函数计算执行环境运行,diff dotnet publish -c Release, 跳转到publish目录, 将相关的静态资源/可写/共享目录移动到上述配置的 NAS 的某个目录(这里假设是 www目录, 对应步骤2中的diff) dotnet publish -c Release cp -r plugins/Common/bin/Release/netcoreapp2.1/publish/* src/App/bin/Release/netcoreapp2.1/publish/ src/App/bin/Release/netcoreapp2.1/publish/ mkdir lib // 选择函数计算执行环境所需要的so, 其他的删除即可 cp runtimes/linux-x64/native/libe_sqlite3.so ./lib // 这里是传送对应的静态文件和 app.db 到 nas 中, 详情看下面的描述 rm -rf wwwroot app.db runtimes zip -r code.zip * // 最后使用这个 code.zip 创建 handler 为 App::App.FcRemoteEntrypoint::HandleRequest 函数 将 publish 目录下的 wwwroot 和 app.db 传送到 nas 的 www 目录, 可以使用 ecs 挂载 nas 传输过去, 也可以采用如下简单函数传输过去 |-- index.py |-- www 注: www目录下面有 wwwroot 和 app.db index.py代码: -- coding: utf-8 -- import logging import os def handler(event, context): os.system("mkdir -p /mnt/share/www") os.system("cp -r /code/www/* /mnt/share/www/") os.system("chmod -R 777 /mnt/share/www") print( os.system("ls -ll /mnt/share/www") ) return 'ok' 基于上述代码创一个函数 move-res-nas , 执行函数,将相关静态和共享资源移动到 NAS 的/mnt/share/www/ 目录。 注:最新版本的 Fun 工具已经支持 NAS 相关操作, 有兴趣的同学可以使用 Fun 完成 NAS, VPC 的自动生成、配置以及网站工程文件上传到 NAS 创建入口函数 blog (使用上一步骤中的 code.zip ), 给函数设置 http trigger ,类型为 anonymous , 类型都选上。给函数入口配置自定义域名(操作过程请参考:绑定自定义域名示例), 具体配置假设如下: image 注意: 绑定自定义域名之后,不用使用控制台来进行调试,就只能使用浏览器来触发函数,日志服务来进行调试。 总结 函数计算有如下优势: 无需采购和管理服务器等基础设施 专注业务逻辑的开发 提供日志查询、性能监控、报警等功能快速排查故障 以事件驱动的方式触发应用响应用户请求 毫秒级别弹性伸缩,快速实现底层扩容以应对峰值压力 按需付费。只需为实际使用的计算资源付费,适合有明显波峰波谷的用户访问场景 除了上面所列的优势,FC 可以做为 Web Backend,只需要编写一个函数实现传统 Web 服务器中的 conf 中的逻辑,就可以将一个完整的 Web 工程迁移到 FC ,从而从传统的 Web 网站运维,监控等繁琐的事务中解放出来。

1934890530796658 2020-03-27 17:30:59 0 浏览量 回答数 0

回答

在日常的开发中,往往会遇到这样的需求,需要某一个函数在一段时间之后才执行以达到某种特定的效果。此时,我们就需要某种机制,使一个函数延后执行。接下来简单介绍一下两种实现此类效果的方法: schedimport sched,time def func(a): print time.time(),"Hello Sched!",a print time.time()s = sched.scheduler(time.time,time.sleep) 2为延后时间,1为优先级,func为函数名,("test1",)为函数参数 s.enter(2,1,func,("test1",))s.enter(2,0,func,("test2",))s.run()print time.time()输出结果如下: 1519443179.41519443181.4 Hello Sched! test21519443181.4 Hello Sched! test11519443181.4从结果可以看出,函数果真延后了2s执行,并且test2比test1先执行,是因为同样是2s后执行,并且test2的优先级比test1高 timerimport threading,time def func(a): print time.time(),"Hello Timer!",a print time.time()s = threading.Timer(2,func,("test",))s.start()print time.time()输出结果如下: 1519443055.691519443055.691519443057.69 Hello Timer! test从结果可以看出,函数果真延后了2s执行。 从两种方式的输出结果可以看出,timer是异步执行的,并不卡住下面代码的执行,而sched会等到执行函数完成后才会往下执行。

元芳啊 2019-12-02 01:04:44 0 浏览量 回答数 0

回答

方法1:将fsockopen函数替换成pfsockopen函数 首先,在php.ini中去掉下面的两个分号 ;extension=php_sockets.dll;extension=php_openssl.dll然后重启一下,没有的话可以去http://pecl.php.net/下载。 因为pfsockopen的参数与fsockopen基本一致,所以只需要将@fsockopen替换成@pfsockopen就可以了。 方法2:使用stream_socket_client函数 一般fsockopen()被禁,pfsockopen也有可能被禁,所以这里介绍另一个函数stream_socket_client()。 stream_socket_client的参数与fsockopen有所不同,所以代码要修改为: 代码如下 复制代码 $this->smtp_conn = stream_socket_client("tcp://".$host.":".$port, $errno, $errstr, $tval);这样就可以了。

tenstone 2019-12-02 00:18:29 0 浏览量 回答数 0

问题

如何构建机器学习算法?

问问小秘 2020-04-15 14:07:23 0 浏览量 回答数 1
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 云栖号物联网 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站 云栖号弹性计算 阿里云云栖号 云栖号案例 云栖号直播