我一直在研究在Google Cloud Run中运行Docker容器的新选项,但是,似乎没有关于是否应该在Cloud run上运行MySQL的建议,显然,我知道它不是一个Web服务,我知道在GCP的官方Google文档中,Google可能只会告诉人们使用Cloud SQL(他们的SQL产品), 我还没有在网上找到任何关于"在云上运行mysql"的建议,所以我想我会在这里问。 冷启动的启动时间是否会降低解决方案的性能?(假设一个人使用存储桶来存储东西)
运行 SQL 数据库并不适合 Cloud Run。
首先,部署的容器和Cloud Run之间的契约是容器需要在8080端口上运行HTTP服务器。 这不是MySQL的工作方式。
其次,容器将仅限于容器映像中包含的文件系统。 当服务处理负载时,同一图像将被多次实例化。 将无法持久化写入 MySQL 的数据。 您可以将只读数据存储在该映像中,该映像仅在发布新映像时更改,但这并不是您希望使用关系数据库的真正目的。
Cloud Run非常擅长以无服务器和可扩展的方式运行HTTP/Web服务。 这些网络服务通常使用部署到 Google Cloud 的其他 API 和服务或第三方服务。 它并不是真的要提供持久、可扩展、符合 ACID 的数据库服务 - 这是一个完全不同的问题空间。