我正在 Google Cloud Platform (GCP) 虚拟机上运行 Node.js 服务器。该服务器与 Twitter V2 API 交互以搜索推文。只要我坚持使用 GCP 为虚拟机提供的默认临时 IP 地址,一切都会顺利进行。
但是,一旦我切换到使用从 GCP 保留的保留的永久外部 IP 地址,我就开始从 Twitter API 服务器收到
read ECONNRESET
错误。值得注意的是,我只在大约 40% 的调用中遇到此错误,而其他 60% 的调用则顺利通过,没有任何错误。
以下是有关保留外部 IP 的更多信息:
编辑:我还发现将虚拟机从外部IP更改回临时IP仍然会产生相同的错误。要消除该错误,我必须完全删除虚拟机并使用我拥有的计算机映像创建一个新虚拟机。
为了确定 ECONNRESET 错误的原因,您可能需要检查很多点。根据现有信息,这似乎是间歇性断开连接。您可以考虑使用 vpc 流日志,以便更好地了解流量。[1]另外,您可能需要仔细检查两端的防火墙,因为这可能是一个因素。
关于网络层,标准层和高级层之间的主要区别在于,高级层基本上顾名思义就是性能,而标准层则注重成本效益。我附上了网络层的文档作为补充阅读。[2]