Respostas no Fórum

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • Criador do tópico chodos

    (@chodos)

    Completando a minha postagem, ontem consegui ter um contato mais eficiente com o suporte da hospedagem.

    Fui informado que o número limite de conexões com o banco havia sido reduzido, por as querys do sistema estarem degradando o desempenho do servidor. Foram passadas algumas querys de exemplo, gostaria se possível a ajuda de vocês para esclarecer o caso.

    A primeira é:

    # Query_time: 10.657546 Lock_time: 0.000036 Rows_sent: 6 Rows_examined: 372
    SET timestamp=1412492578;
    SELECT * FROM wp_comments WHERE comment_approved = ‘1’ AND comment_post_ID = 16018 ORDER BY comment_date_gmt ASC;

    Acredito que seja a listagem de comentários de um post, não vejo um modo de otimizar uma query desse tipo, uma consulta simples que aponta para um único post.

    A segunda é:

    # Query_time: 10.714655 Lock_time: 0.000107 Rows_sent: 10 Rows_examined: 22721
    SET timestamp=1412492927;
    SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts WHERE 1=1 AND (((wp_posts.post_title LIKE ‘%uc%’) OR (wp_posts.post_content LIKE ‘%uc%’))) AND (wp_posts.post_password = ”) AND wp_posts.post_type IN (‘post’, ‘page’, ‘attachment’, ‘diario-de-bordo’, ‘ims_gallery’) AND (wp_posts.post_status = ‘publish’) OR ( ID IN ( SELECT DISTINCT post_parent FROM wp_posts WHERE 1=1 AND ((wp_posts.post_title LIKE ‘%uc%’) OR (wp_posts.post_content LIKE ‘%uc%’)
    OR (wp_posts.post_excerpt LIKE ‘%uc%’) OR (wp_posts.post_excerpt LIKE ‘%uc%’)) AND wp_posts.post_status = ‘publish’)) ORDER BY wp_posts.post_title ASC LIMIT 590, 10;

    Essa acredito que seja uma pesquisa utilizando a função de search, realmente houve uma intervenção minha nessa função, que já foi removida, inclui que fosse selecionados todos os post_types, ou seja a pesquisa fosse feita em todos os tipos de post e não somente ‘post’. Isso poderia ser uma das causas de lentidão?

    A última é:

    # Query_time: 12.615765 Lock_time: 0.000185 Rows_sent: 6 Rows_examined: 1841
    SET timestamp=1412493321;
    SELECT p.ID AS ‘id’, p.post_title AS ‘title’, p.post_date AS ‘date’, p.post_author AS ‘uid’ , p.comment_count AS ‘comment_count’ , v.pageviews AS ‘pageviews’ FROM wp_popularpostsdata v LEFT JOIN wp_posts p ON v.postid = p.ID WHERE p.post_type = ‘post’ AND p.ID IN (SELECT object_id FROM wp_term_relationships AS r JOIN wp_term_taxonomy AS x ON x.term_taxonomy_id = r.term_taxonomy_id JOIN wp_terms AS t ON t.term_id = x.term_id WHERE x.taxonomy = ‘category’ AND t.term_id IN(89)) AND p.post_password = ” AND p.post_status = ‘publish’ ORDER BY pageviews DESC LIMIT 6;

    Essa na verdade acredito que seja de um plugin, que exibe os posts mais acessados. Também não vejo um modo de otimizar isso na query.

    O que me incomoda também é que jogando essa query no phpMyAdmin elas executam em um tempo muito inferior ao que eles passaram, deveria haver alguma diferença? Alguma sugestão do que fazer? Qualquer ajuda é válida. Obrigado!

    Anderson, também estou tendo problemas de conexão com o banco de dados em um servidor compartilhado do Uol Host, caso descubra como identificar a fonte do problema por favor avise.

Visualizando 2 respostas - 1 até 2 (de um total de 2)