php – 从App Engine连接到Cloud SQL比从localhost连接慢

所以我一直在尝试从我的Google App Engine连接到Google Cloud sql.一切正常,但延迟非常高.一个简单的选择查询大约需要1.3秒.但是,当我从localhost连接时,它需要更短的时间.连接的不同之处如下:

在App Engine yaml中

MysqL_DSN: /cloudsql/instanceName
MysqL_USER: user
MysqL_PASSWORD: password
MysqL_DATABASE: dbname

在App Engine PHP

$servername = getenv('MysqL_DSN');
$username = getenv('MysqL_USER');
$password = getenv('MysqL_PASSWORD');
$dbname = getenv('MysqL_DATABASE');
$connection = new MysqLi(null, $username, $password, $dbname, null, $servername);

当连接到localhost中的Cloud sql时,我使用:

$servername = "ip.address";
$username = getenv('MysqL_USER');
$password = getenv('MysqL_PASSWORD');
$dbname = getenv('MysqL_DATABASE');
$connection = new MysqLi($servername, $username, $password, $dbname);

从localhost连接时,我已经在我的Cloud sql仪表板中授权了我的计算机的IP地址,因此通过ip地址直接连接是没有问题的.我现在的问题是,当我从localhost运行我的PHP文件以连接到Cloud sql时,延迟低于从App Engine连接时的延迟.知道为什么以及如何解决这个问题?

解决方法:

这是影响asia-northeast1地区的Cloud sql实例的已知问题.它在Issue 197下的Cloud sql公共问题跟踪器上进行跟踪.请为问题加注星标以支持它获得适当的关注.

根本问题涉及扩大2016年刚刚启动的日本(亚洲 – 东北1)业务.目前似乎没有理想的解决方法.我唯一的建议是尝试在asia-northeast1之外移动Cloud sql实例.如果移动在您的情况下可行,您可以使用asia-east1(台湾)或更近的区域来减少延迟.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...