Foros del Web » Programando para Internet » PHP »

Conexiones a la bd y servidor

Estas en el tema de Conexiones a la bd y servidor en el foro de PHP en Foros del Web. Hola a todos, queria hacerles una consulta. Puede un servidor standard de esos compartidos, soportar unos 100 usuariios conectados simultaneamente y ademas en menos de ...
  #1 (permalink)  
Antiguo 28/12/2014, 22:10
 
Fecha de Ingreso: marzo-2013
Mensajes: 26
Antigüedad: 11 años, 8 meses
Puntos: 0
Conexiones a la bd y servidor

Hola a todos, queria hacerles una consulta.
Puede un servidor standard de esos compartidos, soportar unos 100 usuariios conectados simultaneamente y ademas en menos de un minuto realizar unas 500 consultas a la base de datos rapidas y sin colgarse? o se necesita algun servidor especial con mas capacidad?
  #2 (permalink)  
Antiguo 29/12/2014, 03:53
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Conexiones a la bd y servidor

Técnicamente hablando, esos servidores pueden hacer lo que preguntas, pero los verdaderos límites te los ponen los administradores del mismo a ti como usuario.
La respuesta en realidad la debes buscar con ellos, y dependerá del tipo de cuenta que tengas en ese host.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 29/12/2014, 11:16
 
Fecha de Ingreso: marzo-2013
Mensajes: 26
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Conexiones a la bd y servidor

Gracias por responder, son consultas muy basicas,este es el script a ejecutar por 100 personas en un tiempo muy corto, (menos de un minuto).
Código PHP:
Ver original
  1. <?php
  2. require("../conexion.php");
  3.  
  4. $user=$_SESSION["id_user"];
  5. $id=$_POST["id"];
  6. $fecha_i=$_POST["start"];
  7. $fecha_f=$_POST["end"];
  8. $interv1=$_POST["interv1"];
  9. $interv2=$_POST["interv2"];
  10.  
  11. function minutos_transcurridos($fecha_i,$fecha_f){
  12.     $minutos = (strtotime($fecha_i)-strtotime($fecha_f))/60;
  13.     $minutos = abs($minutos); $minutos = floor($minutos);
  14.     return $minutos;
  15. }
  16.  
  17. $sql1="select id_usuario,start,end from turnos_toma
  18. where start='".$fecha_i."' and end='".$fecha_f."' and id_usuario=".$user." limit 1";
  19. $res1=mysqli_query($conexion,$sql1);
  20. $num1=mysqli_num_rows($res1);
  21.     if ($num1!="0") {
  22.         echo "Ya tomaste este turno!";exit;
  23.     }else{
  24.  
  25.     $sql2="SELECT count(id) as cantidad from turnos_toma
  26.     where start BETWEEN '".$interv1."'  AND '".$interv2."' and id_usuario=".$user."";                                  
  27.     $res2=mysqli_query($conexion,$sql2);
  28.     $count2 = mysqli_fetch_array($res2);
  29.         if ($count2[0]==4) {
  30.             echo "No puedes tomar más de 4 turnos.";exit;
  31.         }else{             
  32.  
  33.             $sql3="select start from turnos_toma where
  34.             start BETWEEN '".$interv1."'  AND '".$interv2."' and
  35.             id_usuario=".$_SESSION["id_user"]."";
  36.             $res3=mysqli_query($conexion,$sql3);
  37.             $num3 = mysqli_num_rows($res3);
  38.                 if ($num3==0) {
  39.                     $sql4="update turnos_asignacion set cantidad=cantidad-1 where id=".$id."";
  40.                     $res4=mysqli_query($conexion,$sql4);
  41.                     $sql5="insert into turnos_toma values(null,".$id.",".$user.",'".$fecha_i."','".$fecha_f."')";
  42.                     $res5=mysqli_query($conexion,$sql5);
  43.                     echo "Turno tomado con éxito";exit;
  44.                 }else{
  45.  
  46.                     while ($row3=mysqli_fetch_array($res3)) {  
  47.                         if (minutos_transcurridos($row3["start"],$fecha_i)<210) {
  48.                             echo "No puedes tomar este turno.";exit;
  49.                         }
  50.                     }      
  51.                    
  52.                     $sql6="update turnos_asignacion set cantidad=cantidad-1 where id=".$id."";
  53.                     $res6=mysqli_query($conexion,$sql6);
  54.                     $sql7="insert into turnos_toma values(null,".$id.",".$user.",'".$fecha_i."','".$fecha_f."')";
  55.                     $res7=mysqli_query($conexion,$sql7);
  56.                     echo "Turno tomado con éxito";exit;
  57.                 }
  58.            }
  59.     }
  60.  
  61. mysqli_close($conexion);
  62.  
  63. ?>

asi que creo que tendre que probar algun hosting, alguna recomendación?
  #4 (permalink)  
Antiguo 29/12/2014, 11:21
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Conexiones a la bd y servidor

Cita:
alguna recomendación?
La primera es que no utilices como nombres de columnas palabras reservadas de SQL.
Tiens campos llamados "START", y "END", que son clausulas de transacciones y de ejecucion de bloques en SP, lo que es una muy mala idea. Ese tipo de consultas puede disparar errores de sintaxis de muy difícil diagnóstico.

Fuera de eso, no hay muchas recomendaciones en cuanto a hosting, salvo que leas con cuidado las limitaciones de uso que te provean. Algunas veces ponen un límite de conexiones/hora, o bien de consultas/hora, por lo que si superas esos límites tendrás que cambiar de nivel de cuenta.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 29/12/2014, 11:51
 
Fecha de Ingreso: marzo-2013
Mensajes: 26
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Conexiones a la bd y servidor

No tenia idea que eran palabras reservadas, lo malo es que no se pueden cambiar, es una app con fullcalendar y por defecto trabaja con parametros start y end desde la bd, averiguare que host me soporta esto entonces con ellos mismos, muchas gracias.

Etiquetas: bd, conexiones, servidor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:17.