CmsFan Posted April 30, 2014 Share Posted April 30, 2014 Buenas tardes, Estoy acabando de integrar una tienda Prestashop con 80.000 productos ya creados dentro de 8 categorías, todo con los connectores de WASATO, para integrar de forma automática los XML de mis proveedores. El problema, es que de repente la tienda va muy lenta y he contactado con mi proveedor de Hosting. Estoy en un hosting Cloud server. El proveedor del hosting me comenta que el problema es que se sobrecarga el servidor por las peticiones SQL que se efectuan de golpe. Sabéis porque puede suceder esto y como arreglarlo? (es mi primera tienda Presta y estoy metido hasta el final...). Muchas gracias! Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 1, 2014 Share Posted May 1, 2014 Estaría bien que tu servidor te dijese la consulta SQL que "sobrecarga" el servido. Es posible que sea en los listados de categorías, si hay muchas combinaciones al listar los productos hace una join con los atributos que puede dejar KO a la base de datos Link to comment Share on other sites More sharing options...
CmsFan Posted May 1, 2014 Author Share Posted May 1, 2014 Gracias Enrique! Pues aun no me han respondido, pero del servidor cada día me van llegando automáticamente avisos. Creo que lo de la memoria Mysql está aquí. Sabes ver qué proceso está dando el error? El parámetro de estado del servidor "Servicios > Uso de memoria de Apache" cambió su estado de "green" a "yellow". top - 15:39:37 up 2 days, 21:19, 0 users, load average: 0.01, 0.03, 0.00 Tasks: 127 total, 1 running, 126 sleeping, 0 stopped, 0 zombie Cpu(s): 4.1%us, 0.7%sy, 0.2%ni, 88.4%id, 6.5%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1914488k total, 1644408k used, 270080k free, 250884k buffers Swap: 1048568k total, 130112k used, 918456k free, 485552k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 42593 root 20 0 15024 1180 880 R 2.0 0.1 0:00.01 top 1 root 20 0 19356 1068 892 S 0.0 0.1 0:01.51 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:01.11 ksoftirqd/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.49 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 1:40.88 events/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm 13 root 20 0 0 0 0 S 0.0 0.0 0:01.29 sync_supers 14 root 20 0 0 0 0 S 0.0 0.0 0:01.12 bdi-default 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0 16 root 20 0 0 0 0 S 0.0 0.0 0:29.72 kblockd/0 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid 18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify 19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug 20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_aux 21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_sff/0 22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd 23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd 24 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kseriod 25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 md/0 26 root 20 0 0 0 0 S 0.0 0.0 0:00.00 md_misc/0 27 root 20 0 0 0 0 S 0.0 0.0 0:00.00 linkwatch 28 root 20 0 0 0 0 S 0.0 0.0 0:00.08 khungtaskd 29 root 20 0 0 0 0 S 0.0 0.0 0:28.23 kswapd0 30 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd 31 root 39 19 0 0 0 S 0.0 0.0 0:10.49 khugepaged 32 root 20 0 0 0 0 S 0.0 0.0 0:00.00 aio/0 33 root 20 0 0 0 0 S 0.0 0.0 0:00.00 crypto/0 38 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthrotld/0 39 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pciehpd 41 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kpsmoused 42 root 20 0 0 0 0 S 0.0 0.0 0:00.00 usbhid_resumer 72 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kstriped 129 root 20 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_0 130 root 20 0 0 0 0 S 0.0 0.0 0:00.01 scsi_eh_1 136 root 20 0 0 0 0 S 0.0 0.0 0:08.09 mpt_poll_0 137 root 20 0 0 0 0 S 0.0 0.0 0:00.00 mpt/0 138 root 20 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_2 263 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdmflush 265 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdmflush 289 root 20 0 0 0 0 S 0.0 0.0 0:47.47 jbd2/dm-0-8 290 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ext4-dio-unwrit 329 root 20 0 0 0 0 S 0.0 0.0 0:28.09 flush-253:0 360 root 16 -4 11136 360 256 S 0.0 0.0 0:00.60 udevd 547 root 20 0 0 0 0 S 0.0 0.0 0:05.88 vmmemctl 621 root 18 -2 11132 396 240 S 0.0 0.0 0:00.00 udevd 646 root 20 0 0 0 0 S 0.0 0.0 0:00.00 jbd2/sda1-8 647 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ext4-dio-unwrit 648 root 0 -20 0 0 0 S 0.0 0.0 0:46.94 loop0 651 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 loop1 715 root 20 0 0 0 0 S 0.0 0.0 0:00.47 kauditd 718 root 20 0 275m 2244 1760 S 0.0 0.1 0:30.80 monit 1127 root 20 0 105m 680 676 S 0.0 0.0 0:00.00 mysqld_safe 1332 mysql 20 0 985m 350m 4148 S 0.0 18.8 128:21.79 mysqld 1372 root 20 0 4068 456 396 S 0.0 0.0 0:00.09 courierlogger 1373 root 20 0 4068 460 396 S 0.0 0.0 0:03.39 courierlogger 1375 root 20 0 11904 648 596 S 0.0 0.0 0:00.15 couriertcpd 1376 root 20 0 11904 648 596 S 0.0 0.0 0:06.30 couriertcpd 1377 root 20 0 4068 460 396 S 0.0 0.0 0:00.07 courierlogger 1378 root 20 0 4068 460 396 S 0.0 0.0 0:00.05 courierlogger 1379 root 20 0 11904 648 596 S 0.0 0.0 0:00.17 couriertcpd 1380 root 20 0 11904 652 596 S 0.0 0.0 0:00.19 couriertcpd 1383 root 20 0 4068 400 396 S 0.0 0.0 0:00.00 courierlogger 1384 root 20 0 30296 680 644 S 0.0 0.0 0:00.03 authdaemond 1386 qmails 20 0 4120 568 488 S 0.0 0.0 0:00.39 qmail-send 1388 qmaill 20 0 4072 564 500 S 0.0 0.0 0:00.03 splogger 1389 root 20 0 4112 432 352 S 0.0 0.0 0:00.04 qmail-lspawn 1390 qmailr 20 0 4112 432 360 S 0.0 0.0 0:00.00 qmail-rspawn 1391 qmailq 20 0 4068 412 364 S 0.0 0.0 0:00.03 qmail-clean 1392 root 20 0 32400 1432 1216 S 0.0 0.1 0:02.95 authdaemond 1393 root 20 0 32400 1380 1168 S 0.0 0.1 0:02.78 authdaemond 1394 root 20 0 32400 1432 1216 S 0.0 0.1 0:02.96 authdaemond 1395 root 20 0 32400 1432 1216 S 0.0 0.1 0:02.98 authdaemond 1396 root 20 0 32400 1380 1168 S 0.0 0.1 0:03.03 authdaemond 1409 named 20 0 233m 8156 1428 S 0.0 0.4 0:01.09 named 1508 root 16 -4 93176 700 544 S 0.0 0.0 0:03.45 auditd 1539 root 20 0 243m 2636 784 S 0.0 0.1 0:10.66 rsyslogd 1677 dbus 20 0 21404 348 344 S 0.0 0.0 0:00.00 dbus-daemon 1723 root 20 0 66608 560 460 S 0.0 0.0 0:03.11 sshd 1731 root 20 0 22180 760 664 S 0.0 0.0 0:00.43 xinetd 1740 root 20 0 46616 744 300 S 0.0 0.0 0:00.00 nginx 1743 nginx 20 0 47424 3188 1656 S 0.0 0.2 0:40.78 nginx 1893 root 20 0 346m 27m 11m S 0.0 1.4 0:11.09 httpd 1963 qpidd 20 0 229m 1708 1332 S 0.0 0.1 0:18.92 qpidd 2009 root 20 0 341m 9.8m 2996 S 0.0 0.5 0:12.07 sw-engine 2022 root 20 0 528m 2328 864 S 0.0 0.1 1:13.93 sw-collectd 2038 root 20 0 114m 676 584 S 0.0 0.0 0:02.45 crond 2060 mailman 20 0 199m 1184 660 S 0.0 0.1 0:00.02 mailmanctl 2061 mailman 20 0 201m 3880 1428 S 0.0 0.2 0:26.89 python 2062 mailman 20 0 201m 3876 1428 S 0.0 0.2 0:26.16 python 2063 mailman 20 0 201m 3892 1428 S 0.0 0.2 0:27.60 python 2064 mailman 20 0 201m 3856 1428 S 0.0 0.2 0:29.16 python 2065 mailman 20 0 201m 3936 1428 S 0.0 0.2 0:27.64 python 2066 mailman 20 0 201m 1980 1428 S 0.0 0.1 0:26.43 python 2067 mailman 20 0 201m 1932 1428 S 0.0 0.1 0:26.89 python 2068 mailman 20 0 201m 3920 1428 S 0.0 0.2 0:00.18 python 2091 root 0 -20 0 0 0 S 0.0 0.0 1:20.35 hcp_watchdog 2092 root 25 5 328m 4544 744 S 0.0 0.2 6:34.29 cdp-2-6 2108 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2110 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2112 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2114 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2116 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2118 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 5549 root 20 0 45364 376 204 S 0.0 0.0 0:00.00 sw-cp-serverd 5551 sw-cp-se 20 0 46276 2404 1552 S 0.0 0.1 0:00.46 sw-cp-serverd 25599 apache 20 0 246m 13m 616 S 0.0 0.7 0:01.16 httpd 25600 apache 20 0 378m 52m 6128 S 0.0 2.8 0:40.15 httpd 25601 apache 20 0 472m 52m 6740 S 0.0 2.8 0:42.83 httpd 25602 apache 20 0 379m 54m 7180 S 0.0 2.9 0:45.00 httpd 25603 apache 20 0 471m 51m 6632 S 0.0 2.7 0:43.03 httpd 25604 apache 20 0 384m 58m 6984 S 0.0 3.1 0:46.87 httpd 25605 apache 20 0 474m 54m 6576 S 0.0 2.9 0:43.55 httpd 25606 apache 20 0 472m 50m 6316 S 0.0 2.7 0:41.50 httpd 25607 apache 20 0 476m 55m 7180 S 0.0 3.0 0:45.69 httpd 34979 apache 20 0 466m 46m 6908 S 0.0 2.5 0:23.83 httpd 34980 apache 20 0 371m 45m 6728 S 0.0 2.4 0:24.99 httpd 34981 apache 20 0 371m 44m 6260 S 0.0 2.4 0:24.59 httpd 42473 root 20 0 0 0 0 S 0.0 0.0 0:00.00 flush-7:0 43677 root 18 -2 11132 380 244 S 0.0 0.0 0:00.00 udevd 51021 root 30 10 333m 676 584 S 0.0 0.0 0:00.45 sw-engine-fpm Link to comment Share on other sites More sharing options...
CmsFan Posted May 1, 2014 Author Share Posted May 1, 2014 Estaría bien que tu servidor te dijese la consulta SQL que "sobrecarga" el servido. Es posible que sea en los listados de categorías, si hay muchas combinaciones al listar los productos hace una join con los atributos que puede dejar KO a la base de datos Aqui va un report del servidor en estado Rojo (crítico) El parámetro de estado del servidor "Servicios > Uso de memoria de Apache" cambió su estado de "yellow" a "red". top - 21:29:39 up 3 days, 3:09, 0 users, load average: 0.08, 0.04, 0.01 Tasks: 127 total, 1 running, 126 sleeping, 0 stopped, 0 zombie Cpu(s): 3.9%us, 0.6%sy, 0.2%ni, 89.0%id, 6.2%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1914488k total, 1806936k used, 107552k free, 284140k buffers Swap: 1048568k total, 129208k used, 919360k free, 516424k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 49666 root 20 0 15024 1180 880 R 2.0 0.1 0:00.01 top 1 root 20 0 19356 1068 892 S 0.0 0.1 0:01.53 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:01.16 ksoftirqd/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.54 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 1:51.18 events/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm 13 root 20 0 0 0 0 S 0.0 0.0 0:01.41 sync_supers 14 root 20 0 0 0 0 S 0.0 0.0 0:01.23 bdi-default 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0 16 root 20 0 0 0 0 S 0.0 0.0 0:31.49 kblockd/0 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid 18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify 19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug 20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_aux 21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_sff/0 22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd 23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd 24 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kseriod 25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 md/0 26 root 20 0 0 0 0 S 0.0 0.0 0:00.00 md_misc/0 27 root 20 0 0 0 0 S 0.0 0.0 0:00.00 linkwatch 28 root 20 0 0 0 0 S 0.0 0.0 0:00.09 khungtaskd 29 root 20 0 0 0 0 S 0.0 0.0 0:28.23 kswapd0 30 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd 31 root 39 19 0 0 0 S 0.0 0.0 0:11.59 khugepaged 32 root 20 0 0 0 0 S 0.0 0.0 0:00.00 aio/0 33 root 20 0 0 0 0 S 0.0 0.0 0:00.00 crypto/0 38 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthrotld/0 39 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pciehpd 41 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kpsmoused 42 root 20 0 0 0 0 S 0.0 0.0 0:00.00 usbhid_resumer 72 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kstriped 129 root 20 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_0 130 root 20 0 0 0 0 S 0.0 0.0 0:00.01 scsi_eh_1 136 root 20 0 0 0 0 S 0.0 0.0 0:09.01 mpt_poll_0 137 root 20 0 0 0 0 S 0.0 0.0 0:00.00 mpt/0 138 root 20 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_2 263 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdmflush 265 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdmflush 289 root 20 0 0 0 0 S 0.0 0.0 0:48.55 jbd2/dm-0-8 290 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ext4-dio-unwrit 329 root 20 0 0 0 0 S 0.0 0.0 0:29.43 flush-253:0 360 root 16 -4 11136 424 316 S 0.0 0.0 0:00.60 udevd 547 root 20 0 0 0 0 S 0.0 0.0 0:06.48 vmmemctl 621 root 18 -2 11132 512 340 S 0.0 0.0 0:00.00 udevd 646 root 20 0 0 0 0 S 0.0 0.0 0:00.00 jbd2/sda1-8 647 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ext4-dio-unwrit 648 root 0 -20 0 0 0 S 0.0 0.0 0:46.96 loop0 651 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 loop1 715 root 20 0 0 0 0 S 0.0 0.0 0:00.47 kauditd 718 root 20 0 275m 2244 1760 S 0.0 0.1 0:33.60 monit 1127 root 20 0 105m 680 676 S 0.0 0.0 0:00.00 mysqld_safe 1332 mysql 20 0 985m 349m 4180 S 0.0 18.7 128:40.09 mysqld 1372 root 20 0 4068 456 396 S 0.0 0.0 0:00.10 courierlogger 1373 root 20 0 4068 460 396 S 0.0 0.0 0:03.75 courierlogger 1375 root 20 0 11904 648 596 S 0.0 0.0 0:00.16 couriertcpd 1376 root 20 0 11904 648 596 S 0.0 0.0 0:07.00 couriertcpd 1377 root 20 0 4068 460 396 S 0.0 0.0 0:00.07 courierlogger 1378 root 20 0 4068 460 396 S 0.0 0.0 0:00.06 courierlogger 1379 root 20 0 11904 648 596 S 0.0 0.0 0:00.18 couriertcpd 1380 root 20 0 11904 652 596 S 0.0 0.0 0:00.21 couriertcpd 1383 root 20 0 4068 400 396 S 0.0 0.0 0:00.00 courierlogger 1384 root 20 0 30296 680 644 S 0.0 0.0 0:00.03 authdaemond 1386 qmails 20 0 4120 568 488 S 0.0 0.0 0:00.41 qmail-send 1388 qmaill 20 0 4072 564 500 S 0.0 0.0 0:00.04 splogger 1389 root 20 0 4112 432 352 S 0.0 0.0 0:00.05 qmail-lspawn 1390 qmailr 20 0 4112 432 360 S 0.0 0.0 0:00.00 qmail-rspawn 1391 qmailq 20 0 4068 412 364 S 0.0 0.0 0:00.03 qmail-clean 1392 root 20 0 32400 1432 1216 S 0.0 0.1 0:03.25 authdaemond 1393 root 20 0 32400 1380 1168 S 0.0 0.1 0:03.11 authdaemond 1394 root 20 0 32400 1432 1216 S 0.0 0.1 0:03.34 authdaemond 1395 root 20 0 32400 1432 1216 S 0.0 0.1 0:03.36 authdaemond 1396 root 20 0 32400 1380 1168 S 0.0 0.1 0:03.36 authdaemond 1409 named 20 0 233m 8156 1428 S 0.0 0.4 0:01.19 named 1508 root 16 -4 93176 700 544 S 0.0 0.0 0:03.51 auditd 1539 root 20 0 243m 2688 800 S 0.0 0.1 0:11.54 rsyslogd 1677 dbus 20 0 21404 348 344 S 0.0 0.0 0:00.00 dbus-daemon 1723 root 20 0 66608 560 460 S 0.0 0.0 0:03.12 sshd 1731 root 20 0 22180 760 664 S 0.0 0.0 0:00.44 xinetd 1740 root 20 0 46616 744 300 S 0.0 0.0 0:00.00 nginx 1743 nginx 20 0 47424 3256 1656 S 0.0 0.2 0:45.09 nginx 1893 root 20 0 346m 27m 11m S 0.0 1.4 0:12.16 httpd 1963 qpidd 20 0 229m 1708 1332 S 0.0 0.1 0:20.75 qpidd 2009 root 20 0 341m 9.9m 3072 S 0.0 0.5 0:13.29 sw-engine 2022 root 20 0 528m 2336 864 S 0.0 0.1 1:21.65 sw-collectd 2038 root 20 0 114m 676 584 S 0.0 0.0 0:02.70 crond 2060 mailman 20 0 199m 1448 816 S 0.0 0.1 0:00.03 mailmanctl 2061 mailman 20 0 201m 3880 1428 S 0.0 0.2 0:29.34 python 2062 mailman 20 0 201m 3876 1428 S 0.0 0.2 0:28.56 python 2063 mailman 20 0 201m 3892 1428 S 0.0 0.2 0:30.09 python 2064 mailman 20 0 201m 3856 1428 S 0.0 0.2 0:31.68 python 2065 mailman 20 0 201m 3936 1428 S 0.0 0.2 0:30.15 python 2066 mailman 20 0 201m 1980 1428 S 0.0 0.1 0:28.83 python 2067 mailman 20 0 201m 1932 1428 S 0.0 0.1 0:29.30 python 2068 mailman 20 0 201m 3920 1428 S 0.0 0.2 0:00.19 python 2091 root 0 -20 0 0 0 S 0.0 0.0 1:23.52 hcp_watchdog 2092 root 25 5 328m 4736 2372 S 0.0 0.2 7:14.14 cdp-2-6 2108 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2110 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2112 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2114 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2116 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 2118 root 20 0 4064 476 472 S 0.0 0.0 0:00.00 mingetty 5549 root 20 0 45364 376 204 S 0.0 0.0 0:00.00 sw-cp-serverd 5551 sw-cp-se 20 0 46276 2404 1552 S 0.0 0.1 0:00.46 sw-cp-serverd 25599 apache 20 0 246m 13m 616 S 0.0 0.7 0:01.77 httpd 25600 apache 20 0 385m 59m 6468 S 0.0 3.2 1:02.88 httpd 25601 apache 20 0 482m 61m 7392 S 0.0 3.3 1:07.88 httpd 25602 apache 20 0 388m 62m 7188 S 0.0 3.3 1:10.29 httpd 25603 apache 20 0 481m 61m 7476 S 0.0 3.3 1:06.48 httpd 25604 apache 20 0 387m 61m 6992 S 0.0 3.3 1:08.66 httpd 25605 apache 20 0 485m 64m 6576 S 0.0 3.5 1:09.24 httpd 25606 apache 20 0 481m 60m 6544 S 0.0 3.2 1:06.49 httpd 25607 apache 20 0 484m 63m 7180 S 0.0 3.4 1:10.32 httpd 34979 apache 20 0 522m 61m 8740 S 0.0 3.3 0:48.35 httpd 34980 apache 20 0 380m 54m 7196 S 0.0 2.9 0:50.45 httpd 34981 apache 20 0 378m 52m 6328 S 0.0 2.8 0:48.52 httpd 43677 root 18 -2 11132 504 332 S 0.0 0.0 0:00.00 udevd 49444 root 20 0 0 0 0 S 0.0 0.0 0:00.00 flush-7:0 51021 root 30 10 333m 676 584 S 0.0 0.0 0:00.45 sw-engine-fpm Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 3, 2014 Share Posted May 3, 2014 La clave es que te digan las páginas y consultas que provocan el problema, aunque si pasas la url seguro que son los listados de productos... se debería ver que tardan en cargar Creo que lo de la memoria Mysql está aquí. Sabes ver qué proceso está dando el error? Ni idea ... Link to comment Share on other sites More sharing options...
ventura Posted May 3, 2014 Share Posted May 3, 2014 Activa el debug profiling en el archivo defines.inc.php define('_PS_DEBUG_PROFILING_', true); define('_PS_MODE_DEMO_', false); Hay podrás revisar ls consultas que se realizan y el tiempo que consumen 1 Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Activa el debug profiling en el archivo defines.inc.php define('_PS_DEBUG_PROFILING_', true); define('_PS_MODE_DEMO_', false); Hay podrás revisar ls consultas que se realizan y el tiempo que consumen La clave es que te digan las páginas y consultas que provocan el problema, aunque si pasas la url seguro que son los listados de productos... se debería ver que tardan en cargar Ni idea ... Hola, ya he podido ejectuar el tema del servidor. Adjunto las capturas de pantalla: Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Hola, ya he podido ejectuar el tema del servidor. Adjunto las capturas de pantalla: Adjunto PDF con el resultado del debug Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 6, 2014 Share Posted May 6, 2014 Hola, ya he podido ejectuar el tema del servidor. Adjunto las capturas de pantalla: Yo por la captura veo que se trata del listado de productos. Esta es la query de Category->getProducts que es la que al hacer la join con los atributos lo pasa mal. Pero no puedes enviar una url de la tienda? Realmente puedes confirmar que en los listados de categorías la tienda va muy lenta y sin embargo al ver un producto o en la home va ok? Hay muchas combinaciones en esos listados? (productos con muchas combinaciones ->tamaños, colores..etc) Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Yo por la captura veo que se trata del listado de productos. Esta es la query de Category->getProducts que es la que al hacer la join con los atributos lo pasa mal. Pero no puedes enviar una url de la tienda? Realmente puedes confirmar que en los listados de categorías la tienda va muy lenta y sin embargo al ver un producto o en la home va ok? Hay muchas combinaciones en esos listados? (productos con muchas combinaciones ->tamaños, colores..etc) Si, tengo los connectores de WASATO para proveedores de teconología (Esprinet y demás). En total, hay unos 82.000 productos en total y utilizo el módule de ICECAT para automáticamente generar las fotos y demás de cada producto (unas 3 por producto), además de las especificaciones de cada uno. Borré algunas categorías y creé de nuevas y los de WASATO me comentan que la cosa tiene que ir por ahí. Qué me decís? Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 6, 2014 Share Posted May 6, 2014 Pues si tienes listados de categorías largos o bien usáis un sistema de cache en el servidor (tengo un cliente que usa ph-speed y va como un tiro) o puedes probar de comentar la join en la query. No he comprobado hasta que punto afecta esta join a los listados pero si no te interesa el stock y no vas a añadir los productos desde los listados parece una opcíón viable. La captura es de una 1.5.6.0 y esta comentado en amarillo (comentario sql) lo que tiene que ver con la join de atributos Link to comment Share on other sites More sharing options...
moraira Posted May 6, 2014 Share Posted May 6, 2014 Sin querer pasarme de listo... de verdad vendes habitualmente unidades de esas 82.000 referencias... ya las puedes tener bien ordenadas me viene a la cabeza aquella importante empresa de distribución Lider que decidió eliminar los productos que no vendía por lo menos 2 unidades al día... Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Sin querer pasarme de listo... de verdad vendes habitualmente unidades de esas 82.000 referencias... ya las puedes tener bien ordenadas me viene a la cabeza aquella importante empresa de distribución Lider que decidió eliminar los productos que no vendía por lo menos 2 unidades al día... Hola Prestashop Addict, Pues desde Wasato me comentan que no es problema de catálogo, puesto que sus módulos funcionan perfectamente y como un rayo con la mayoría de empresas que los utilizan con estos números de productos y referencias. De verdad podría ser esta causa? En referencia a lo de "ph-speed y va como un tiro o puedes probar de comentar la join en la query". El ph-speed, veo que es un servidor a parte. Yo acabo de contratar el cloud y de momento no puedo cambiarme, aunque claro, por un poco más de dinero te lo amplian con más Ram o CPU. En caso de tener que ampliar, qué sería mejor? Entiendo que mejor ampliar RAM que no CPU? Adjunto captura del server que tenemos Por otro lado, lo de comentar la join en la query, exactamente en qué afecta? Por lo que deduzco leyendo esas 2 líneas, estás comentando que, en la 1ª linea, la tienda NO saque en el Front office los productos con stock 0, verdad? (Esto ya me va bien, si es así). Pero en la 2ª linea comentada en amarillo, no entiendo muy bien lo que realiza la función... Muchas gracias! Esta comunidad es, realmente, útil y colaborativa, estoy super soprendido Link to comment Share on other sites More sharing options...
WASATO Posted May 6, 2014 Share Posted May 6, 2014 Hola Prestashop Addict, Pues desde Wasato me comentan que no es problema de catálogo, puesto que sus módulos funcionan perfectamente y como un rayo con la mayoría de empresas que los utilizan con estos números de productos y referencias. De verdad podría ser esta causa? En referencia a lo de "ph-speed y va como un tiro o puedes probar de comentar la join en la query". El ph-speed, veo que es un servidor a parte. Yo acabo de contratar el cloud y de momento no puedo cambiarme, aunque claro, por un poco más de dinero te lo amplian con más Ram o CPU. En caso de tener que ampliar, qué sería mejor? Entiendo que mejor ampliar RAM que no CPU? Adjunto captura del server que tenemos Cloud.jpg Por otro lado, lo de comentar la join en la query, exactamente en qué afecta? Por lo que deduzco leyendo esas 2 líneas, estás comentando que, en la 1ª linea, la tienda NO saque en el Front office los productos con stock 0, verdad? (Esto ya me va bien, si es así). Pero en la 2ª linea comentada en amarillo, no entiendo muy bien lo que realiza la función... Muchas gracias! Esta comunidad es, realmente, útil y colaborativa, estoy super soprendido Hola joanbcn, Con la configuración del servidor que tienes, realmente la tienda tendría que ir bastante rápido, el consumo de RAM está demasiado alto y saturado por el servidor MySQL y tiene mucha relación a las JOIN en las queries de MySQL. Los JOIN en MYSQL necesitan que la base de datos este correcta, optimizada y sin ningún problema. Lo que pasa es que si encuentra un problema o una relación en un index está perdida, el servidor entra en un loop hasta pasar al siguiente index y esto sube el consumo de RAM y CPU. Si son muchos index que faltan, pues allí es donde todo se ralentiza hasta un punto que nada responda en el servidor porque puede llegar a saturarlo. La causa principal de este tipo de problemas es cuando se borran datos. Mira, has lo siguiente, reinicia el servidor sin entrar a tu tienda, mira como está el consumo de RAM y CPU, tiene que ser mínimo, si no lo es, tienes un problema en el servidor mismo. Si todo está en orden, empieza a usar prestashop y mira si sube el consumo de RAM y CPU, si es asi, lo mejor es reinstalar PrestaShop y comenzar desde cero, ya que hay un problema en la base de datos y encontrar el error tomara más tiempo que volver a crear el catalogo. Recuerda de ser así, de subir las fotos hasta el final, que es lo que mas tiempo toma. Un saludo WASATO Team Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 6, 2014 Share Posted May 6, 2014 Por otro lado, lo de comentar la join en la query, exactamente en qué afecta? Por lo que deduzco leyendo esas 2 líneas, estás comentando que, en la 1ª linea, la tienda NO saque en el Front office los productos con stock 0, verdad? (Esto ya me va bien, si es así). Pero en la 2ª linea comentada en amarillo, no entiendo muy bien lo que realiza la función... Se trata de eliminar la join de la segunda linea, pero esa join se usa para mostrar los "atributos" de la primera linea. Es decir el listado es el mismo solo que no usa out_of_stock, quantitiy , id_product_attribute,ni product_attribute_minimal_quantity. No tengo tiempo para analizar bien como usa esos atributos prestashop en los listados, pero en principio tiene pinta de ser que es para verificar que haya stock de productos en caso de que quieras añadirlos directamente desde los listados. En mi caso no dio problemas (no era necesario comprar desde los listados) y el incremento de rendimiento fue muy grande al eliminar la join. Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Se trata de eliminar la join de la segunda linea, pero esa join se usa para mostrar los "atributos" de la primera linea. Es decir el listado es el mismo solo que no usa out_of_stock, quantitiy , id_product_attribute,ni product_attribute_minimal_quantity. No tengo tiempo para analizar bien como usa esos atributos prestashop en los listados, pero en principio tiene pinta de ser que es para verificar que haya stock de productos en caso de que quieras añadirlos directamente desde los listados. En mi caso no dio problemas (no era necesario comprar desde los listados) y el incremento de rendimiento fue muy grande al eliminar la join. Ok a lo comentado por Wasato y a lo comentado por Enrique. Entonces, para simplificar la solución, a ver si estáis de acuerdo las 2 partes: - Pruebo de eliminar los 2 join? Es decir, comento las 2 lineas subrayadas en amarillo o solo una de ellas? Quiero acabar de hacer estas pruebas porque aunque seguramente haré la instalación de la tienda de nuevo, quiero tenerlo todo claro para no perder más días ni semanas en la confección de la definitiva y por si pasa algo parecido en productivo con la versión final, poderlo solventar rápido. - Por otro lado, pregunta enfocada para Wasato: Si comento estas 2 lineas, afecta en algo al módulo o la presentación de los productos gestionados desde el mismo en su presentación en el Front Office? Decir que los de Wasato me han parecido un equipo muy profesional y con una solución muy potente. Siempre contestan rápidamente y bastante claro a todas las preguntas o dudas presentadas. Sólo faltaría mejorar un poco los manuales de uso de los módulos... Muchas gracias a ambos! Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 6, 2014 Share Posted May 6, 2014 Ok a lo comentado por Wasato y a lo comentado por Enrique. Entonces, para simplificar la solución, a ver si estáis de acuerdo las 2 partes: - Pruebo de eliminar los 2 join? Es decir, comento las 2 lineas subrayadas en amarillo o solo una de ellas? Comentar Join para agilizar tienda.JPG Quiero acabar de hacer estas pruebas porque aunque seguramente haré la instalación de la tienda de nuevo, quiero tenerlo todo claro para no perder más días ni semanas en la confección de la definitiva y por si pasa algo parecido en productivo con la versión final, poderlo solventar rápido. - Por otro lado, pregunta enfocada para Wasato: Si comento estas 2 lineas, afecta en algo al módulo o la presentación de los productos gestionados desde el mismo en su presentación en el Front Office? Decir que los de Wasato me han parecido un equipo muy profesional y con una solución muy potente. Siempre contestan rápidamente y bastante claro a todas las preguntas o dudas presentadas. Sólo faltaría mejorar un poco los manuales de uso de los módulos... Muchas gracias a ambos! Si te lo puedes solucionar sin comentar las dos lineas (las dos!!! y si no sabes muy bien como hacerlo mejor no toques nada ) mejor que mejor, Lo que he comentado es un último recurso que a mi me funcionó. Saludos Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Bueno, ahora que estoy en las últimas con la tienda y que la pienso instalar, creo que no pasa nada por hacer la prueba. De hecho, modificaré el archivo y guardaré el antiguo con otro nombre (CategoryAntiguo.php, por ejemplo). De todos modos, acabo de bajar del Ftp el Category.php, pero no aparecen esas lineas a comentar...Lo he cogido de la raíz (del directorio httpdocs). Mi tienda es Prestashop 1.5.6.1 Sólo sale esto: <?php /* * 2007-2013 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/osl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2013 PrestaShop SA * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ /** * This file will be removed in 1.6 * You have to use index.php?controller=page_name instead of this page * * @deprecated 1.5.0 */ require(dirname(__FILE__).'/config/config.inc.php'); Tools::displayFileAsDeprecated(); Tools::redirect('index.php?controller=category'.((count($_GET) || count($_POST)) ? '&'.http_build_query(array_merge($_GET, $_POST), '', '&') : ''), __PS_BASE_URI__, null, 'HTTP/1.1 301 Moved Permanently'); Link to comment Share on other sites More sharing options...
WASATO Posted May 6, 2014 Share Posted May 6, 2014 - Por otro lado, pregunta enfocada para Wasato: Si comento estas 2 lineas, afecta en algo al módulo o la presentación de los productos gestionados desde el mismo en su presentación en el Front Office? Hola joanbcn, Gracias por tus comentarios, Realmente puedes realizar cualquier tipo de cambio que necesites, esto nunca afectara el funcionamiento de los módulos solo de tu tienda en sí. Ese cambio es solo para la presentación de los productos en la tienda, y exactamente como comenta Enrique, agilizara el tiempo de respuesta para dicha llamada ya que eliminas un JOIN, pero eso no será una solución ya que el problema radica en la base de datos misma. Cuando un JOIN ralentiza la respuesta es debido a un problema de indexación. Esa misma llamada puede durar horas o milisegundos, todo depende como están indexadas las tablas. Puedes hacer el cambio por probar. De nuestra parte te recomendamos reinstalar y evitar modificar el código, PrestaShop tiene que funcionar rápido, lo importante es optimizar bien la configuración del servidor MySQL para que sea lo más rápido posible y la configuración del CLOUD que tienes lo permite. Un saludo y suerte WASATO Team Link to comment Share on other sites More sharing options...
CmsFan Posted May 6, 2014 Author Share Posted May 6, 2014 Perfecto. Pues solo estaré a la espera de hacer la prueba del Join. Alguna de las 2 partes, sabéis en qué archivo se encuentran esas lineas? Muchas gracias Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 6, 2014 Share Posted May 6, 2014 Ese cambio es solo para la presentación de los productos en la tienda, y exactamente como comenta Enrique, agilizara el tiempo de respuesta para dicha llamada ya que eliminas un JOIN, pero eso no será una solución ya que el problema radica en la base de datos misma. Cuando un JOIN ralentiza la respuesta es debido a un problema de indexación. Esa misma llamada puede durar horas o milisegundos, todo depende como están indexadas las tablas. En eso no estoy de acuerdo, en una instalación normal (buena) con los campos de la join indexadas el rendimiento es pobre si hay muchos productos en el listado y cada producto tiene muchas combinaciones. En general cuando hay muchas combinaciones (>2000) el rendimiento de prestashop es malo Perfecto. Pues solo estaré a la espera de hacer la prueba del Join. Alguna de las 2 partes, sabéis en qué archivo se encuentran esas lineas? Muchas gracias El archivo esta en classes/Category.php Normalmente hay que sobrescribir las clases ya que forman parte del núcleo de prestashop y si actualizas Prestashop te machaca los cambios. Link to comment Share on other sites More sharing options...
CmsFan Posted May 7, 2014 Author Share Posted May 7, 2014 Buenas tardes a ambos. Pues al final, ni comentando el Join. El sistema va lentísimo. En cambio, tengo otras páginas alojadas en el server y funcionan todas perfectas. Por lo tanto, haré unas pruebas más con los módulos de Wasato y, una vez todo claro, borraré todo y crearé de nuevo. Un duda, quizás es algo tonto...Para borrar la tienda Prestashop entera y cualquier registro del servidor, cómo hago? Podría desasociar el dominio del servidor y volverlo a incorporar, pero tendría que crear los emails de nuevo y demás (todo un engorro). Será suficiente con borrar todo lo que haya dentro el directorio del dominio? Muchas gracias por todo Link to comment Share on other sites More sharing options...
WASATO Posted May 8, 2014 Share Posted May 8, 2014 Un duda, quizás es algo tonto...Para borrar la tienda Prestashop entera y cualquier registro del servidor, cómo hago? Podría desasociar el dominio del servidor y volverlo a incorporar, pero tendría que crear los emails de nuevo y demás (todo un engorro). Será suficiente con borrar todo lo que haya dentro el directorio del dominio? El único registro en el servidor es la base de datos de PrestaShop, puedes o borrar todas las tablas o borrar la base de datos y crear una nueva para la nueva instalación de PrestaShop. Si como dices todo lo demás va bien entonces seguro que es la base de datos de PrestaShop. En eso no estoy de acuerdo, en una instalación normal (buena) con los campos de la join indexadas el rendimiento es pobre si hay muchos productos en el listado y cada producto tiene muchas combinaciones. En general cuando hay muchas combinaciones (>2000) el rendimiento de prestashop es malo Mira aquí una tienda demo que tenemos con unos 30 mil productos y en 6 idiomas: http://icecat.wasato.ch/ la tienda no tiene ninguna modificación ni en PrestaShop ni en el servidor, va normal y reacciona igual que con 100 o con 10 mil productos, lo importante es que la base de datos este sin ningún problema. Estamos montando ahora unas demos en un hosting de $2.- tambien para que se vea el rendimiento de las tiendas. Queremos montar con Stock in the Channel una demo con 1 millon de productos, creo que no habra ningun problema segun las pruebas que hemos hecho hasta ahora. Link to comment Share on other sites More sharing options...
Enrique Gómez Posted May 8, 2014 Share Posted May 8, 2014 Mira aquí una tienda demo que tenemos con unos 30 mil productos y en 6 idiomas: http://icecat.wasato.ch/ la tienda no tiene ninguna modificación ni en PrestaShop ni en el servidor, va normal y reacciona igual que con 100 o con 10 mil productos, lo importante es que la base de datos este sin ningún problema. Pero tienen combinaciones? El problema esta con productos con combinaciones (con un número grande). Si no hay combinaciones no hay problema.. Si tienes un listado en una categoría con 100 productos y cada uno tiene 700 combinaciones tendrás problemas. Y si tienes un producto con 2000 combinaciones la página del producto costará de cargar en función del hosting. De hecho existe un módulo que nació para solventar este problema http://www.prestashop.com/forums/topic/47363-module-attribute-wizard-pro-create-unlimited-attributes-combinations-choose-frm-7-input-types/. Algún post donde habla de ello http://www.prestashop.com/forums/topic/311730-astronomical-number-of-combinations-and-specific-prices/ Este otro comenta el problema de rendimiento con la query de listado de productos por categoría http://www.prestashop.com/forums/topic/267729-a-lot-of-product-combinations-slow-down-shop/ Link to comment Share on other sites More sharing options...
WASATO Posted May 9, 2014 Share Posted May 9, 2014 Pero tienen combinaciones? El problema esta con productos con combinaciones (con un número grande). Si no hay combinaciones no hay problema.. Si tienes un listado en una categoría con 100 productos y cada uno tiene 700 combinaciones tendrás problemas. Y si tienes un producto con 2000 combinaciones la página del producto costará de cargar en función del hosting. No, el catálogo demo no tiene combinaciones, sin embargo cargar demasiadas combinaciones a un solo producto no es viable, es mejor crear un sistema de combinaciones automático por lo que entendemos muy bien por qué hay problemas al cargar tantas combinaciones. Tantas combinaciones es una sobre carga para el servidor y para el navegador, cuando tiene que cargar tanto código HTML. Por otro lado muchas tablas de PrestaShop no están indexadas correctamente por lo que este tipo de Queries como la que comentas da problemas, no está optimizada para ello. Por esta razón, nuestros modulo al instalarse lo que hacen primero es optimizar varias tablas de PrestaShop, si no sería imposible realizar las integraciones tan rápido. Link to comment Share on other sites More sharing options...
Recommended Posts