#28408 Eso se llama affiliated marketing y lo mejor es hablar con las marcas para que te den mas dineros.
Si lo haces a traves de adsnse y mierdas asi sin meter contenido y tal, Google te mete la patada easy a la pagina 10.
#28411 Claro, yo es que las que vi que posteaba la gente eran rollo adsense con enlaces de amazon, etc y luego iban metiendo contenido de mierda en realidad, cuatro tonterías cada poco copiadas de cualquier otro sitio usando otras palabras y fuera, no se que rentabilidad tendría eso.
#28412 Pues la rentabilidad es alta, si lo haces bien.
Ahora copiar contenido tiene el mismo efecto que no tener contenido, patadita a la pagina 10.
Me ha tocado desarrollar un pequeño módulo en nodejs y el sida que me está dando no es ni medio normal.
Qué puto asco Dios.
Acabo de hacer un deploy con un patch a unas clases de conexion a base de datos y uno de nuestros servidores ha pasado de tener 114 conexiones activas a tener 7.
La peña que programa como si los servidores fuesen pozos infinitos de recursos habria que meterles una paliza cada mañana.
#28419 7? eres la deshonra del hilo, tendrias q usar dos como mucho y sobrarte el segundo por si cae el primero
#28423 Pues habia 117 porque tal como estan montadas esas clases, cada vez que utilizabas un objeto que implementaba la conexion a su base de datos, abria una conexion nueva, con dos cojones.
Lo que he hecho ha sido crear un pool de conexiones statico y cada vez que un objeto que hereda la clase de conexion antes de abrirla, mira a ver si existe.
#28425 Justamente XD
#28426 yo es que uso una classe repository con la conexión y luego en cada modelo/clase extiende esta para coger datos de la db, si son consultas jodidas pues hago un ClassRepository que extienda repository para pillar los datos, así tienes todo en un sitio o al menos tiene cierta estructura xD
#28427 No puedo dar los detalles de como lo implementamos, pero si, por ahi van los tiros.
Pero el problema no es como tienes estructuradas las clases, el problema viene, si cada vez que heredas el repositorio, este crea una nueva conexion a la base de datos (aka crear un objeto PDO por ejemplo). en vez de mirar si ya hay una conexion abierta, pues acabas con 100 y pico conexiones por request.
#28428 pues me ha dado por mirar las conexiones abiertas y me he asustado:
Luego me he dado cuenta que solo tenía que mirar el Threads_connected xDD
De momento todo va bien:
mysql> show status where `variable_name` = 'Threads_connected';
+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| Threads_connected | 1 |
+-------------------+-------+
1 row in set (0,00 sec)
#28433 Yo he visto casos en los que utilizar el pooler nativo de conexiones a BBDD va como el puto culo, como el conector de MySQL de .NET. En mi caso, uso un wrapper propio con un stack que tiene una conexión por hilo (para programas multihilo), y va mucho mejor que usar el pooling nativo del conector porque es puta mierda.
#28434 No desarrollo en .NET así que no te se decir pero estoy seguro de que hay librerías a doquier para eso en cualquier lenguaje.
#28435 teneis SQL a pelo ?? joder... estás en una empresa de los 90?
Creo que en PHP la mayoría de ORMs ya te gestionan esas mierdas
#28437 Los ORMs para segun que cosas, son un performance killer y para esto en concreto, ni te cuento.
Pero no tenemos SQL a pelo.