tecnología de inmobiliarios.com.ve

Post on 02-Jul-2015

11.543 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentación dada en el año 2007 en Perl Mongers sobre la interesante tecnología que desplegamos para el sitio http://inmobiliarios.com.ve/, que nos permitió demostrar la aplicación de técnicas de búsqueda vertical sobre sitios web inmobiliarios del mercado venezolano.

TRANSCRIPT

Motor... Caja... Carrocería... Accesorios... Estadísticas

La Tecnología tras Inmobiliarios.com.ve¿Qué hace funcionar al Buscador Inmobiliario de

Venezuela?

Ernesto Hernández-Novich <emhn@inmobiliarios.com.ve>Luis E. Muñoz <lem@inmobiliarios.com.ve>

Inmobiliarios.com.ve

agosto, 2007 / Perl Mongers, Caracas

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

Agenda

1 Motor...

2 Caja...

3 Carrocería...

4 Accesorios...

5 Estadísticas

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

Software de Inmobiliarios.com.ve

Todo el software que usamos es libreTodos los procesos de la operación son automáticos . . .

. . . la instalaciónTodo el software está en paquetes Debian.. . . despliegueLas estructuras de base de datos se generanprogramáticamente.. . . las pruebas de regresiónPruebas automatizadas sobre todos los aspectos del sitio web.

No, no necesitamos ISO-9000, gracias

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

PostgreSQLMotor de base de datos

El mejor y más completo manejadorde base de datos relacional, libre . . .

. . . cumple con todos los estándares

. . . 100% ACID, fuera de la caja

. . . se inicia el desarrollo en los 80 –más de 7 años de evolución en el core

Replicación SM-MS con promociónautomática – 3 seg de latenciaobservada sobre Internet públicoProcedimientos almacenados en varioslenguajes, incluyendo PerlManejo eficiente de contenidono-escalar, como fotos

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

Debian/GNU LinuxLibertad bajo el capó

No tenemos que preocuparnos por lalicencia: Todo es libreLa más ámplia cobertura de CPAN ensistemas Linux – lo que falta se instalacon dh-make-perl

Abundantes herramientas de controlde calidadSoporte multi-plataforma perfecto:Servidores idénticos bajo arquitecturasIntel y PPCHerramientas para construcción ydistribución de paquetes

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

DBIx::Class + SQL FairyAceleración del desarrollo

Nuestros programas no contienen SQL– sólo PerlCrear el esquema de base de datos esmuy simple. . .

$ ch−dep l oy −−with−drop

Podemos usar bases de datos máslivianas en nuestros equipos personalesy de desarrollo sin cambiar elcódigo. . .. . . de hecho, cualquier base de datossoportada por DBI

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

mod_perl + Apache Web ServerMás kilómetros por litro

Seguridad y confiabilidadHacemos modificaciones profundas enla forma de atender las peticiones webPersistencia. . .

. . . conexiones a la base de datos

. . . en los programas

. . . en las plantillas, ayudando aHTML::Template

Configuración simple, junto a la deApache

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

CGI::Application¿Para qué retroceso?

Aplicaciones web simples, basadas enestadosMenú de plugins para muchasfunciones . . .

. . . autenticación

. . . CAPTCHAMínima exposición de información

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

Template::Toolkit + HTML::TemplateLatonería y pintura

El layout del sitio se generaestáticamente, cuando hay cambiosque lo requierenLas aplicaciones mantienen laseparación con la vista – look & feeluniformeEl contenido puede guardarse dondetenga más sentido: Archivos planos obase de datos

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

Test::More

Arnés de prueba que acompaña a las aplicacionesFácil de usar – muchas pruebas en poco código . . .@rs = $schema−>rate_data ( ’ n1 ’ ) ;i s ( $ r s [ 0 ] , 5 , ’ C o r r e c t count o f r a t i n g s ’ ) ;i s ( $ r s [ 1 ] , 3 , ’ C o r r e c t ave rage o f r a t i n g s ’ ) ;i s ( $ r s [ 2 ] , 15 , ’ C o r r e c t sum o f r a t i n g s ’ ) ;

. . . no sólo prueban el software . . .l i k e ( $msg−>head−>get ( ’ Reply−To ’)−>unfo ldedBody ,

qr /^<? i c v \ . t e s t e r \ @foo \ . com>?/ i ," $s : Reply−To s e t to the s e n d e r " ) ;

l i k e ( $msg−>head−>get ( ’To ’)−>unfo ldedBody ,qr /^<? i c v \ . t e s t e r \ @foo \ . com>?/ i ," $s : To s e t to the i n v i t e e " ) ;

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

WWW::Mechanize

Fácil acceso al contenido web, siguiendo todos los estándaresIntegración elemental con otros módulos útiles . . .Útil para generar casos de prueba . . .my $ j a r 1 = HTTP : : Cook ies−>new ( ) ;my $mech1 = Test : :WWW: : Mechanize−>new

( c o o k i e _ j a r => $ j a r 1 ) ;$mech1−>get_ok ( " h t tp : // $s . i n m o b i l i a r i o s . com . ve /" ,

" $s : H i t 1" ) ;$ j a r1−>scan (\& cb_check_cookie ) ;

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

La magia de /quiero. . .

Espacio web virtual, generado para ayudar al usuario y aGoogleManipulación del URL para mantener legibilidad – RESTEl más rápido acceso posible a la búsquedahttp://inmobiliarios.com.ve/quiero/apartamento/ya

Compatible con cualquier navegador webImplementación ligera – mínimo consumo de recursos

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Motor... Caja... Carrocería... Accesorios... Estadísticas

Algunas estadísticas.... . . al 14 de agosto del 2007

Líneas de código: 9987Funciones / métodos: 144Líneas / método: 6.3Complejidad de McCabe: 6.35 (main), 1.6 (métodos)Pruebas

Calidad y correctitud de código: 3577Regresión: 794Líneas de código: 8626

Velocidad de desarrolloAproximadamente 180 horas hombre en ingeniería de softwarePrimer commit: enero 28, 2007Último commit: agosto 14, 2007639 revisiones (Una nueva versión cada 3 días)

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

top related