簡體   English   中英

我的 Google Cloud SQL 實例連接和/或查詢速度太慢

[英]My Google Cloud SQL instance connection and/or queries are too slow

在我的工作中,我們的任務是查看是否可以將我們的 App 數據庫從當前服務器遷移到Google Cloud SQL實例。 我創建了 GCP,配置了實例並導入了數據庫。

問題是我已經從我的項目(一個 CakePHP localhost 應用程序)連接到gcloud的數據庫,在運行一些查詢后,我注意到它們花費了很多時間並且視圖的呈現非常慢。 我已經升級了實例的存儲(以獲得更好的讀/寫速度)和內核/內存,但沒有結果。

以下是一些查詢及其花費的時間:

Query.                                             Time.    Affected.

GCloud
SELECT * FROM clients WHERE company_id = 3711;     50ms.    3rows.

Localhost
SELECT * FROM clients WHERE company_id = 3711;     1ms.     3rows.

還有我的其中一個視圖中的 CakePHP DebugKit 計時器響應:

GCloud    - Controller Action ---- 317.55 ms.
Localhost - Controller Action ---- 7.44   ms. 

另一個視圖使用GCloud需要 3+ 秒,我的localhost 164 ms

我用的是us-central1區,已經升級了SSD、內核、RAM,用過這樣的小查詢也無濟於事。 我認為這可能與延遲有關,但我沒有絲毫想法。

我從墨西哥查詢,具體來說是從哈利斯科州查詢。

我的實例是一個帶有 13gb ram db-n1-highmem-2 highmem db-n1-highmem-2的 2 核

在我的本地主機SELECT @@log_bin返回 0。

文件:

配置文件

我的.cnf

顯示全球狀態

顯示全局變量

顯示完整的進程列表

EXPLAIN SELECT SQL_NO_CACHE * FROM clients WHERE company_id = 3711;

1   SIMPLE  clients NULL    ref find_by_id,clients_modified,company_id_3,clients_by_creator,clients_by_owner    find_by_id  4   const   3   100.00  Using where

SHOW INDEX FROM clients;

Table   non_unique  key_name            seq_in_index    column_name         collation   cardinality sub_part    packed  null    index_type
clients 0           PRIMARY             1               id                  A           685571      NULL        NULL            BTREE       
clients 0           PRIMARY             2               user_id             A           685571      NULL        NULL            BTREE       
clients 0           PRIMARY             3               company_id          A           685571      NULL        NULL            BTREE       
clients 0           find_by_id          1               company_id          A           1159        NULL        NULL            BTREE       
clients 0           find_by_id          2               id                  A           685571      NULL        NULL            BTREE       
clients 1           clients_modified    1               company_id          A           1587        NULL        NULL            BTREE       
clients 1           clients_modified    2               modified            A           512088      NULL        NULL    YES     BTREE       
clients 1           company_id_3        1               company_id          A           1254        NULL        NULL            BTREE       
clients 1           company_id_3        2               prospectus          A           3642        NULL        NULL            BTREE       
clients 1           company_id_3        3               last_update         A           303012      NULL        NULL    YES     BTREE       
clients 1           clients_by_creator  1               company_id          A           1503        NULL        NULL            BTREE       
clients 1           clients_by_creator  2               user_id             A           3577        NULL        NULL            BTREE       
clients 1           clients_by_owner    1               company_id          A           1423        NULL        NULL            BTREE       
clients 1           clients_by_owner    2               user_assigned_id    A           3949        NULL        NULL            BTREE       
clients 1           company_id_3        3               last_update         A           303012      NULL        NULL    YES     BTREE       
clients 1           clients_by_creator  1               company_id          A           1503        NULL        NULL            BTREE       
clients 1           clients_by_creator  2               user_id             A           3577        NULL        NULL            BTREE       
clients 1           clients_by_owner    1               company_id          A           1423        NULL        NULL            BTREE       
clients 1           clients_by_owner    2               user_assigned_id    A           3949        NULL        NULL            BTREE       

Rate Per Second=RPS - 考慮您的 Google Cloud 數據庫標志的建議 - my.cnf [mysdld] 部分

innodb_lru_scan_depth=100  # from 2048 to conserve 95% CPU cycles used for function
innodb_flush_neighbors=0  # from 2 with SSD storage no need to look for neighbors
innodb_buffer_pool_size=4G  # from ~ 10G to support less than 1G of data, reduce mgmt cycles
innodb_old_blocks_time=20000  # from 1000 to reduce select_scan RPhr of 1,395

提供反饋,請在實施后+ 24 小時使用。

暫無
暫無

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

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