Jump to content

Lenteur Back Office page Commandes - AdminOrders.php


Recommended Posts

Bonjour,

 

J'ai Prestashop 1.4.10

 

Je possède environ 3000 produits, 100 catégories (et sous catégories). Ma base de donnée fait environ 150Mo.

Je suis hébergé sur serveur dédié chez OVH.

 

 

Lorsque je souhaite ouvrir une commande en BO, le temps de chargement est excessivement long et me fait perdre un temps précieux !

 

Je ne sais comment détecter d'où vient la panne. S'il s'agit de l'accès à la base de donnée ? Ou autre ?

 

 

Quelqu'un saurait m'aiguiller ? 

 

 

Merci beaucoup !

 

A++

Link to comment
Share on other sites

Mon serveur dédié: "Gentoo Base System version 1.6.14"

 

Ma config MySQL (fichier /etc/mysql/my.cnf):

# /etc/mysql/my.cnf: The global mysql configuration file.
# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/files/my.cnf-4.1,v 1.3 2006/05/05 19:51:40 chtekk Exp $

# The following options will be passed to all MySQL clients
[client]
#password					= your_password
port						= 3306
socket						= /var/run/mysqld/mysqld.sock
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[php-cgi]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysql]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqladmin]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqlcheck]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqldump]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqlimport]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqlshow]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[myisamchk]
character-sets-dir=/usr/share/mysql/charsets

[myisampack]
character-sets-dir=/usr/share/mysql/charsets

# use [safe_mysqld] with mysql-3
[mysqld_safe]
err-log						= /var/log/mysql/mysql.err

# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations
[mysqld]
character-set-server		= latin1
init-connect='SET NAMES  latin1'
default-character-set		= latin1
user 						= mysql
port 						= 3306
socket 						= /var/run/mysqld/mysqld.sock
pid-file 					= /var/run/mysqld/mysqld.pid
log-error 					= /var/log/mysql/mysqld.err
basedir 					= /usr
datadir 					= /var/lib/mysql
skip-locking
key_buffer 					= 16M
max_allowed_packet 			= 1M
table_cache 				= 64
sort_buffer_size 			= 512K
net_buffer_length 			= 8K
read_buffer_size 			= 256K
read_rnd_buffer_size 		= 512K
myisam_sort_buffer_size 	= 8M
language 					= /usr/share/mysql/english
max_connections			= 200

# security:
# using "localhost" in connects uses sockets by default
#skip-networking
#bind-address				= 127.0.0.1

log-bin
server-id 					= 1

# point the following paths to different dedicated disks
tmpdir 						= /tmp/
#log-update 				= /path-to-dedicated-directory/hostname

# you need the debug USE flag enabled to use the following directives,
# if needed, uncomment them, start the server and issue 
# #tail -f /tmp/mysqld.sql /tmp/mysqld.trace
# this will show you *exactly* what's happening in your server 

#log						= /tmp/mysqld.sql
#gdb
#debug						= d:t:i:o,/tmp/mysqld.trace
#one-thread

# uncomment the following directives if you are using BDB tables
#bdb_cache_size				= 4M
#bdb_max_lock				= 10000

# the following is the InnoDB configuration
# if you wish to disable innodb instead
# uncomment just the next line
skip-innodb
#
# the rest of the innodb config follows:
# don't eat too much memory, we're trying to be safe on 64Mb boxes
# you might want to bump this up a bit on boxes with more RAM
innodb_buffer_pool_size = 16M
# this is the default, increase it if you have lots of tables
innodb_additional_mem_pool_size = 2M
#
# i'd like to use /var/lib/mysql/innodb, but that is seen as a database :-(
# and upstream wants things to be under /var/lib/mysql/, so that's the route
# we have to take for the moment
#innodb_data_home_dir		= /var/lib/mysql/
#innodb_log_arch_dir		= /var/lib/mysql/
#innodb_log_group_home_dir	= /var/lib/mysql/
# you may wish to change this size to be more suitable for your system
# the max is there to avoid run-away growth on your machine
innodb_data_file_path = ibdata1:10M:autoextend:max:128M
# we keep this at around 25% of of innodb_buffer_pool_size
# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size)
innodb_log_file_size = 5M
# this is the default, increase it if you have very large transactions going on
innodb_log_buffer_size = 8M
# this is the default and won't hurt you
# you shouldn't need to tweak it
set-variable = innodb_log_files_in_group=2
# see the innodb config docs, the other options are not always safe
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet 			= 16M

