Sitio de alto tráfico, ¿que debo considerar?
Estoy a punto de lanzar un sitio web en el que se espera un tráfico muy, pero muy muy alto desde el mismisimo lanzamiento, he optimizado lo más que he podido las consultas a la base de datos, pero aún asi hay cosas que me preocupan.
utilizo php y mysql para este sitio pero he visto que en algunos casos en sitios de alto tráfico se presenta el error: Too many connections mySQL error code: 1040 mi web no tendrá un super diseño para evitar el tráfico innecesario y acelerar en la medida de lo posible la velocidad del sitio, asi que practicamente solo se transmitirá texto de un lado a otro e imágenes muy muy pequeñas, pero como serán muchos usuarios haciendo uso del sitio al mismo tiempo la base de datos se va a atiborrar de consultas...optimizadas, pero muchas, muchas... ¿¿Como puedo asegurar que no me suceda a mi lo de los errores esos feos del mysql?? que cosas tengo que considerar para el lanzamiento de esta web?? que le debo solicitar a mi proveedor de hosting??? Cualquier ayuda que me puedan dar será muy bien recibida puesto que no tengo nada de experiencia en web y este primer proyecto resulta ser mucho muy demandante por el alto tráfico que requerirá y no quiero "cagarla". Echenme una manito porfas.:o |
|
no tengo acceso a esa variable al parecer porque eso me parece que solo lo administra el dueño del hosting donde tendré mi página, no se si pueda pedir que se modifique esa variable.
Luego, eso es todo a lo que debo tenerle miedo??? o que otra cosa me puede pasar al lanzar este sitio??? ahi los que tengan experiencia con sitios de altisimo tráfico manifiestensen!!! |
Para mi es una cuestion de recursos tu problema.
Cuanto mas trafico tengas, mas recursos necesitaras. Por lo general se utilizan servidores dedicados para paginas de mucho trafico. Si el hosting en donde tienes publicada la página no es tuyo, entonces mucho no puedes hacer. Quiza te convenga contratar algun hosting mas profesional que acepte mas conexiones. En cuanto al diseño de la página y la base de datos, mucho no puedes hacer si se supera el limite de conexiones en la base. |
Santus está en lo correcto y de partida recomendaria no hacerlo en un hosting, pues debe considerar que ese hosting lo compartes con muchas personas y que además hacen peticiones a sus bases de datos propias.
Mi recomendación en tu caso es un housing, que significa en que tu pongas tu propio servidor en un datacenter que te garantice un buen ancho de banda nacional e internacional. De esta manera tendrás todos los recursos de ese equipo destinado a tu web. Espero te ayude. |
Yo no se cuánto es altísimo tráfico. En lo que manejo, no creo que sea muy alto el tráfico, pero llega a haber entre 800 y 1000 accesos simultáneos y la verdad es que el problema nos lo ha dado Apache y no MySQL, éste aguanta muy bien, pero Apache se cuelga casi totalmente.
Te lo comento porque, a fin de cuentas, quizá el problema lo tengas antes de MySQL, y como te han comentado antes, quizá no sea buena idea tener un hosting compartido. // Saludos |
Otra cosa que creo que debes de considerar es ¿cual es el plan de accion de tu hosting si este se llagara a colapsar?,¿tienen servidores redundantes para poder habilitarlos en caso de fallos?, considera que no necesariamente tu aplicacion puede fallar, debes de informarte acerca de la seguridad que te ofrece el host.
Saludos |
la verdad estoy muy verde en esto de la web y la falta de experiencia en este tipo de desarrollos es lo que puede echar a perder este proyecto...
Bien, cuando hablo de alto tráfico si es mucho tráfico, estamos hablando de que se espera que lleguen a haber mas de 65,000 usuarios en linea al mismo tiempo... y eso es siendo optimistas en que no entren tantos al mismo tiempo. Además de que las consultas son sencillas y cortas pero cada usuario puede generar muchas en un corto periodo de tiempo a travez de la interacción con la página. El proveedor de hosting no me sabe decir bien si su servicio aguantará los números que le doy, tal vez tampoco tenga la mas zorra idea, o el que me atiende es solo un vendedorcillo que no sabe mucho de bits y bytes. ¿Conocen algun proveedor de servicio que me pueda ofrecer la garantía de que un servicio como el que menciono va a estar ahi aguantando como un hombrecito lo que le manden?? Cualquier tip o sugerencia es completamente bienvenida. |
Hola:
Te puede servir el HTTP Compression, yo deje un hilo acá en el foro de php hace unos días y nadie lo ha inflado :(, esta técnica te puede servir para mejorar el ancho de banda desde el servidor hacia las máquinas clientes. Eso si, verifica si está activado el mod_deflate de apache o bien el zlib_output_compression. Yo lo estoy utilizando y mis páginas al descargarse son mucho más rapidas y pequeñas, lo otro, también podría servirte implementar un caché en php. Saludos .- |
Hola!
Emilio te puede alquilar un servidor para ti solo. Mandale un email, y si no te contesta lo dices y te digo otro sitio :D Por otro lado hablas de 65000 usuarios, pero con eso ¿quieres decir 65000 usuarios conectados, o te refieres a que puede haber 65000 peticiones hppt simultaneas? es que no es lo mismo, de hecho, es muy distinto. Un saludo! |
si, 65,000 usuarios usando mi web simultaneamente osea conectados al mismo tiempo es mi cifra estimada mas baja... en la web cada usuario comienza a hacer inserts masivos desde el primer momento uno tras otro conforme va interactuando con la página, en realidad todo tiene que ver con interaccion con la base de datos y es dificil usar cache porque los datos con los que interactúa cada usuario van a ser muy personalizados.
como todo lo que hacen los usuarios en mi pagina es hacer inserts en la base de datos con un solo click sin tener que ingresar datos por el teclado sino solo dar click en una opción, pues es bastante posible que hubieran bastantes peticiones y bastantes querys simultaneas de varios miles de fulanos. es mucho o es común estos números en la vida real?? |
Dependerá bastante del servidor y de la programación, obviamente.
Cita:
http://gallir.wordpress.com/2008/06/...ra-la-empresa/ |
Hombre, yo no imagino siquiera qué sitio puede tener 65000 peticiones web simultáneas, pero te reitero lo dicho, y no creo que ningún hosting normal te aguante eso. Hasta donde entiendo, para ese tipo de accesos vas a necesitar clusters y cosas así.
// Saludos |
[offtopic]
Mmm. si fuera eduarcol, diría que ese sitio es para pedir la destitución de Chávez :D [/offtopic] // Saludos |
;)
Cita:
Nooo, yo contra el comandante nunca :rolleyes: |
muchas gracias Casimiro, ya tengo un servidor dedicado para la web, y veo que el señor este de meneame no habla de clusters solo de tener bien tuneada la estructura de la BD, con eso no tengo mayor problema
He conseguido a un asesor que ha configurado Apache en el servidor Linux para que levante muchas instancias en caso de que sean necesarias (al menos eso le he entendido) pero de clusters y esas otras yerbas si no se que onda |
¿como se va a llamar la pagina porno?
¿la url del sitio.¡? |
Cita:
Hasta Luego .- |
Cita:
La web es un medio muy poderoso, este proyecto me ha servido mucho para abrir los ojos a una gran gama de posibilidades respecto a los negocios en la web, y sobre todo me ha servido para entender como se pueden hacer muchos, pero muchos billetes tan solo proveyendo de servicios web gratuitos (como ya lo hace google por ejemplo) a una considerable población, sabiendo como y con quien hacer las negociaciones.:p;) Remember... you get rich with a niche |
Esta es una excelente presentacion de la gente de joyent (con quien hosteo) y muestra lo que REALMENTE hay que hacer para escalar:
http://www.slideshare.net/fbrunel/ja...rlin-sept-2007 Con ello, lograron hacer que un lenguaje que esta "pobre" en rendimiento con Ruby escale a 1.5 millones de usuarios activos al dia (sitio linkedIn). |
Como quizas la presentacion se puede hacer algo pesada, ya que habla de la escalabilidad de punta a punts - empezando por el costo electrico! - en resumen:
- Optimizar la estructura de la BD para lecturas - si es importante - - Mandar al carajo a Apache y usar nginx/lighttpd para TODO EL CONTENIDO ESTATICO (imagenes, html plano, css, etc...), y dejar apache solo para el dinamico. Es posible que nginx / lighttpd sean mas efectivos en manejar el dinamico tambien. Pero es cuestion de hacer pruebas para tu caso - Hostear el contenido estatico en otro lado - Separar el servidor DNS o usar uno de terceros - Usar chache. No pendejear inventandolo, usar memcached que es la "neta" - Enviar css,js comprimido, versionarlo y ponerlo que no expira en mucho tiempo para que los navegadores lo cacheen de forma efectiva. Ej: miestilo-1.css - Servir todo css y todo js en un solo request. Ej: http://www.paradondevamos.com/jhonWe...jd.gallery.css (pa' eso hay script que lo arman. Es muy simple) Eso es lo que es alcanzable pa' un equipo pequeño. De ahi pa' arriba es lo que dice joyent y toca tirar mas alto. Yo implemente parcialmente esas ideas, y en cuestion de facil a dificil: - Usar nginx para el estatico. Muy notable la diferencia. Como uso python, utilizo FastCGI que es mejor que mod_python. Si usas FastCGI para php deberias ver una mejora (pero hay que tunear los parametros) - Tirar todo el css, js en un solo request. Semi notable. - Utilizo un servidor DNS de terceros. Como siempre ha sido asi, no te se decir si es muy bueno o no. Quizas en mi caso no porque no estan en el mismo segmento de red. De hay versionar los css,js puede tener una ventaja marginal. Usar memcached y tunear que se cachea y que no requiere algo mas de inteligencia para evitar fantasmas pero se supone que es lo mas notable en velocidad. Si ademas precalculas & precomprimes los html,js,css y los sirves por nginx mejor. En fin, notaras que la clave es cachear, cachear y cachear. Es lo mas simple y lo que mas resultado da sin entrar a hacer cosas locas. Si ruby que es lentisimo puede, php seguro que tambien. |
La franja horaria es GMT +2. Ahora son las 17:33:50. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi