 
			
				10/01/2003, 22:27
			
			
			     |  
        |     Colaborador   |    |    Fecha de Ingreso: noviembre-2001  Ubicación: 127.0.0.1  
						Mensajes: 3.499
					  Antigüedad: 24 años Puntos: 69     |        |  
  |      En mi trabajo mandamos un newsletter semanal a unos 80.000 usuarios, y para ello utilizo solo Apache, PHP, función mail() y mySQL. 
Lo que hice, fue adaptar un viejo código, por lo que está bastante ( bastante mucho diría yo ) poco optimizado, por lo que pienso que optimizándolo podría soportar muchisimos usuarios más. 
EL lo basé en dos conceptos :    
1) Paginación de resultados, para no tener problemas con los Time_limits del ejecución del PHP 
2) El usuario no necesita que aparezca la dirección TO: en su email, por lo que puedo utilizar la cabecera CCO:   
Entonces, lo que hago es sacar los primeros 200 mails de la base, armar el email, colocar las 200 direcciones dentro del CCO (separándolas por comas) y cada página envía solo 1 email, con los 200 CCO. 
Así, cuando carga la aplicación, automáticamente se llama a si misma, pidiendo la siguiente "página" de resultados, obteniendo los siguientes 200 emails, y enviando 1 email. 
De esta manera, la aplicación funciona correctamente y completa el envío de los 80.000 emails en algo así como 1 hora.   
Para esto estoy utilizando la función mail() de PHP, ya que por cada vez que la pagina carga, envía 1 solo email, pero podría estar utilizando alguna clase que trabaje directamente con sockets y un server SMTP, lo cual aceleraría considerablemente las cosas al enviar Varios emails sin cerrar la conexion con el server ( cosa que la funcion mail() hace ).   
Espero que esta mini Guía de como envío yo los newsletters te sirva. Cualquier punto que quieras que te aclare o que quieras profundizar, me avisas.   
Saludos.              |