小编Dav*_*eot的帖子

Google Cloud SQL性能不佳

我很难用Google Cloud SQL获得不错的表现,我正在做一些非常基本的CRUD操作,例如:

public BaseUser getUser(String token) throws SQLException{
    Connection conn = DriverManager.getConnection(JDBC_CON_STRING);
    PreparedStatement ps = conn.prepareStatement(GET_USER_BY_TOKEN_QUERY);
    ps.setString(1, token);
    ResultSet rs = ps.executeQuery();
    List<BaseUser> users = inflateUser(rs);
    if(users.size() == 0){
        return null;
    }
    if(users.size() > 1){
        logger.info("DATABASE MAY BE CORRUPTED, THERE'S MORE THAN 1 USER WITH THE SAME TOKEN");
    }
    ps.close();
    rs.close();
    conn.close();
    return users.get(0);
}
Run Code Online (Sandbox Code Playgroud)

并且每个查询的平均响应时间为450毫秒.+ = 150表示openConnection,150表示操作,150表示关闭.见img.下面.

在此输入图像描述

我已经阅读了谷歌文档,论坛和多个博客,但仍然无法看到我做错了什么(我一定做错了,450毫秒/查询很多...)

更新1:我肯定是谷歌云SQL问题,我安装了自己的本地MySQL服务器,我有更好的性能(80毫秒的"插入或更新",然后选择最终提交.),希望我能得到一些来自Google开发者的提示.团队,我真的很喜欢整个Google云平台,但根本不可能使用这种延迟级别=(

更新2:2014/05/06延迟问题与D0或D16相同.由于延迟,尝试插入10000行(3 varchar和~100bytes blob)需要来自Google ComputeEngine VM的32行.持续时间与10000个插入和单个批次插入相同.如果我使用64个线程,则持续时间减少到3秒.我用本机mysql jdbc驱动程序测试过.

有什么建议?谢谢!

java google-app-engine jdbc google-cloud-sql

6
推荐指数
1
解决办法
1313
查看次数

标签 统计

google-app-engine ×1

google-cloud-sql ×1

java ×1

jdbc ×1