deSymfony 2013

Dr. Jenkins y Mr. Hyde

Eduardo Gulias y Enrique Torras  · 

Presentación

Vídeo

Transcripción

Extracto de la transcripción automática del vídeo realizada por YouTube.

buenos días a todos muchas gracias por asistir a estas jornadas y ya este caso práctico que lo vamos a presentar que hemos titulado doctor chen qing si míster file vale bueno primero de todo dar las gracias a los patrocinadores ya sabemos que sin ellos pues

sería muy difícil alcanzar estas jornadas que tenemos por delante hoy está en esta charla vamos a presentar las luces y las sombras de la migración de un portal web el de bodaclick en este caso a una arquitectura basada en symphony 2 hemos de movido / la obra

en cinco actos en el primero vamos a presentar a los personajes por donde aparición mister hyde será el primero que esta aplicación antigua la que queremos migrar el doctor jenkings que es la nueva aplicación con arquitectura sin sonidos a la que queremos

llegar a todos hablaremos sobre el doctor jan kees y como lo hemos montado todo sobre un ápice y cómo se comunican las dos aplicaciones pero hace tres hablaremos del lo que es lo primero que montamos y entraremos un poquito en detalle cómo funciona en la parte

del número 4 pues las migraciones ya sabemos qué las migraciones cuando estamos hablando de pasar en arquitectura de otras siempre son muy complicadas sobre todo si tenemos grandes volúmenes de datos y por último pues un caso curioso que nos pasó en él al

servir las v reales a través de la app y utilizando el sistema de aplicación antigua tenemos un problema de tiempos y lo resolvimos a través de reyes entonces os contaremos cómo estaba montado el sistema de rutina antiguo y cómo lo resolvimos los personajes

vamos a ver mister hyde quien es mister hyde mister hyde es hemos hecho antes la aplicación antigua te queremos migrar y queremos transformar en una arquitectura sin comida qué características tiene esta aplicación bueno php cuatro códigos para get como está

ausencia del patrón mvc pues en los ficheros nos encontramos lógica de negocio mezclada con consultas sql con ecos con html bueno un poquito mezclado hay ficheros que están peores hay fichas que están mejores pero no se sigue así que el 4 en 1 es una aplicación

que se inició el desarrollo el año 2000 vale en el 2007 se hizo una reescritura más o menos del 90 por ciento bueno esto quiere decir que a día de hoy todavía tenemos un código estructuras tablas que se siguen usando desde desde el principio del desarrollo

a partes muy antiguas además ha sido desarrollada por más de 25 personas y no hemos seguido un restyling como tal entonces cada programador ha ido dejando su sello en el código y bueno es curioso como ver vemos trozos de código y sabemos quién ha hecho este

script ese trocito tiene cuatro bases de datos cuatro asaltos para toda la aplicación e incluso hay relaciones entre tablas que residen en distintas bases de datos es un código muy grande hemos calculado que tiene más de un millón y medio de líneas de código

no es una cifra exacta pero es algo muy muy grande y si entramos un poquito más en detalle a ver qué es lo que tiene esta aplicación tan grande vemos que está formado por aplicaciones más pequeñas pues tiene un directorio tiene un crm y un ep desarrollado

a dock para la empresa una lista de bodas muchas estadísticas una extranet para los clientes pueden acceder a su información etcétera un cms para gestionar dólares contenidos una área de walt y vida etcétera bueno en definitiva muchas aplicaciones pequeñitas

si la vemos así por separado el problema es que están tan acopladas las pequeñas aplicaciones que de lo único que podemos hablar es de un monolito o monolito enorme bueno no podemos coger decimal por medio del directorio me lo pone un otro sitio no es todo

estaba completamente completamente unido es que bueno pues tenemos un código qué problema tenemos con este código bueno pues es un código muy difícil de entender cualquiera que llega a dejar el código seguir la lógica es algo muy complicado no le cuesta a

la gente que entré a la empresa le cuesta aprender además cuando nos solicitan nos piden una nueva funcionalidad tardamos más tiempo del deseado en hacerla y por supuesto el esperado por negocio eso da igual lo que hagamos se va a ser más más lento es un código

muy propios errores y además la arquitectura que tenemos es poco escalable pues lo que queremos es pues mirarla a una arquitectura sin fondos bueno podría decir vale pues vamos en este avión que es el que queremos transformar aterriza el avión me cojo el bueno

y tiró p'alante ya tengo todo montado bueno no es tan fácil tenemos que en vuelo lo podemos aterrizar transformarnos es decir transformar la aplicación que tenemos a la nueva arquitectura es lo que quiere decir pues que durante cierto tiempo ambas arquitecturas

van a tener que estar funcionando las dos comunicándose integrándose en ciertos en ciertos momentos y en algunos casos deberán acceder a los mismos a los mismos datos si es que bueno ahí está el reto en que las dos funciones a la vez funcionen bien bueno ahora

vamos a presentarnos al doctor jean king que nos cuenta él ahora vaya entonces como ahora creo que no ha sido de lo mejor gracias php 54.53 está avanzando mantenimiento de seguro utilizamos informe21 queremos pasar a los 3 apache mysql pero tres mese cuál

no es la única utilizando también es secular para todo el tema de tres funcionales porque el momento no tenemos ningún coste en que nos impida trabajar en conducir cular para ustedes funcionales además es bastante más rápido utilizamos redes con to end proxy

que es un valor para revisar hasta que revisa que saca incluso un monje de la mente mi club como broker de mensajería y para todo el tema de despliegues y integración continua pues jenkins php y unity capi font y en ésta el doctor singing es la aplicación

nueva está basada también en varios van del privados que hemos utilizado para comparar la lógica la lógica alega también que ahora ahora iremos viendo de todas formas en mi compañero marko ferrari va a estar hablando de toda la arquitectura que tenemos montada

de manders en esta tarde pues para para gestionar todos estos grandes privados pues utilizamos satish para que es más cómodo para para la hora de los despliegues como comentaba mister hyde pues tenemos que hacer estamos haciendo una reescritura desde cero

aunque no lo estemos haciendo completamente desde cero de decir que estamos haciendo una vez de cero luego que dicen los expertos de reescribir desde cero pues suele sportski destacó el flow básicamente dice no lo hagáis es un error estratégico para una compañía

de software y pone el ejemplo de netscape sin embargo pocos días después en startups vale dan mil sen a través d dar meses a un inversor de éxtasis saint en un post que por su título era que te den el spots que nos dice que se pueden hacer escrituras desde

cero que pueden ser exitosas pero nos hace dos advertencias muy importantes una que nos va a tomar muchísimo tiempo y muchísimo más del que estimemos incluso quitando cualquier tipo de de buen feeling que tengamos vamos a tardar mucho tiempo y segundo las

migraciones de datos son lo peor lo peor y ya veremos cómo nos hemos apañado nosotros con esto vale pues como hemos empezado envolviéndolo todo esto en una pista así que tenemos un maravilloso framework esperándonos esperándonos que por donde empezamos pues

vamos a empezar por la gestión de usuarios pero es un sitio donde pues vale guay pues vamos a usar el email como como identificador único así no tenemos que pelearnos con los siete de mysql yo tengo un problema en mi aplicación tengo emails repetidos en mi

tabla de usuarios así vamos a poder usarlo vale pues no pasa nada usamos el registro más nuevo y pisamos la información que si nos queda actualizado vale yo tengo que seguir haciéndolo con mis usuarios me estás hablando de nuevas estructuras de que te vas

a llevar tú todo pero tengo que ir haciendo los mismos usuarios y además mi aplicación es muy grande y hay muchas zonas en las cuales sigo haciendo consultas a estos datos que te quieres llevar a sus aplicaciones datos tienen que estar sincronizados bueno

[ ... ]

Nota: se han omitido las otras 3.924 palabras de la transcripción completa para cumplir con las normas de «uso razonable» de YouTube.