当前位置:主页 > 大数据 > 正文

中间件_长春企业网站制作_价格

时间:2021-05-05 13:56 来源:埃里克云 编辑:埃里克云

核心提示

本文介绍了如何在运行Apache2 Web服务器的Amazon Web Services(AWS)EC2实例上部署一个基于Flask的SAP会话AI(SAP CAI)聊天机器人。 当我最近开始在AWS上部署一个带有Flask的SAP CAI聊天机器人时...

本文介绍了如何在运行Apache2 Web服务器的Amazon Web Services(AWS)EC2实例上部署一个基于Flask的SAP会话AI(SAP CAI)聊天机器人。

当我最近开始在AWS上部署一个带有Flask的SAP CAI聊天机器人时,我认为这将是一项快速的工作。然而,我没有考虑两个重要且相互关联的事实,即sapcai需要一个安全的(即https)webhook,以便与第三方(在我的例子中是Flask应用程序)通信,EC2实例在默认情况下只有一个不安全的IP地址。在这篇文章中,我描述了我在克服这个问题的过程中的发现。本文的部分灵感来自Vishnu Thiagarajan的优秀文章《在AWS EC2实例上设置Flask和Apache》。

本文的重点不是开发一个成熟的会话聊天机器人,而是提供一个脚手架,在此基础上开发一个基于Flask的SAP CAI聊天机器人,该聊天机器人托管在一个EC2实例上。因此,chatbot有意保持基本。机器人简单地返回"收到!"不管你说什么。sapcai实现只包含一种技能,即启动与Flask应用程序通信的回退技能。在这里可以找到Flask应用程序样板代码库。sapcai机器人可以在这里找到。

本文假设读者熟悉基本的web开发概念、sapcai和AWS平台的基础知识以及Linux命令行。请注意,拟议的实施将产生小成本。如果您对此很满意,并且对复制建议的实现感兴趣,我建议您按照本文中描述的相同顺序执行这些步骤。本文中的代码片段应进行调整,以反映您自己的域名。

本文涵盖的领域包括:

设置和配置AWS服务安装和配置Apache2和WSGI域名和SSL证书部署Flask应用程序SAP CAI Chatbot配置

在本节中,我们将介绍实施所需的两种AWS特定服务和配置:EC2和Route 53。在EC2中,我们将设置一个实例来承载chatbot、一个安全组和一个弹性IP。在路由53中,我们将设置一个托管区域,该区域将保存用于安全域名配置的域名服务器(DNS)记录。

首先,让我们先设置一个安全组,然后再与我们的EC2实例关联。下面是对我有用的部分截图。选择myip作为SSH设置,选择Anywhere作为所有其他设置。请注意,下面的每个唯一类型只需指定一次。AWS在创建组时会自动复制它们(不知道为什么)。

接下来,让我们启动一个EC2实例。注意,作为此过程的一部分,您必须遵循创建密钥对的说明。远程连接到EC2实例需要.pem密钥。本教程使用的实例是一个类型为t2.micro的Ubuntu服务器16.04。将实例与上述安全组相关联。

作为旁注,根据应用程序的依赖关系,您可能需要选择"自由层"选项以外的实例。例如,如果要运行具有深度学习库的应用程序(例如PyTrink),则需要至少选择T2类型的实例来满足依赖关系的内存占用。为了能够随意停止和重启实例,而不必担心更改IP地址,我们需要利用AWS弹性IP服务。弹性IP本质上是一个静态IP,可以永久地与给定实例相关联。一个很好的视频教程设置一个弹性IP可以在这里找到。

路由53服务允许设置托管区域,以保存我们的实例的DNS记录。为了完成安全域名配置,在后续步骤中需要这样做。一篇关于设置托管区域的好文章可以在这里找到(大约在页面的一半)。请注意,在设置托管区域之前,您需要弹性IP。

好的,现在我们有了AWS特定的构建块,让我们从一些web开发开始。首先,我们安装Apache2和WSGI(对于python3)。登录到您的EC2实例并运行下面的命令。请注意,web服务器将作为安装的一部分启动。

当前上下文中感兴趣的Apache2目录是etc/Apache2/sites。此目录包含两个文件:000-default.conf和default-ssl.conf . 我们将保持两个文件不变并复制前者:

