Back to top

Autore Topic: Joomla 2.5 visualizzazione a BLOG  (Letto 1534 volte)

Offline sozione

  • Nuovo arrivato
  • *
  • Post: 14
  • Sesso: Maschio
    • Mostra profilo
Joomla 2.5 visualizzazione a BLOG
« il: 19 Ott 2012, 14:10:26 »
Ho un sito internet che contiene oltre i 6000 articoli fatto con joomla 2.5 .

Giorni fà mi hanno segnalato che alcune query mysql impiegano oltre i 2-3 secondi.

Dopo 1 giorno di test e cavoli vari... sono arrivato alla conclusione che  queste query incriminate sono date dalla visualizzazione a blog.

Le query in questione sono 2 .

Praticamente la prima serve per visionare gli articoli nella pagina e vi è il limit , la seconda credo che serva per la paginazione.
Procendendo sulle varie pagine queste query vengo eseguite sempre.

Una soluzione adottata temporaneamente è la cache di sistema.

Ma vorrei sapere se anche altri hanno ricontrato questo problema e magari lo hanno risolto in qualche modo. !!!???

devo mettere fisicamente mano alla query ?

Nn mi è possibile mantenere un sito con oltre 3000visitatori univoci al giorno il quale esegua query di oltre 1 sec.

