问题标签 [google-cloud-run]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-cloud-platform - Cloud Run 内存限制
如何在自定义 GKE 集群上运行使用超过 2 GB 的 Cloud Run 容器?
由于 Cloud Run 使用 knative,我想知道是否可以使用更多分配/允许的内存限制调整部署描述符以在 GKE 上运行它。
google-cloud-platform - cloudrun(或 knative)上的简单 HelloWorld 应用程序似乎太慢了
我在 上部署了一个示例 HelloWorld 应用程序Google Cloud Run
,基本上k-native
,每次调用 API 最多需要 1.4 秒,以端到端的方式。应该是这样吗?
示例应用位于https://cloud.google.com/run/docs/quickstarts/build-and-deploy
我在本地主机上部署了相同的应用程序作为 docker 容器,端到端大约需要 22 毫秒。
我GKE
集群上的同一个应用程序端到端大约需要 150 毫秒。
我在 FaaS 方面有一点经验,我希望 API 调用会在我连续调用它们时变得更快。(如冷启动与热启动)
但无论我执行多少次命令,它都不会低于 1.4 秒。
我认为网络距离不是这里的主导因素。通过 ping 到 API 端点的往返时间只有 50 毫秒,或多或少
所以我的问题如下:
它可能是一个意外的错误吗?这是一个最终会解决的技术难题吗?或者也许没有什么问题,它只是 SLA 的
k-native
?如果
Google Cloud Run
和/或没有问题k-native
,那么我的 API 调用的主要耗时因素是什么?我很想学习这个机制。
额外细节:
- 我所在的位置:首尔/亚洲
- 我的 Cloud Run 应用的区域:us-central1
- 我正在测试的 Internet 连接类型:商业、有线
- 应用的容器镜像大小:343.3MB
- Container Registry 使用的存储桶位置:gcr.io
来自首尔/亚洲的WebPageTest(预热时间):
- 内容类型:文本/html
- 请求开始:0.44 秒
- DNS 查找:249 毫秒
- 初始连接:59 毫秒
- SSL 协商:106 毫秒
- 到第一个字节的时间:961 毫秒
- 内容下载:2 毫秒
来自芝加哥/美国的WebPageTest (预热时间):
- 内容类型:文本/html
- 请求开始:0.171 秒
- DNS 查找:41 毫秒
- 初始连接:29 毫秒
- SSL 协商:57 毫秒
- 到第一个字节的时间:61 毫秒
- 内容下载:3 毫秒
Cloud Run 产品经理 Steren 的回答
我们检测到从全球某些特定区域调用 Cloud Run 服务时延迟较高。可悲的是,首尔似乎就是其中之一。
google-cloud-platform - GKE 上的 Cloudrun - 重启问题
我正在尝试实现要在 GKE 集群上安排并由 CloudRun 执行的长时间运行的任务。我面临的问题是我的容器在中途重新运行了代码,在同一个“pod”上。这将在下面通过代码和示例输出进行解释。
用于从 cmdline 启动 CloudRun 的 POST 方法
出于测试目的在 CloudRun 上运行的代码:
输出:
睡眠1 @ 2019-05-29 14:40:47.781966
睡眠2 @ 2019-05-29 14:42:47.880512
睡眠 3 @ 2019-05-29 14:44:47.976342
睡眠 1 @ 2019-05-29 14:45:47.793551 <-- 1
睡觉4 @ 2019-05-29 14:46:48.069593
睡眠 2 @ 2019-05-29 14:47:47.892927 <-- 2
睡觉5 @ 2019-05-29 14:48:48.169817
睡眠 3 @ 2019-05-29 14:49:47.987202 <-- 3
...
通过它 5 分钟从头开始重新运行代码,同时仍然运行原始代码。
来自 queue-proxy/istio-proxy 的日志
问题出现在“2019/06/14 09:12:42 http:代理错误:上下文已取消”
angular - 如何将 http:// 重定向到 https://,如 firebase 托管
Firebase 托管已经在 firebase.json 中有 https:// 重定向。我有一个 Angular 应用程序,为了准备 SSR,我从 firebase 托管迁移到 Cloud Run。起初我不知道我是否应该与 Angular Universal 混淆或这样做,我在这里看到了一个类似的问题,但它是用 Nginx 回答的,这不是我需要的。
我试图用 server.ts 文件做一些非常愚蠢的事情,但这根本不是答案。老实说,我不知道从哪里开始。我已经搜索了谷歌的答案,包括谷歌云运行文档:
https://cloud.google.com/run/docs/authenticating/public
但我不知道从这里去哪里。
google-cloud-platform - 由于 SQL 云配置无效,云运行无法启动
我按照文档从云运行中启用 SQL Cloud。但根据文档:
您的容器实例现在可以通过自动激活和配置的 Cloud SQL 代理连接到 Cloud SQL。/cloudsql/[CONNECTION NAME]
在您的代码中,您可以使用unix 套接字连接到 Cloud SQL 实例。
最后一句是什么意思?我是否需要使用通常的连接字符串进行连接,例如:
jdbc:postgresql://localhost:5432/${DATABASE_NAME}
就我而言,这就是阻止容器启动的原因。org.postgresql.util.PSQLException:连接到 localhost:5432 被拒绝。检查主机名和端口是否正确以及 postmaster 是否接受 TCP/IP 连接。
我还使用以下命令“添加”SQL 云:
gcloud beta run deploy --image gcr.io/[PROJECT_ID/[IMAGE_NAME]:[TAG] --add-cloudsql-instances [CONNECTION_NAME]
serverless-framework - GKE CloudRun - 请求级别的资源控制
我想知道如何在基于 GKE 的 CloudRun 部署容器上增加每个单独请求可用的 CPU 内核数量。虽然可以指定--cpu
控制服务限制的选项,但我无法找到控制请求 CPU 分配的方法
我还想知道是否可以指定--timeout
大于 10 分钟?
docker - 无法将容器映像部署到 Cloud Run
尝试将映像部署到 Cloud Run 时出现以下“权限被拒绝”错误:
应用程序无法启动:无法创建初始化进程:无法加载/usr/local/bin/dumb-init:权限被拒绝
Dockerfile 包含以下说明:
镜像在本地运行成功,但由于上述错误无法部署到 Cloud run。
google-cloud-run - 请求取消不会传播到云运行容器
当发起服务取消发送到云运行服务的 HTTP 请求时,取消/关闭的连接不会传播到云运行容器内正在服务的请求。
示例代码:
在本地运行此代码,发送到http://localhost:8080然后使用 ctrl-c 取消的 curl 请求将在日志中显示为“上下文已取消”。与部署在云中运行并取消的服务相同的请求将在 1 分钟后在日志中显示为成功请求。
node.js - 带有 socket.io 的谷歌云函数
我的理解是,要使用 socket.io 建立持久的套接字连接,Node.js 服务器应该始终运行。使用 Google Cloud Functions 并没有始终运行的 Node.js 服务器,因此无法保持套接字连接处于活动状态。
使用正在运行的 Node.js 服务器的 Cloud Run 是使用 socket.io 处理多个套接字连接的最佳选择吗?
google-cloud-platform - 托管在 Google Cloud Run 中的 Node Express REST
我正在考虑设置 Google Cloud Run 来托管 Docker 容器服务。如果现有服务是侦听端口的 Node - Express REST 服务,我是否需要删除 Express,因此它不会持续运行/侦听并收费?