[Résolu] Lenteur d'accès au tableau de bord en backend

More
12 years 5 months ago - 12 years 5 months ago #20450 by FRDev66
Bonjour,

Depuis peu, j'ai un problème d'accès au tableau de bord en backend, celui-ci est extrêmement long (environ 1 à 2 mins).
Ensuite, plus aucun problème, la navigation dans les différents icônes et l'accès aux articles est normal.

Une idée ?

Par avance, merci.

FRDev66
Last edit: 12 years 5 months ago by FRDev66.

Please Log in or Create an account to join the conversation.

More
12 years 5 months ago #20462 by micker
hello
quelle version de joomla ?
de flexicontent ?
as tu cleaner cache et cache expirer ?

FLEXIcontent is Free but involves a very big effort on our part.
Like the our support? (for a bug-free FC, despite being huge extension) Like the features? Like the ongoing development and future commitment to FLEXIcontent?
-- Add your voice to the FLEXIcontent JED listing reviews. Thanks![/size]

Please Log in or Create an account to join the conversation.

More
12 years 5 months ago #20468 by ggppdk
1. This happens only one time per (backend login) session: the first time you visit the dashboard, right?

This can be because the FLEXIcontent does integrity checks once per session , the first you visit the dashboard and then caches the result it a session cookie to avoid redoing the checks. (These checks are called FLEXIcontent POST-INSTALLATION tasks)

2. This could mean that 1 (or more) of the checks that the flexicontent performs are not scalable (scalable=perform well when size grows).

I had written a joomla core hack to track down slow queries but can't find it now.

Do you have something in your site that you could think relevant? Also mention the FLEXIcontent version that you use.


-- Flexicontent is Free but involves a big effort on our part.
Like the our support? (for a bug-free FC, despite having a long list of functions) Like the features? Like the ongoing development and future commitment to FLEXIcontent?
-- Add your voice to the FLEXIcontent JED listing with a 5-star...

Please Log in or Create an account to join the conversation.

More
12 years 5 months ago #20476 by ggppdk
1. Enable DEBUG in joomla global configuration

2. Goto to the plugin system/Debug and enable output for mysql queries.

3. If you are using mysqli or mysql
goto files

libraries/joomla/database/database/mysqli.php
libraries/joomla/database/database/mysql.php
respectively and replace the function query()

3.a with this for mysqli
Code:
function query() { static $slowest_query = 0; $min_query_time_to_log = 1000; // in millisecons if (!is_object($this->_resource)) { return false; } // Take a local copy so that we don't modify the original query and cause issues later $sql = $this->_sql; if ($this->_limit > 0 || $this->_offset > 0) { $sql .= ' LIMIT ' . max($this->_offset, 0) . ', ' . max($this->_limit, 0); } if ($this->_debug) { $this->_ticker++; //$this->_log[] = $sql; $start_microtime = microtime(true); } $this->_errorNum = 0; $this->_errorMsg = ''; $this->_cursor = mysqli_query( $this->_resource, $sql ); if (!$this->_cursor) { $this->_errorNum = mysqli_errno( $this->_resource ); $this->_errorMsg = mysqli_error( $this->_resource )." SQL=$sql"; if ($this->_debug) { JError::raiseError(500, 'JDatabaseMySQL::query: '.$this->_errorNum.' - '.$this->_errorMsg ); } return false; } if ($this->_debug) { $elapsed_microseconds = round(1000000 * 10 * (microtime(true) - $start_microtime)) / 10; if ($elapsed_microseconds > $slowest_query) { $slowest_query = $elapsed_microseconds; } $msg = "Execution time (ms): "; if (($elapsed_microseconds/1000) > $min_query_time_to_log) { $this->_log[] = $sql."\n".$msg .($elapsed_microseconds/1000) ." ms slowest query until now:" .($slowest_query/1000).' ms'; } } return $this->_cursor; }

3.b with this for mysql
Code:
function query() { static $slowest_query = 0; $min_query_time_to_log = 1000; // in millisecons if (!is_resource($this->_resource)) { return false; } // Take a local copy so that we don't modify the original query and cause issues later $sql = $this->_sql; if ($this->_limit > 0 || $this->_offset > 0) { $sql .= ' LIMIT ' . max($this->_offset, 0) . ', ' . max($this->_limit, 0); } if ($this->_debug) { $this->_ticker++; //$this->_log[] = $sql; $start_microtime = microtime(true); } $this->_errorNum = 0; $this->_errorMsg = ''; $this->_cursor = mysql_query( $sql, $this->_resource ); if (!$this->_cursor) { $this->_errorNum = mysql_errno( $this->_resource ); $this->_errorMsg = mysql_error( $this->_resource )." SQL=$sql"; if ($this->_debug) { JError::raiseError(500, 'JDatabaseMySQL::query: '.$this->_errorNum.' - '.$this->_errorMsg ); } return false; } if ($this->_debug) { $elapsed_microseconds = round(1000000 * 10 * (microtime(true) - $start_microtime)) / 10; if ($elapsed_microseconds > $slowest_query) { $slowest_query = $elapsed_microseconds; } $msg = "Execution time (ms): "; if (($elapsed_microseconds/1000) > $min_query_time_to_log) { $this->_log[] = $sql."\n".$msg .($elapsed_microseconds/1000) ." ms slowest query until now:" .($slowest_query/1000).' ms'; } } return $this->_cursor; }

4. Logout from backend and relogin goto FLEXIcontent Dashboard and wait for it to finish.
The above code will print all queries that last longer than a second.

If the above code does not print any queries then the problem is that some loop is executing some query with small execution time.
Trying reducing variable
$min_query_time_to_log = 1000; // in millisecons
to a smaller value, logout and relogin and again go to FLEXIcontent Dashboard ...


-- Flexicontent is Free but involves a big effort on our part.
Like the our support? (for a bug-free FC, despite having a long list of functions) Like the features? Like the ongoing development and future commitment to FLEXIcontent?
-- Add your voice to the FLEXIcontent JED listing with a 5-star...

Please Log in or Create an account to join the conversation.

More
12 years 5 months ago #20594 by FRDev66
Bonjour,

Voici les versions :
Joomla : 1.5.24
Flexicontent : 1.5.4 stable (r558)
Cache vidé

En fait, seul l'accès au tableau de bord est lent dès que je dois naviguer dans flexicontent par la suite il n'y a aucun lenteur.

Cdt.

Please Log in or Create an account to join the conversation.

More
12 years 5 months ago #20600 by FRDev66
Bonjour,

Je viens de désactiver la recherche des Mises à jour via la configuration de Flexicontent et tout est revenu dans l'ordre.

Merci le debug Joomla

merci à vous.

Please Log in or Create an account to join the conversation.

Moderators: vistamediajoomlacornerggppdk
Time to create page: 0.645 seconds
Save
Cookies user preferences
We use cookies to ensure you to get the best experience on our website. If you decline the use of cookies, this website may not function as expected.
Accept all
Decline all
Essential
These cookies are needed to make the website work correctly. You can not disable them.
Display
Accept
Analytics
Tools used to analyze the data to measure the effectiveness of a website and to understand how it works.
Google Analytics
Accept
Decline