[mysql]
# uncomment the next directive if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer 					= 20M
sort_buffer_size 			= 20M
read_buffer 				= 2M
write_buffer 				= 2M

[myisamchk]
key_buffer 					= 20M
sort_buffer_size 			= 20M
read_buffer 				= 2M
write_buffer 				= 2M

[mysqlhotcopy]
interactive-timeout

Merci de ton aide !

Link to comment
Share on other sites

Ah oui c'est probablement le cas, j'ai repris sa gestion il y a 1an et demi environ.. 

 

Mais bon, optimisé ou pas, les différents sites web qui tournent dessus fonctionnent tous très bien.

 

Mon problème ne concerne qu'un seul des sites (le plus gros en taille et en importance), et uniquement le chargement des commandes ! Les autres pages se chargeant tout à fait normalement..

 

Connais-tu un moyen de monitorer le chargement de ces pages pour en détecter les lenteurs ?

 

Merci à toi 

++

Link to comment
Share on other sites

3000 produits, 4 ans d'historiques de commandes, de sous produits.... avec des tables innodb ça commence à faire travailler une bdd.

 

 

1) Tu connais la config exact du kimsufi ovh ? au moins ram / proc pour l'optim mysql

Tu peux peut être avoir 2 ou 3 plus performant juste en reprenant un autre chez ovh ou si tu as le budget prendre un vrai serveur dédié x64.

 

 

2) Active slow query log avec 4s sur et regarde si y a pas des index manquant sur l'affichage des commandes

Ou comparre les index sur les tables prestashop en comparaison avec une install fresh

 

 

3) Tu peux optimiser mysql en jouant sur

query_cache_size

thread_cache_size

innodb_buffer_pool_size

innodb_log_buffer_size

tmp_table_size

 

/!\ Suivant ce que tu as sur ton serveur dédié.

Link to comment
Share on other sites

3000 produits, 4 ans d'historiques de commandes, de sous produits.... avec des tables innodb ça commence à faire travailler une bdd.

 

 

1) Tu connais la config exact du kimsufi ovh ? au moins ram / proc pour l'optim mysql

Tu peux peut être avoir 2 ou 3 plus performant juste en reprenant un autre chez ovh ou si tu as le budget prendre un vrai serveur dédié x64.

 

CPU Intel® Core i3-2130 CPU @ 3.40GHz

Coeurs : 4

Cache : 3072KB

RAM 4x 4096Mo
Disques 2 x 1000 Go
Version Real Time Monitoring
0.9.4
Kernel version
3.2.13-grsec-xxxx-grs-ipv6-64

 

2) Active slow query log avec 4s sur et regarde si y a pas des index manquant sur l'affichage des commandes

Ou comparre les index sur les tables prestashop en comparaison avec une install fresh

 

Quel est ce "slow query log"..?

 

 

3) Tu peux optimiser mysql en jouant sur

query_cache_size

thread_cache_size

innodb_buffer_pool_size

innodb_log_buffer_size

tmp_table_size

 

Je ne ferais qu'écouter les conseils de connaisseurs avant de modifier ces options.. Je n'ai pas encore de réelles compétences en la matière..

 

/!\ Suivant ce que tu as sur ton serveur dédié.

 

Merci pour ton aide 

 

++

Edited by tristars (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...