打开新文件:

修改如下:

然后,使用Ctrl+O和Ctrl+s保存并关闭文件。

如简介所述,SAP CAI需要一个安全的webhook,以便与第三方应用程序(如Flask)通信。因此,如果我们希望使用一个EC2实例来托管sapcai bot,我们需要一个安全的域,即https://example.dev.此本节描述了获取安全域名的步骤。

购买域名有很多选择。我看了这篇关于域名注册者的评论文章,选择了namesheap。(我和这些人没有关系!)。请注意,我接下来描述的步骤是特定于该平台的,如果您使用不同的注册商,这些步骤可能会有所不同。

一旦购买了(不安全的)域名,必须采取两个操作:将托管区域DNS记录添加到注册商的平台并获取SSL证书。有关DNS配置的说明可以在本文中找到。SSL过程的详细描述可以在本文中找到。总之,必须首先发出证书签名请求(CSR)。为此,请登录到您的EC2实例,并从根目录运行以下命令:

  • 域名解析_商城网站建设平台_超低折扣 域名解析_商城网站建设平台_超低折扣

    让我们假设以下场景:由于业务需求,BPC维度中的层次结构发生了显著变化(甚至在多个层次结构的情况下被删除)。因此,许多节点已过时,必须删除。没有DM包可以删除成员,并且...

  • <strong>域名交易_视频服务器的作用_优惠券</strong> 域名交易_视频服务器的作用_优惠券

    注:有关我们博客文章系列的完整概述,请访问SAP Cloud SDK概述。 有关SAP Cloud SDK新功能的概述,请参阅我们最近发布的文章。 简介 随着SAP Cloud SDK的新版本3,可以集成自定义缓存框架...

  • <strong>香港服务器_企业网站建设多少钱_多少钱</strong> 香港服务器_企业网站建设多少钱_多少钱

    此博客文章是与SAP云平台警报通知服务相关的一系列博客文章的一部分。 有关服务本身的更多详细信息,请参阅父博客文章。 让我们考虑以下情况—我们在SAP云平台上部署了一个解决...

  • <strong>金山云_美国cn2云服务器_评分榜</strong> 金山云_美国cn2云服务器_评分榜

    当我去纽约的时候,我喜欢表演,走在街上,听一些好听的音乐,吃很多好吃的东西!当然,见到名人总是很有趣的! 由于地层数据会议的召开,今年9月的行程会更好!本次会议是一...

  • <strong>负载均衡_oracle数据库管理_便宜的</strong> 负载均衡_oracle数据库管理_便宜的

    作为一个成长中的年轻人,我的老师、教练或其他成年人会毫不犹豫地使用诸如"你可以做得更好"、"我期望更多"甚至"尽力而为"这样的词汇。我(和大多数孩子一样)经常达不到期望...

  • 负载均衡_阿里云何万青_超低折扣 负载均衡_阿里云何万青_超低折扣

    您好,团队, 在生成文档的过程中,支付组件遵循一定的模式。我们做了大量的测试,生成了50多个文档,得出了以下结论: 案例1——当所有支付组件都添加到一个交易的UI中时。(...

  • <strong>腾讯云_hana服务器_限量秒杀</strong> 腾讯云_hana服务器_限量秒杀

    在这个博客中,我将向我的CAP服务添加一个UI,它使用机器学习服务:https://blogs.sap.com/2019/08/19/combine-cap-m-with-machine-learning-sdk-api-part/ 我知道许多其他博客展示了如何将UI模块添加到M...

  • <strong>网站服务器_网站建设服务商_最新活动</strong> 网站服务器_网站建设服务商_最新活动

    短链接 这篇文章是为业务流程专家在SAP S/4HANA中配置工作流而写的,同时也为您在开发自己的工作流场景(未来博客的主题)时可以做些什么做了铺垫 它将帮助您理解为什么这个概念...

  • <strong>域名交易_企业邮箱登入口_速度快</strong> 域名交易_企业邮箱登入口_速度快

    这篇博文是向SAP Analytics Cloud:Analytics Designer Hackathon提交的。 德勤数字工厂遵循"告诉我,不要告诉我"的原则,为客户提供数字化方面的实际最佳实践,以充分发挥其供应链组织的潜力...