kubernetes - OpenFaas 在制作 lab4 教程时不断分叉查询并且永不停止
问题描述
我正在关注 OpenFaas 的Lab4。在本实验结束时,您对另一个函数进行了编程调用,但该函数开始循环并且永远不会结束:
并且执行是给我一个错误:
这是应该调用的 pod:
有人可以帮助我吗?
这是我的代码
import os
import requests
import sys
def handle(req):
"""handle a request to the function
Args:
req (str): request body
"""
#gateway_hostname = os.getenv("gateway_hostname", "127.0.0.1") # uses a default of "gateway" for when "gateway_hostname" is not set
test_sentence = req
print(test_sentence)
r = requests.get("http://127.0.0.1:8080/function/sentimentanalysis", data= test_sentence)
if r.status_code != 200:
sys.exit("Error with sentimentanalysis, expected: %d, got: %d\n" % (200, r.status_code))
result = r.json()
if result["polarity"] > 0.45:
return "That was probably positive"
else:
return "That was neutral or negative"
解决方案
tl;博士
r = requests.get("http://gateway.openfaas:8080/function/sentimentanalysis", data= test_sentence)
弗洛里亚诺,
我知道你面临的问题,因为我刚刚经历了它。但是您需要解决您的问题并在那里提及 Kubernetes。
我的意思是,你放在那里的代码在 Docker 中运行得非常好。
但是,我将假设您在这方面遇到了问题,因为您正在 Kubernetes 中进行实验室。
如果我是对的,这个问题的答案很简单:
那说
码头工人世界:
r = requests.get("http://" + os.getenv("gateway_hostname", "127.0.0.1") + ":8080/function/sentimentanalysis", data= test_sentence)
Kubernetes 世界
r = requests.get("http://pod.namespace:8080/function/sentimentanalysis", data= test_sentence)
我的情况是,我安装了 openfaas 几乎默认的 helm 图表,因此,命名空间是openfaas并且网关服务只是gateway。
r = requests.get("http://gateway.openfaas:8080/function/sentimentanalysis", data= test_sentence)
推荐阅读
- wpf - datagrid 数据表绑定和设置特定单元格的工具提示和背景颜色
- javascript - 获取未捕获的类型错误:无法读取滚动的 null 错误的属性“offsetTop”
- python - Selenium (Python) 在嵌套的多选 optgroup 中选择一个选项
- linux - 脚本不工作。我究竟做错了什么?
- python - SqlAlchemy 动态查询
- node.js - ExpressionChangedAfterItHasBeenCheckedError:表达式更改错误但代码有效
- docker - Docker compose 在 Ctrl+C 后在 Ubuntu 18.04 上挂起
- javascript - Angular2 项目中的 TSLint 错误:类型“订阅”不可分配给类型“FirebaseListObservable”
' - vector - Clojure:从每个向量向量中获取值并将其作为参数传递给另一个函数
- java - 是什么导致了 SocketException:套接字已关闭?