elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Consejos sobre mi sitio [F1]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Consejos sobre mi sitio [F1]  (Leído 3,619 veces)
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
Consejos sobre mi sitio [F1]
« en: 10 Agosto 2016, 03:02 am »

Estoy creando un sitio con wordpress me ayuda con el registro de usuarios, y la personalizo con un plugin que voy creando (una clase en php), además utilizo la libreria fpdf para crear un reporte según las respuestas a un cuestionario.

Mis dudas:

- Sobre la creación del reporte en pdf, cuanto de texto es el limite para no saturar al hosting. Existe alguna alternativa para crear un documento localmente (con javascript)

- Al iniciar el cuestionario cargo todo mediante ajax, son varios combos por Area y Categoria (no queria hacer muchas consultas por eso lo almaceno en una variable). Cuanto seria el peso maximo de los datos que puedo almacenar en variables.


Tengo dudas pues estoy acostumbrado a programar para escritorio. Cualquier consejo o buenas practicas, se los agradeceria.

Muchas gracias.


« Última modificación: 19 Agosto 2016, 20:43 pm por Maurice_Lupin » En línea

Un error se comete al equivocarse.
[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Consejos sobre mi sitio [F1]
« Respuesta #1 en: 10 Agosto 2016, 16:53 pm »

- Sobre la creación del reporte en pdf, cuanto de texto es el limite para no saturar al hosting. Existe alguna alternativa para crear un documento localmente (con javascript)

Eso depende de tu tipo de hosting y del trafico de tu sitio. Por ejemplo el script que genera el PDF cuantas veces es invocado por hora normalmente? Y por otro lado que tipo de hosting tenes?Si es un shared basico, con 64MB es mas que suficiente, salvo que tengas muchas ejecuciones del script, en ese caso 32MB están bien.

Lo ideal es al principio del script que genera el PDF agregar la linea:
Código
  1. ini_set("memory_limit","64M");//64 MegaBytes

Claro que existen librerías para crear PDF con JS como https://parall.ax/products/jspdf el problema es que si el cliene tiene una pc vieja (512/1024 ram) se le va a colgar mal el navegador xD y con versiones desactualizadas de Firefox e IE no funciona del todo bien.

- Al iniciar el cuestionario cargo todo mediante ajax, son varios combos por Area y Categoria (no queria hacer muchas consultas por eso lo almaceno en una variable). Cuanto seria el peso maximo de los datos que puedo almacenar en variables

Si te referís al cliente, el limite es la memoria disponible que tenga la pc del navegador web xD. Pero seguramente te alcance de sobra para un cuestionario/formulario...

En el servidor el limite es el limite de memoria - memoria usada actualmente por el script. Te pongo un codigo de ejemplo, uso la funcion memory_get_usage() para saber cuanta memoria tengo en uso:

Código
  1. <?php
  2. ini_set("memory_limit","32M");
  3.  
  4. echo "Inicio. Meoria en uso: " . memory_get_usage() . " bytes.<br>";
  5.  
  6. echo "guardando algunas variables en memoria<br>";
  7.  
  8. $tags = array();
  9.  
  10. for($i=50000;$i>0;$i--)
  11. {
  12. $tags[] = array(
  13. "tag_uid" => '84fdds9f498sd4f98sd98fd',
  14.    "x" => 0,
  15.    "y" => 1
  16. );
  17. }
  18.  
  19. echo "usados " . memory_get_usage() . " bytes.<br>";
  20.  
  21. echo "guardando mas variables en memoria<br>";
  22.  
  23. $tags2 = array();
  24.  
  25. for($i=15000;$i>0;$i--)
  26. {
  27. $tags2[] = array(
  28. "tag_uid" => 'a4d4d9as4d9as1dsa16d51sa65d1sa65d1a6s51d65as1dsa65d6',
  29.    "x" => 0,
  30.    "y" => 1
  31. );
  32. }
  33.  
  34. echo "usados " . memory_get_usage() . " bytes.<br>";
  35.  
  36. ?>

Al ejecutarlo desde el navegador obtengo:

Citar
Inicio. Meoria en uso: 65400 bytes.
guardando algunas variables en memoria
usados 21128104 bytes.
guardando mas variables en memoria
usados 27913832 bytes.

Como ves al final del script tengo en us 27913832 bytes (26MB aprox.) Entones cambio la linea 1 a

Código
  1. <?php
  2. ini_set("memory_limit","25M");
  3.  

Y ahora obtengo:

Citar
Inicio. Meoria en uso: 65400 bytes.
guardando algunas variables en memoria
usados 21128104 bytes.
guardando mas variables en memoria

Fatal error: Allowed memory size of 26214400 bytes exhausted (tried to allocate 53 bytes) in C:\AppServ\www\poc.php on line 28

Como ves, me estoy pasando por 53 bytes, lo que da un error.

Espero haberte ayudado, saludos!


En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
Re: Consejos sobre mi sitio [F1]
« Respuesta #2 en: 11 Agosto 2016, 17:34 pm »

Gracias [u ]nsigned, me estoy decantando por la libreria jspdf, muy buena.
Sigo probando y posteare cualquier duda.

Saludos.
« Última modificación: 11 Agosto 2016, 17:35 pm por Maurice_Lupin » En línea

Un error se comete al equivocarse.
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
Re: Consejos sobre mi sitio [F1]
« Respuesta #3 en: 16 Agosto 2016, 20:06 pm »

Hola, ahora tengo otra duda, para cargar el cuestionario hago consultas POST y envio la data en json, indagando en la web encontré esta recomendación "Minimiza el número de consultas a la base de datos", me pregunto si creo un archivo texto plano con la data json para cada cuestionario que tendré (imagino que serán menos de 50, pesarán menos de 30kb) y haría un require para enviar la data json.

¿Seria esto mejor que hacer consultas a la base de datos cada vez que se llame al cuestionario?

Saludos.
En línea

Un error se comete al equivocarse.
[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Consejos sobre mi sitio [F1]
« Respuesta #4 en: 17 Agosto 2016, 14:38 pm »

Eso es sobre la lógica de negocio de tu aplicación.

Si los datos que vas a leer son estáticos, simplemente guárdalos en una archivo .json, pero si son datos que pueden variar usa bases de datos. MySQL es muy poderoso y eficiente, y para suturarlo hacen falta cientos (o miles dependiendo de server) de consultas simultaneas para tirarlo.
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
Re: Consejos sobre mi sitio [F1]
« Respuesta #5 en: 19 Agosto 2016, 20:42 pm »

Muchas gracias, doy por cerrado el tema.

Saludos.
En línea

Un error se comete al equivocarse.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
hola consejos sobre avi
Multimedia
led2006 6 2,522 Último mensaje 18 Julio 2006, 18:31 pm
por Songoku
Características y Consejos sobre la PSP
Juegos y Consolas
black_rafar 0 1,483 Último mensaje 28 Enero 2008, 13:05 pm
por black_rafar
Consejos sobre la compañia ONO
Foro Libre
andres_5 0 1,808 Último mensaje 10 Marzo 2011, 19:58 pm
por andres_5
Solicito consejos de seguridad para sitio en intranet?
Seguridad
stribok 6 5,344 Último mensaje 23 Junio 2011, 13:39 pm
por EFEX
Recomendaciones sobre Tor y consejos sobre el anonimato.
Seguridad
OmarHack 2 6,438 Último mensaje 15 Julio 2013, 20:28 pm
por OmarHack
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines