簡體   English   中英

Appengine:連接錯誤過多

[英]Appengine : Too many connection error

我正在將App Engine與Cloud SQL配合使用,
最近,我在此消息的帶動下我的應用程序引擎錯誤日志

java.sql.SQLException: Too many connections at com.google.cloud.sql.jdbc.internal.E...

我在這里看到了許多相關的問題,但是沒有一個給出具體的解決方案。 我已經在我的應用程序中完成了一個簡單的servlet明智的合並,如下所示,我想實現一個比這更好的解決方案

private java.sql.Connection con = null;

@Override
public void init() throws ServletException {
    con = new DbTransaction().getConnection();
}




public void doProcess(HttpServletRequest req, HttpServletResponse resp)
                throws IOException {
// Doing my task here
}



@Override
public void destroy() {
    try {
        con.close();
    } catch (SQLException e) {
        Logger.getLogger(ReceiveFeedDetails.class.getName()).log(
                Level.SEVERE,
                "SQL Ex  con.close>> Connection Object:" + con, e);

    } catch (Exception e) {
        Logger.getLogger(ReceiveFeedDetails.class.getName()).log(
                Level.SEVERE,
                "Exception con.close>> Connection Object:" + con, e);

    }
}

這是我的獲取連接方法

    public Connection getConnection() {



    Connection con = null;
    try {
        DriverManager.registerDriver(new AppEngineDriver());
    } catch (SQLException e1) {
        Logger.getLogger(ReceiveSignupDetails.class.getName()).log(
                Level.SEVERE, null, e1);
        // e1.printStackTrace();
    }
    try {
        con = DriverManager.getConnection(Configuration.CLOUD_SQL_INSTANCE);
    } catch (SQLException e) {
        Logger.getLogger(ReceiveSignupDetails.class.getName()).log(
                Level.SEVERE, null, e);
    }
    return con;

}

我的代碼有什么問題嗎..
如何改善連接池..
請分享您的想法,如果有任何更好的連接池示例可用,
任何鏈接或示例代碼,請幫助...

我認為您需要使用調試/配置文件代碼來查找創建了多少個連接。 如您所示,我看到您想為每個servlet創建一個連接。 -您有幾個servlet? -同時運行多少個Appengine實例

連接數= servlet *正在運行的實例,它必須為<< 250

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM