Categorías
Nuestros Proyectos WordPress

WordPress para grandes proyectos: Escalabilidad

En SI2 usamos WordPress como framework para proyectos bastante “más grandes” que un blog personal o una pequeña página de presentación corporativa, desarrollando funcionalidad a medida, integrándonos con sistemas externos mediante webservices, o con otros componentes de una plataforma mayor que forme parte del proyecto: por ejemplo, consumiendo e insertando información con plataformas móviles iOS y Android desarroladas por nosotros mismos, o por terceros.

Cuando trabajamos en este tipo de proyectos a veces aparecen las preguntas casi inevitables: ¿Qué tal escala WordPress? ¿Cómo se porta cuando hay muchos datos y/o muchos usuarios? ¿Podremos crecer? ¿Me puedes dar referencias de sitios “muy grandes” hechos con WordPress? ¿No es WordPress el mejor para “sitios pequeños”?

En realidad, nosotros pensamos que las preguntas no son del todo correctas, ya que se mezcla el CMS (donde WP puede tener la culpa o la virtud, nosotros pensamos que lo segundo) con otros aspectos como son:

El front-end

“Es que necesitamos un sitio que no parezca un blog”. ¡No hay problema! Si el proyecto lo requiere (y tiene presupuesto, éste es otro asunto), nosotros diseñamos desde 0, “en papel” (o partimos de tu diseño o el de tu equipo), maquetamos en HTML5+CSS3, validamos, y después es cuando construimos el theme de WordPress. Es decir, tenemos unos ficheros estáticos html que podremos “convertir” en un WP, en un Drupal, en un Joomla… Da igual. Bueno, no da igual, nosotros preferimos WordPress, porque conocemos bien su interior (y nos encanta casi todo), y además es más sencillo (gastas menos horas, gastas menos dinero).

El modelo de datos

WP no es solo posts y pages, desde hace ya bastante tiempo. Podemos definir “entidades” (Custom Post Types), que contengan los campos que queramos (Custom Fields), categorizadas de la forma que queramos (Taxonomies); incluso relacionarlas entre ellas, estableciendo jerarquías (esta entidad es hija de esta otra), o relaciones (ésta entidad sigue a ésta otra, y a su vez es seguida por ella). Todo esto es posible.

La administración

Dudamos que haya un CMS libre con tal relación de potencia y facilidad de uso en su backend… Pero es que, llegado el caso, si necesitamos por ejemplo definir algún flujo de trabajo para publicación, o un panel de usuario (distinto del admin estandar de WP), ¿qué nos impide desarrollar una pequeña área privada en el front, y programar esto a medida? Hacer este tipo de cosas es realmente fácil (si sabes cómo, si tienes claros los conceptos). Cogemos de WordPress todo lo que nos da, pero nada impide extenderlo con desarrollo propio, el límite está en la necesidad.

La escalabilidad

Ahora sí, ya hemos construido un gran proyecto que se prevé tenga un uso masivo en el futuro y que, por tanto tenga esta “propiedad deseable de un sistema, una red o un proceso, que indica su habilidad para reaccionar y adaptarse sin perder calidad, o bien manejar el crecimiento continuo de trabajo de manera fluida, o bien para estar preparado para hacerse más grande sin perder calidad en los servicios ofrecidos” (Wikipedia). ¿Es WordPress escalable? Yo preguntaría: ¿lo son los demás? 😉 Seguramente las respuestas serían muy similares con cualquier CMS robusto:

  • Distribuir la infraestructura (por ejemplo, separar la base de datos en otro(s) servidor(es): https://wordpress.org/plugins/hyperdb/)
  • Usar sistemas de cache, CDN’s,…
  • Utilizar Nginx en lugar de Apache (sumado a sistemas de caché optimiza muchísimo el rendimiento, el coste de servir una página).

WordPress tiene soporte nativo y gracias a unos plugins de su fantástica comunidad para dar respuesta a muchas medidas que optimizarán y permitirán su uso por un alto número de usuarios concurrentes. Evidentemente, no al coste de un pequeño sitio web personal, pero probablemente con un coste en infraestructura por usuario mucho menor que un Open CMS, por poner un ejemplo.

Javier Casares y Ernesto Gámez entran algo más en detalle en este pdf de la meetup de mayo 2014 de WP Barcelona, es muy interesante su lectura (algunos de los datos de este artículo vienen de ahí, precísamente).

Usan WordPress sitios como:

Estos sitios reciben cientos de miles de visitas mensuales.

WordPress no es solo para Blogs

Aunque no parece haber mucha duda de que es el mejor CMS para construir sitios relacionados con noticias, se pueden ver ejemplos en los que se utiliza WordPress de forma inteligente para construir sitios web de muy diferentes características:

Algunos datos globales

Hay una tendencia clara en el mercado de los CMS. A día de hoy, WP se usa en más del 60% de los sitios que usan un CMS estándar, Drupal está en el tercer puesto, por debajo de Joomla, con un poco más del 5%).

Si bien se trata de cifras globales, donde hay sitios “pequeños” y “grandes”, esto da una idea de la experiencia acumulada. Si algo puede suceder, ya ha ocurido en WP, y muy probablemente estará documentado.

1 respuesta a «WordPress para grandes proyectos: Escalabilidad»

En general creo que WordPress está infravalorado, lo digo porque yo mismo lo subestimaba hasta hacía unos meses, quizás por el concepto de blog en el que para algunos se ha quedado estancado.

Pero qué esperar cuando en algunas asignaturas era el concepto que nos inculcaban: utiliza WordPress cuando quieras sacar un blog o un mini-site corporativo.

¿Y por qué no para algo más grande?

Si WordPress no viene “tal cual” preparado para cubrir ciertas necesidades, siempre puedes adaptarlo a tu manera en lugar de hacerlo desde cero cuanto el presupuesto no puede cubrir una programación 100% a medida.

Incluso no tiene por qué hacerlo uno mismo, es increíble la comunidad de desarrollo libre que tiene WordPress detrás y que te facilitará encontrar elementos que se pueden reutilizar en un determinado proyecto, eso es algo de lo que otros grandes CMS carecen, de una comunidad de semejante volumen.

Claro está que ni todo es blanco y debe hacerse todo con WordPress, ni todo es negro y hay que dejarlo al margen por considerarlo un sitio para blogs, pero a día de hoy y por experiencia propia, no me cabe duda de que WordPress puede cubrir, con más o menos trabajo, cualquier proyecto que se me ha presentado independientemente de su tamaño, y que por mucho trabajo que sea, será menos que el de una programación a medida u otros CMS.

Aunque por supuesto y como todo, también depende de las manos en las que cae una herramienta así: hoy día y gracias a lo que he aprendido de algunos compañeros creo que puedo sacarle más provecho o tardar menos que hace meses, ese ha sido el factor diferencial para cambiar el chip y decidir darle una oportunidad más a fondo y a menudo.

Así que nada, sólo puedo dar fe de lo expuesto, y espero que algún otro desarrollador que haya pasado por mi misma experiencia repita conmigo:
No volveré a infravalorar a WordPress sin conocerlo a fondo.
No volveré a infravalorar a WordPress sin conocerlo a fondo.
No volveré a infravalorar a WordPress sin conocerlo a fondo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *