Мое соединение с экземпляром Google Cloud SQL и / или запросы слишком медленные - PullRequest
3 голосов
/ 11 июля 2019

В моей работе у нас есть задача посмотреть, сможем ли мы перенести нашу базу данных приложений с нашего текущего сервера на экземпляр Google Cloud SQL.Я создал свой GCP, настроил экземпляр и импортировал базу данных.

Проблема заключается в том, что я уже подключился из своего проекта (приложение ChostPHP 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. 

Другой просмотр занял 3+ секунды, используя GCloud и 164 ms из моего localhost.

Я использовал зону us-central1, уже обновил SSD, ядра, RAM и использовал небольшие запросы, подобные этому, но безрезультатно.Я думаю, что, возможно, это как-то связано с задержкой, но у меня нет ни малейшей идеи.

Я запрашиваю из Мексики, а точнее из Халиско.

Мой экземпляр - 2-ядерный с 13 ГБ ОЗУ db-n1-highmem-2

на моем локальном хосте SELECT @@log_bin возвращает 0.

Файлы:

php.ini

my.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       

1 Ответ

1 голос
/ 17 июля 2019

скорость в секунду = число запросов в секунду - предложения по использованию флагов облачной базы данных Google - раздел 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 часа использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...