[英]PHP (PDO) Connection to Cloud SQL on Google App Engine Not Working
[英]Slow connection from PHP PDO app engine to Cloud SQL
我正在尝试通过云SQL连接将PHP55应用程序部署到GAE(标准实例)。
我正在使用unix_socket DSN连接,如文档所示,但是与云sql实例的连接时间非常慢(有时可能需要200毫秒),并且对应用程序响应时间有严重影响(应在50毫秒内回答,但实际上有150ms的平均响应时间):
"timer (seconds)": {
"begin": 0,
"app": 0.043889999389648,
"pdoinit": 0.000070095062255859,
"pdook": 0.20270991325378,
"pdoutf8": 0.037790060043335,
"controller": 0.062999963760376,
"preparequery": 0.015130043029785,
"executequery": 0.0024099349975586,
"return": 0.0051000118255615,
"returnok": 0.00011014938354492
}
这是来自f1-micro计算引擎实例的相同性能检查:
"timer (seconds)": {
"begin": 0,
"app": 0.0002980232238769531,
"pdoinit": 0.000014066696166992188,
"pdook": 0.0019490718841552734,
"pdoutf8": 0.0009219646453857422,
"controller": 0.0030989646911621094,
"preparequery": 0.005979061126708984,
"executequery": 0.0009448528289794922,
"return": 0.0031609535217285156,
"returnok": 0.000025033950805664062
},
我的应用程序和Cloud SQL实例位于相同的位置ID。 所以这里没问题。
有另一个应用程序可以从同一区域的计算引擎访问云SQL,没有任何问题。
也许还有我在文档中没有看到的另一种连接方法? 我看到很多人遇到这样的问题,没有解决方案。 也许应用引擎不是正确的解决方案?
非常感谢你的帮助 !
正式的CloudSQL文档基本上指出,除了AppEngine文档中提到的方法(即套接字)以外,没有其他方法可以从AppEngine标准连接到CloudSQL:
从App Engine连接到Cloud SQL的常规信息
从App Engine标准或Flex环境连接到Cloud SQL时,只能使用以下链接的说明进行连接。 您不能使用IP地址(公共或私有)从App Engine应用程序连接到Cloud SQL。 从App Engine应用程序到Cloud SQL的连接是安全和加密的; 您不需要配置TLS / SSL。
如果您的应用程序是一个选项,则可以尝试计算引擎虚拟机或kubernetes引擎,以便能够使用常规tcp连接。 甚至可以使用私有IP来提高网络性能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.