--------------------
Query

  • SELECT a.id, a.title, a.alias, a.title_alias, a.introtext, a.checked_out, a.checked_out_time, a.catid, a.created, a.created_by, a.created_by_alias,
      CASE WHEN a.modified = 0 THEN a.created ELSE a.modified END as modified, a.modified_by, uam.name as modified_by_name,
      CASE WHEN a.publish_up = 0 THEN a.created ELSE a.publish_up END as publish_up,a.publish_down, a.images, a.urls, a.attribs, a.metadata, a.metakey, a.metadesc, a.access, a.hits, a.xreference, a.featured, LENGTH(a.fulltext) AS readmore,
      CASE WHEN badcats.id is not null THEN 0 ELSE a.state END AS state,c.title AS category_title, c.path AS category_route, c.access AS category_access, c.alias AS category_alias,
      CASE WHEN a.created_by_alias > ' ' THEN a.created_by_alias ELSE ua.name END AS author,ua.email AS author_email,contact.id as contactid,parent.title as parent_title, parent.id as parent_id, parent.path as parent_route, parent.alias as parent_alias,ROUND(v.rating_sum / v.rating_count, 0) AS rating, v.rating_count as rating_count,c.published,
      CASE WHEN badcats.id is null THEN c.published ELSE 0 END AS parents_published
      FROM d14w2_content AS a
      LEFT JOIN d14w2_categories AS c
      ON c.id = a.catid
      LEFT JOIN d14w2_users AS ua
      ON ua.id = a.created_by
      LEFT JOIN d14w2_users AS uam
      ON uam.id = a.modified_by
      LEFT JOIN ( SELECT contact.user_id, MAX(contact.id) AS id, contact.language
      FROM d14w2_contact_details AS contact
      WHERE contact.published = 1
      GROUP BY contact.user_id, contact.language) AS contact
      ON contact.user_id = a.created_by
      LEFT JOIN d14w2_categories as parent
      ON parent.id = c.parent_id
      LEFT JOIN d14w2_content_rating AS v
      ON a.id = v.content_id
      LEFT
      OUTER JOIN (SELECT cat.id as id
      FROM d14w2_categories AS cat JOIN d14w2_categories AS parent
      ON cat.lft BETWEEN parent.lft
      AND parent.rgt
      WHERE parent.extension = 'com_content'
      AND parent.published != 1
      GROUP BY cat.id ) AS badcats
      ON badcats.id = c.id
      INNER JOIN d14w2_content_frontpage AS fp
      ON fp.content_id = a.id
      WHERE a.access IN (1,1)
      AND c.access IN (1,1)
      AND
      CASE WHEN badcats.id is null THEN a.state ELSE 0 END = 1
      AND (a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2012-10-19 08:47:21')
      AND (a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2012-10-19 08:47:21')
      GROUP BY a.id, a.title, a.alias, a.title_alias, a.introtext, a.checked_out, a.checked_out_time, a.catid, a.created, a.created_by, a.created_by_alias, a.created, a.modified, a.modified_by, uam.name, a.publish_up, a.attribs, a.metadata, a.metakey, a.metadesc, a.access, a.hits, a.xreference, a.featured, a.fulltext, a.state, a.publish_down, badcats.id, c.title, c.path, c.access, c.alias, uam.id, ua.name, ua.email, contact.id, parent.title, parent.id, parent.path, parent.alias, v.rating_sum, v.rating_count, c.published, c.lft, a.ordering, parent.lft, fp.ordering, c.id, a.images, a.urls
      ORDER BY c.lft,  fp.ordering,  a.created DESC
      LIMIT 0, 4
  • SELECT a.id, a.title, a.alias, a.title_alias, a.introtext, a.checked_out, a.checked_out_time, a.catid, a.created, a.created_by, a.created_by_alias,
      CASE WHEN a.modified = 0 THEN a.created ELSE a.modified END as modified, a.modified_by, uam.name as modified_by_name,
      CASE WHEN a.publish_up = 0 THEN a.created ELSE a.publish_up END as publish_up,a.publish_down, a.images, a.urls, a.attribs, a.metadata, a.metakey, a.metadesc, a.access, a.hits, a.xreference, a.featured, LENGTH(a.fulltext) AS readmore,
      CASE WHEN badcats.id is not null THEN 0 ELSE a.state END AS state,c.title AS category_title, c.path AS category_route, c.access AS category_access, c.alias AS category_alias,
      CASE WHEN a.created_by_alias > ' ' THEN a.created_by_alias ELSE ua.name END AS author,ua.email AS author_email,contact.id as contactid,parent.title as parent_title, parent.id as parent_id, parent.path as parent_route, parent.alias as parent_alias,ROUND(v.rating_sum / v.rating_count, 0) AS rating, v.rating_count as rating_count,c.published,
      CASE WHEN badcats.id is null THEN c.published ELSE 0 END AS parents_published
      FROM d14w2_content AS a
      LEFT JOIN d14w2_categories AS c
      ON c.id = a.catid
      LEFT JOIN d14w2_users AS ua
      ON ua.id = a.created_by
      LEFT JOIN d14w2_users AS uam
      ON uam.id = a.modified_by
      LEFT JOIN ( SELECT contact.user_id, MAX(contact.id) AS id, contact.language
      FROM d14w2_contact_details AS contact
      WHERE contact.published = 1
      GROUP BY contact.user_id, contact.language) AS contact
      ON contact.user_id = a.created_by
      LEFT JOIN d14w2_categories as parent
      ON parent.id = c.parent_id
      LEFT JOIN d14w2_content_rating AS v
      ON a.id = v.content_id
      LEFT
      OUTER JOIN (SELECT cat.id as id
      FROM d14w2_categories AS cat JOIN d14w2_categories AS parent
      ON cat.lft BETWEEN parent.lft
      AND parent.rgt
      WHERE parent.extension = 'com_content'
      AND parent.published != 1
      GROUP BY cat.id ) AS badcats
      ON badcats.id = c.id
      INNER JOIN d14w2_content_frontpage AS fp
      ON fp.content_id = a.id
      WHERE a.access IN (1,1)
      AND c.access IN (1,1)
      AND
      CASE WHEN badcats.id is null THEN a.state ELSE 0 END = 1
      AND (a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2012-10-19 08:47:21')
      AND (a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2012-10-19 08:47:21')
      GROUP BY a.id, a.title, a.alias, a.title_alias, a.introtext, a.checked_out, a.checked_out_time, a.catid, a.created, a.created_by, a.created_by_alias, a.created, a.modified, a.modified_by, uam.name, a.publish_up, a.attribs, a.metadata, a.metakey, a.metadesc, a.access, a.hits, a.xreference, a.featured, a.fulltext, a.state, a.publish_down, badcats.id, c.title, c.path, c.access, c.alias, uam.id, ua.name, ua.email, contact.id, parent.title, parent.id, parent.path, parent.alias, v.rating_sum, v.rating_count, c.published, c.lft, a.ordering, parent.lft, fp.ordering, c.id, a.images, a.urls
      ORDER BY c.lft,  fp.ordering,  a.created DESC
« Ultima modifica: 19 Ott 2012, 14:24:37 da sozione »

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21748
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Joomla 2.5 visualizzazione a BLOG
« Risposta #1 il: 19 Ott 2012, 16:33:02 »
per favore il codice mettilo dentro i tag code con l'apposita funzione  >:(
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

 



Web Design Bolzano Kreatif