No estás registrado (Registrarse)

Vanilla 1.1.10 es un producto de Lussumo. Para más información: Documentación, Soporte.

    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 1
    Leyendo el hilo de la venta de blogia me he quedado perplejo al ver que con 3 servidores no muy potente es capaz de atender 4 millones de visitas al mes y tirando por bajo unos 5 o 6 millones de impresiones. Su dueño cuenta que no usa base de datos, solo texto plano. Por más que pienso no se me ocurre como montar por ejemplo los archivos de los blogs o los comentarios usando texto plano de manera eficiente.

    ¿Alguien sabe como hacer este tipo de diseño de manera eficiente o conoce algún tipo de artículo o libro sobre manejar grandes cantidades de datos con php sin base de datos?

    Gracias!
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011
     # 2
    Posted By: Hacker¿Alguien sabe como hacer este tipo de diseño de manera eficiente o conoce algún tipo de artículo o libro sobre manejar grandes cantidades de datos con php sin base de datos?


    Bueno, no conozco libros o artículos que hablen de esto, pero está bastante extendido en las aplicaciones empresariales.

    La organización suele depender del autor, pero siguiendo unas reglas básicas de bases de datos se puede escribir de forma eficiente. Ten en cuenta que tanto MySQL como Oracle o cualquier NoSQL, al fin y al cabo se almacenan en ficheros y de lo que se encargan es de gesti0onar eses accesos para que no colapsen las consultas.

    En un caso como blogia separaría por directorios cada blog y almacenaría en cada directorio todo referente a ese blog (como en su día hacía blogger) teniendo siempre en cuenta principalmente los diferentes accesos de escritura a los ficheros.

    Por ejemplo:
    /blog1
    /blog2
    ...
    /blog_n/
    - configuracion.txt
    - indice_posts.txt
    - /posts/
    --- post_1.txt
    --- post_2.txt
    --- ...
    --- post_n.txt
    - /comentarios/
    --- comment_1.txt
    --- ...
    --- comment_n.txt
    - /imagenes/

    Con esta estructura, el acceso de escritura a cada fichero lo tendría solamente una persona (si no me he equivocado), lo que facilita la escritura sin interrupciones, bloqueando el fichero cuando se edita, y desbloqueandolo cuando se ha guardado.

    Dentro de cada fichero se pueden almacenar los datos de la forma que quieras, por ejemplo en formato json (tan de moda últimamente) o en xml, por ejemplo.

    Por poner un ejemplo: post_x.txt podría tener este formato.
    fecha: [fecha]
    titulo: [titulo]
    contenido: [base_64(contenido)]
    crc: md5(contenido) // Para verificar que no está corrupto.

    A este fichero solo accede como escritura el autor, así que no habría peligro de corromperlo.

    Un ejemplo claro de uso de ficheros de texto para bases de datos con muchas peticiones, son las dnss en un servidor, que se almacenan en ficheros de texto, cada dominio/subdominio/wild en uno diferente y no suele corromperse, al menos no más que una MySQL.

    Por último, tener claros los permisos de acceso a la carpeta y a ser posible tenerlos fuera de la vista web.

    Espero que te pueda al menos orientar en algo :bigsmile:
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 3
    Posted By: Antonio VillamarinEspero que te pueda al menos orientar en algo :bigsmile:


    Algo no, me has orientado muchísimo. Muchas gracias! :clap:
    • CommentAuthorproph
    • CommentTimeMay 20th 2011
     # 4
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011
     # 5
    Gracias :shamed:

    Tengo por ahí una librería php para gestionar bases de datos en ficheros de texto, por si puede ser de utilidad, que he subido a mi github por si a alguno le interesa, puede usarse libremente.

    https://github.com/simplicer/nanodb
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 6
    Impresionante Antonio, se nota que el foro tiene un nivel grandísimo.
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 7
    Dudas que me surgen así a bote pronto. Tengo un sistema con cientos de miles de comentarios, miles de usuario, cientos de miles de anotaciones...

    Algunos usuarios pueden tener 10 o 20 mil comentarios en todas sus páginas.

    ¿No es ineficiente esa cantidad de archivos en un sistema de archivos? Hace años, estudiando sistemas operativos recuerdo que un kernel antiguo de linux que fue el que estudiamos tenía límite de archivos por carpeta, 16mil o algo así si no recuerdo mal.
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011
     # 8
    Posted By: Hacker¿No es ineficiente esa cantidad de archivos en un sistema de archivos? Hace años, estudiando sistemas operativos recuerdo que un kernel antiguo de linux que fue el que estudiamos tenía límite de archivos por carpeta, 16mil o algo así si no recuerdo mal.


    Ciertamente, en la mayoría de los SO, debido a la estructura del FS, están limitados el número de archivos, como por ejemplo en el Minix de Tannenbaum (Este fue el que estudié yo ;)) y los actuales no son menos, y dependiendo de si es ext2, 3, 4, FAT, FAT32, NFS, NTFS, etc varía, pero todos están limitados.
    Cuando uno tiene que almacenar mucha cantidad de ficheros, para solucionarlo está la forma append para añadir información a ficheros, y por ejemplo, al almacenar los comentarios de un post, pueden incluirse todos en el mismo fichero puesto que son elementos que no se suelen modificar después. Incluso los post de un solo blog pueden incluirse en un solo fichero suponiendo que el editor sea únicamente uno.
    Otra solución es un sistema de pila (incluso de árbol), en el que se van añadiendo los post o los comentarios a un fichero intermedio apilados por orden y cada cierto tiempo hacer un bloqueo de los ficheros de texto para actualizarlos, deshaciendo la pila. Más o menos como Analytics o Adsense hacen con los datos de visitas y clicks, por eso se actualiza cada cierto tiempo.
    Otra opción más puede ser meter los ficheros de un mismo blog en un contenedor único (por ejemplo un gzip) al estilo de lo que hacen los ficheros phar para php o los jar para java.
    Por poner un ejemplo, la MySQL lo que hace es tener una serie de ficheros de cache de consultas para devolver resultados sin necesidad de almacenar los datos en la base de datos y cuando se cierra o se anula la persistencia se actualiza.

    Existen otras formas de almacenarlos en ficheros, como las bases de datos sqlite o las viejas dbf (para los que php, python o perl tienen soporte).

    Básicamente, lo importante es no dar acceso a escribir a mismo tiempo a dos usuarios a un mismo fichero, algo que puede solucionarse con un sistema de semáforos y un sistema de pila, si los datos son muy complicados de gestionar en diferentes ficheros.
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 9
    Jajaja, yo también estudié bastante Minix, tengo el Tannenbaum por aquí... :)

    Ya voy pillando el tema más o menos, pero todavía me queda la cuestión de como hacer para sacar los archivos. Con archivos me refiero por ejemplo a los post escritos en mayo de 2007 por poner un ejemplo. Habría que ir mirando tooodos los post, hasta encontrar los que fueron escritos entre esta fecha y esta.

    Abrir 200 o 300 ficheros, leerlos, procesar la información. ¿No parece bastante ineficiente?
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011 editado
     # 10
    Posted By: HackerAbrir 200 o 300 ficheros, leerlos, procesar la información. ¿No parece bastante ineficiente?


    En mi caso, lo que haría aquí sería (con cada blog en un directorio diferente):

    configuracion.txt (Guardar datos de la configuración tipo variable-valor, por ejemplo la plantilla o el nombre del blog)

    {
    [0]: { ["var"]: "nombre", ["value"]: "Mi blog"},
    [1]: ....
    }

    indice-de-posts.txt (Guardar un índice de las entradas al blog, guardando los mismos posts si serán pocos o en otros ficheros si son muchos)

    {
    [0]:{["id"]: 0,["fecha"]: 11111111, ["titulo"]: "Mi post", ["contenido"]: "Este es el contenido de mi post" }
    [1]: ....
    }

    En contenido también podría ser el nombre del fichero a abrir con el contenido del texto. Normalmente guardando el mismo contenido en el índice valdría para una cantidad de posts limitada.
    En caso contrario leyendo los ficheros o el fichero del post que hay que mostrar en ese momento sería suficiente, ya que en un blog, por regla general, muestran un máximo de 10 a la vez. También se pueden cachear los html de esos 10 a la vez hasta que vuelva a modificarse, con lo que no habría que leer los 10 hasta que no se modificase uno de ellos.

    ...y para los comentarios lo mismo.
    Creo que la mejor opción para los comentarios sería crear un fichero de comentarios por cada post, anotando en un campo en el fichero de post el número de comentarios que hay para facilitar esa información sin abrir el fichero. El fichero de comentarios puede llamarse como el [id del post].txt así se sabe cuál hay que leer en cada momento. Y, al igual que en el de posts, se pueden ir añadiendo al final del fichero abriéndolo como append con los campos:
    [id]
    [usuario]
    [email]
    [web]
    [comentario]
    [fecha]

    Currándolo un poquito más se puede optimizar muchísimo mejor, esto sería para una versión fácil.
    Ahora, suponiendo un blog con 10000 posts (bastante grande) y 10 comentarios por blog, tendrías:
    1 fichero config
    1 fichero indice
    10000 ficheros de posts
    10000 ficheros de comentarios

    Todos ellos bastante pequeños.

    Hay que tener en cuenta que la mayoría de los blogs, serán muchísimo más pequeños y en cada directorio pueden guardarse muchos menos.
    En el caso de blogia, yo me imagino que por cada blog almacenará 3 ficheros (aunque esto es hablar por hablar): config, indice (con el contenido), comentarios (de todos los posts con un id_post). Con una buena memoria RAM del servidor creo que funcionaría de forma óptima, al menos para la mayoría de los blogs, teniendo en cuenta que el contenido HTML puede cachearse mientras no cambien entradas y comentarios.

    Sería algo como:
    [CONFIG] (nombre_blog, usuario, contraseña_md5, plantilla, widgets, etc...)
    var
    value

    [POSTS]
    id
    title
    date
    content
    tags
    id_categorie
    stick

    [COMMENTS]
    id
    id_post
    date
    user
    email
    web
    comment
    aproved?

    ¿[CATEGORIES]?
    id
    name
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011
     # 11
    Posted By: HackerYa voy pillando el tema más o menos, pero todavía me queda la cuestión de como hacer para sacar los archivos. Con archivos me refiero por ejemplo a los post escritos en mayo de 2007 por poner un ejemplo. Habría que ir mirando tooodos los post, hasta encontrar los que fueron escritos entre esta fecha y esta.


    Esto no lo había contestado XD

    Con el índice, cargarlo en un array, seleccionar las fechas con el campo [date] y leer los ficheros que corresponden a los mismo registros.
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 12
    Jajaja maravillosa la respuesta. Al final como dijiste en los primeros post lo que estamos es creando una base de datos organizada en ficheros de texto a lo cutre. ¿De verdad es esto más eficiente que usar mysql? XDDD

    Eso si, esto lo veo tremendamente escalable, ya que podemos tener servidores para los distintos contenidos estáticos montados muy fácilmente.
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011
     # 13
    Posted By: HackerEso si, esto lo veo tremendamente escalable, ya que podemos tener servidores para los distintos contenidos estáticos montados muy fácilmente.


    Ahí tienes tu respuesta :wink:

    Personalmente creo que sería más adecuado unas MySQL en casos como el de blogia, más que por eficiencia por comodidad, pero bien planteado, la gestión puede ser mucho más eficiente y más rápido en respuesta. Lo que he puesto arriba es un planteamiento bastante básico y en cuanto creciese un poco probablemente habría que hacer cambios grandes. Bajo sistemas semejantes funcionan, por poner un ejemplo, algunos servicios estatales o de algunas grandes empresas españolas (no debo decir nombres), manejando grandes cantidades de datos. Claro que por otro lado lo programan en COBOL :bro:
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 14
    Entonces tu veredicto de usar texto plano vs mysql para servicios tipo blogia con esa cantidad de visitas (unos 4-5 millones de impresiones mensuales) ¿es? :P
    • CommentAuthorproph
    • CommentTimeMay 20th 2011 editado
     # 15
    Hombre, yo creo que a nivel de consumo de recursos claramente es más eficiente el texto, no hay color. Otra cosa es que te interese tirar de bases de datos por seguridad, comodidad o lo que sea. Si ese el caso tampoco hay problema. Puedes escalarlo a nivel de servidores :dumb:.

    PD: pido disculpas por hacer una aportación tan cutre a un post con tanto nivel :first:Mis cosas: Intercambio de enlaces | Tienda de setas
    •  
      CommentAuthorAntonio
    • CommentTimeMay 20th 2011
     # 16
    Posted By: HackerEntonces tu veredicto de usar texto plano vs mysql para servicios tipo blogia con esa cantidad de visitas (unos 4-5 millones de impresiones mensuales) ¿es?


    Como decía antes, por comodidad probablemente usaría MySQL, pero por eficiencia, mucho mejor el texto plano. Eso sí, hay que currarse bien la estructura con los ficheros y la MySQL ya está programada :tongue:

    Posted By: prophPD: pido disculpas por hacer una aportación tan cutre a un post con tanto nivel


    Hombre, mejor no lo has podido decir y de cutre nada.

    Posted By: prophPuedes escalarlo a nivel de servidores


    Con MySQL es más dificil (que se lo digan a Twitter :dumb:) pero sí es cierto, que por ejemplo con Cassandra o MongoDB se hace muy fácil la escalabilidad.
    •  
      CommentAuthorHacker
    • CommentTimeMay 20th 2011
     # 17
    Muchísimas gracias! Respecto al tema del texto plano creo que ha quedado todo perfectamente aclarado. Vuelvo a impresionarme del nivel del foro y agradecer a Antonio que comparta con nosotros su sabiduría.

    Ahora quiero cambiar un poco el rumbo del hilo.

    Quedándose solo con la eficiencia como factor más importante. ¿Qué creéis que es más eficiente programar usando funciones o usando objetos?

    He encontrado mucha literatura sobre el tema y la mayoría da entre un 5-20% más velocidad a aplicaciones que solo usan funciones. Pero el otro día encontré este artículo y me dejó perplejo.
    •  
      CommentAuthorAntonio
    • CommentTimeMay 21st 2011
     # 18
    Creo que en realidad no hay mucha diferencia, al fin y al cabo los compiladores y los intérpretes funcionan igual con funciones u objetos a la hora de compilar.
    El tema de secuencial o POO creo que está más en con lo que cada uno se sienta más cómodo a la hora de programar. Por ejemplo en mi caso me gusta más la secuencial, muy probablemente porque fue como aprendí y por tanto me desenvuelvo mejor, pero en ciertas cosas me parece más útil la POO, especialmente en proyectos muy grandes, al ir encapsuladas las clases como pildoritas, hace pensar en la aplicación como un todo más fácilmente. En el caso de pequeños proyectos en php yo sigo empleando funciones exceptuando las BBDD que uso PDO (Si ya está programado para qué volverlo a hacer?).
    En los frameworks php que ahora están tan de moda, la mayoría usa POO para toda la aplicación algo que veo muy bien, como decía antes, para grandes proyectos: symphony, codeigniter, cake, zend, etc... Para estos proyectos me decanto por symphony que da más libertad (aunque codeigniter es más sencillo). Para proyectos pequeños me gusta especialmente limonade que es a base de funciones y me parece que facilita mucho el entendimiento de una aplicación sencilla. En POO me gusta Silex (de los mismos que Symphony) pero se complica el aprendizaje.
    Esto de los framworks lo digo porque parece que la inmensa mayoría de los desarrolladores que usan estos frameworks se decantan por el POO, pero viendo los valores de la misma aplicación sencilla el resultado en eficiencia es similar entre POO y secuencial-estructurada. Imagino que a la larga, cuando la mayoría va decantándose por la POO el desarrollo base de PHP optimizará mucho más para este tipo de desarrollo y por tanto terminará siendo más eficiente. En PHP 6 parece que empieza a transformarse en una rama más de java con la forma de escribir clases y objetos y zend está muy volcado por esta vía.

    En resumen, creo que la eficiencia debe ser similar y que hay que contar también con la eficiencia a la hora de programar, curva de aprendizaje y todo eso. Ahora creo que es mejor adaptarse a en lo que uno se sienta más cómodo.
    •  
      CommentAuthorJavi
    • CommentTimeMay 21st 2011
     # 19
    MySQL, parecer ser que desde que lo ha enganchado Oracle, estan trabajando a nivel de clustering... (cosa que me parece muy correcto). A nivel de Frameworks, el que he utilizado y me gustó es CodeIgniter, y la verdad, me sorprendió para bien (emplea el modelo MVC y POO).

    A la hora de tratar el php "puro", me gusta hacerlo Orientado a objectos (aplicando mi modo de trabajar :dumb:) me aporta el orden que me falta, además, que es mas facil de docuemntar y de modificar mas adelante.

    El tema de ficheros y rendimiento del texto plano no tengo ni idea, pero cuidadín con la recurrencia y todo lo que te aporta un gestor de bbdd...
    •  
      CommentAuthorquality
    • CommentTimeMay 21st 2011
     # 20
    Busca por ahí scripts de foros sin base de datos y verás que es fácil el tema de artículos con comentarios.Haciendo Cuentas __ Ayuda Familiar _ _ casas rurales
    •  
      CommentAuthorPedro
    • CommentTimeMay 21st 2011
     # 21
    Para aportar otra experiencia, yo utilizo una combinación de mysql y texto plano. Tengo una web con 12 millones de fichas, almacenadas en una bbdd de varios Gb. Cada vez que se consulta una ficha, se almacena una copia del html resultante en un .txt, y las siguientes veces que se consulte la página, se comprueba la fecha de creación del fichero. Si es menor que x horas, se muestra el fichero, en caso contrario, se actualiza de la bbdd. En resumen lo que es una caché de toda la vida. Los archivos se almacenan en carpetas nombradas con las dos primeras letras del nombre de la página, para evitar alcanzar un hipotético límite de archivos por carpeta. Incluso con índices eficientes y una buena estructura en las tablas de la bbdd, para más de 100 millones de registros, siempre es muchísimo más rápida la lectura de un fichero de caché.

    Respecto al paradigma de programación, también me gusta combinar, en desarrollos muy rápidos siempre estructurado, y para cosas que tengo que modificar más a menudo, pienso orientado a objetos.X-Y.es
    •  
      CommentAuthorquality
    • CommentTimeMay 22nd 2011
     # 22
    Posted By: PedroTengo una web con 12 millones de fichas, almacenadas en una bbdd de varios Gb.
    :shocked: ¡¡Pedro, por Dios!!

    ¿Qué tienes en 12 millones de fichas? tienes fichados a todos los portugueses o qué... :dumb:Haciendo Cuentas __ Ayuda Familiar _ _ casas rurales
    •  
      CommentAuthorHacker
    • CommentTimeMay 23rd 2011
     # 23
    Magníficas respuestas como siempre.

    Ya que veo que hay muy programador de PHP por aquí. ¿Usáis algún IDE en particular para vuestros desarrollos? Veo que mucha gente usa Zend Studio, el problema es que es de pago. Yo por ahora uso eclipse, aunque no me parece lo más adecuado.
    •  
      CommentAuthorAntonio
    • CommentTimeMay 23rd 2011
     # 24
    Posted By: Hacker¿Usáis algún IDE en particular para vuestros desarrollos?


    Para pequeños Geany.

    Para más grandes Netbeans. Este es el mejor, para mí, de los que he probado. La pena es que está hecho en Java y es bastante lento aunque algo más rápido que eclipse (también en Java).

    Muy cómodo para muy pequeños también es Scribes (este solamente está para Linux de momento).
    •  
      CommentAuthorHacker
    • CommentTimeMay 23rd 2011
     # 25
    Pues he probado el Zend Studio y la verdad que me quedo con Eclipse, porque para lo que lo necesito, Eclipse me da lo mismo pero gratis.
    •  
      CommentAuthorPing
    • CommentTimeMay 23rd 2011
     # 26
    Voy a arrojar algo de mi experiencia en este campo.

    Administro una web con 5 millones de visitas al mes y casi 19 millones de impresiones y uso Mysql, soportada por dos servidores pequeños (entorno a 2 gb de ram cada uno) en balanceo de carga, y según mis cuentas aun aguantaría un 40% más de visitas.

    Escucho mucho, sobre soluciones nosql, y esa gente que me lo dice, no gestionan bien las peticiones tanto al servidor como las consultas a la base de datos.

    Hay que realizar una optimización de todo, php, apache, mysql, peticiones http imágenes, etc.


    1º) si tu página tarda medio segundo de media en cargarse, en vez 7 o 8 segundos como pasa en algunos blogs, seguramente puedas atender muchas más peticiones concurrentes.
    2º) Limitar peticiones http. Una web tiene que cargar el fichero html, un css, un javascript y una sola imagen con sprite, de esta forma tendrás 4 archivos para servir, 4 peticiones por cada página. En algunas páginas he visto 50 peticiones entre css, javascrit, imágenes, fondos, etc, multip?icalo por cientos de usuarios y notarás la diferencia.
    3º) Optimizar apache, parámetros de Tunning(todo un mundo)
    4º) Optimizar consultas mysql, y servidor mysql (un mundo mas extenso)
    5º) Usar mysql cuanso sea extrictamente necesario, en mi caso las páginas se generan y se guardan en el servidor en un archivo, cuando una página es requerida no se consulta la bd, se envía el archivo, si la página cambia, se regenera.
    6º) Si tienes una bd muy muy grande, como una tabla de comentarios con millones de filas, pártela en 2 una con los comentarios más recientes y los antiguos (que son muy poco visitados) en otra, generalmente en otro servidor (algo así hace facebook con los comentarios antiguos)

    Hay muchas cosas que puedes cambiar, sin dejar las ventajas de una bd te ofrece.
    •  
      CommentAuthorignatius
    • CommentTimeMay 23rd 2011
     # 27
    Villamarín, Ping, Javi, Pedro :clap:
    Gracias por compartir vuestra experiencia
    •  
      CommentAuthorAntonio
    • CommentTimeMay 23rd 2011
     # 28
    Posted By: Pingalgo así hace facebook con los comentarios antiguos


    Facebook ahora usa Cassandra :webmainer:
    •  
      CommentAuthorHacker
    • CommentTimeMay 23rd 2011
     # 29
    Posted By: Antonio Villamarin
    Facebook ahora usa Cassandra :webmainer:


    Y por si alguien no lo sabe y le es de ayuda, programan en PHP, pero pasan ese código a C++ y lo compilan con g++. Así optimizan al máximo el rendimiento (ellos dicen que un 50%).

    A quien le interesa la página del proyecto (open source) es esta. Por ahí hay un tutorial sobre como pasar por ejemplo un wordpress a c++ :)


    Posted By: PingAdministro una web con 5 millones de visitas al mes y casi 19 millones de impresiones y uso Mysql

    ¿Usas también php? Si es así, ¿qué acelerador/cache usas?
    •  
      CommentAuthorPing
    • CommentTimeMay 23rd 2011 editado
     # 30
    Posted By: Hacker¿Usas también php? Si es así, ¿qué acelerador/cache usas?


    Pues no uso ningun acelerador, está todo programado por mi, genero las páginas, las comprimo y las guardo en el servidor para ser enviadas, si son modificadas se regeneran.

    No puedo recomendarte ningún sistema, no he provado ninguno.
    •  
      CommentAuthorHacker
    • CommentTimeMay 23rd 2011
     # 31
    Posted By: Ping
    Posted By: Hacker¿Usas también php? Si es así, ¿qué acelerador/cache usas?


    Pues no uso ningun acelerador, está todo programado por mi, genero las páginas, las comprimo y las guardo en el servidor para ser enviadas, si son modificadas se regeneran.

    No puedo recomendarte ningún sistema, no he provado ninguno.


    Pues si las páginas las regeneras con cierta frecuencia, échale un vistazo a APC, simplemente con activarlo y sin ninguna modificación a tu código ya puedes tener un incremento notable en rendimiento porque guarda los ficheros .php parseados en binario y eso que te ahorras de procesar.

    Además, lo mejor que tiene es que es el acelerador "oficial" de php y va a venir incluido por defecto en php 6.
    •  
      CommentAuthorPing
    • CommentTimeMay 23rd 2011
     # 32
    Gracias Hacker, lo pongo en mi pila de cosas pendientes por mirar.

    También para los que quieran mirar las consultas más lentas: http://dev.mysql.com/doc/refman/5.0/es/slow-query-log.html

    Saludos.
    • CommentAuthorJcrequena
    • CommentTimeMay 23rd 2011
     # 33
    Yo ultimamente estoy tambien leyendo mucho sobre bases de datos no relacionales (Cassandra de Facebook, BigTable de Google, Dynamo de Amazon...)

    Si todas las grandes usan bases de datos no relacionales por algo sera......
    •  
      CommentAuthorHacker
    • CommentTimeMay 23rd 2011
     # 34
    Por cierto corso, usas tu algún acelerador para php?
    •  
      CommentAuthorCorso
    • CommentTimeMay 23rd 2011
     # 35
    Posted By: HackerPor cierto corso, usas tu algún acelerador para php?


    No. :typeo::: el roce hace el dominio ::
    •  
      CommentAuthorCMV
    • CommentTimeMay 23rd 2011
     # 36
    Posted By: Pingun javascript


    ¿Analytics y Adsense hay alguna forma de juntarlos?
    •  
      CommentAuthorPing
    • CommentTimeMay 23rd 2011
     # 37
    <blockquote><cite>Posted By: CMV</cite><blockquote><cite>Posted By: Ping</cite>un javascript</blockquote>

    ¿Analytics y Adsense hay alguna forma de juntarlos?</blockquote>

    No, que yo sepa no hay forma de juntarlos, pero yo me refiero juntar todos los javascript que se cargan en tu servidor en para reducir el número de peticiones http, por tanto de conexiones, memoria, cpu.

    Adsense y analytics no se cargan en tu servidor, por lo que no consumen recursos, pero si aumetan el tiempo de carga en el cliente.
    •  
      CommentAuthorCMV
    • CommentTimeMay 23rd 2011
     # 38
    Posted By: PingNo, que yo sepa no hay forma de juntarlos, pero yo me refiero juntar todos los javascript que se cargan en tu servidor en para reducir el número de peticiones http, por tanto de conexiones, memoria, cpu.

    Adsense y analytics no se cargan en tu servidor, por lo que no consumen recursos, pero si aumetan el tiempo de carga en el cliente.


    Era más que nada para ver si había alguna manera de mejorar los tiempos de carga de esos js, mera curiosidad.

    Muy buenas aportaciones :clap:
    •  
      CommentAuthorJavi
    • CommentTimeMay 23rd 2011 editado
     # 39
    Posted By: PingAdsense y analytics no se cargan en tu servidor, por lo que no consumen recursos, pero si aumetan el tiempo de carga en el cliente.


    Estaría bien saber si es mejor teer un sisteam de analitica propio alojado en el mismo cluster... si no necesitas de auditoría externa te serviría. El adsense si que no hay nada que hacer :cata2: (de todas formas, la llamada no es asincrona?)

    O algúna interfaz visual para interpretar los datos del servidor :typeo:
    •  
      CommentAuthorDiego
    • CommentTimeMay 23rd 2011
     # 40
    Javi, ¿cómo va el formulario? :dumb: