Rest, Gateway e Compiladores

Post on 18-Dec-2014

1.588 views 2 download

description

Presentation of ISIS-NBP project during PyConBrasil 2008

Transcript of Rest, Gateway e Compiladores

REST, Gateways e Compiladores

Rodrigo Dias Arruda Senra PyConBrasil 2008 - RJ

REST, Gateways e Compiladores

Rodrigo Dias Arruda Senra PyConBrasil 2008 - RJ

Apenas um rapaz latino americano...

• Entusiasta de Python

• Desenvolvedor e Projetista GPr Sistemas desde 1996 HI Tecnologia desde 2007

• Engenheiro de Computação Graduação-MSc-PhD IC/Unicamp

Quem está aí ?

Quem está aí ?✓Profissionais de

Informática

Quem está aí ?✓Profissionais de

Informática

✓Desenvolvedores

Quem está aí ?✓Profissionais de

Informática

✓Desenvolvedores

✓Estudantes

Quem está aí ?✓Profissionais de

Informática

✓Desenvolvedores

✓Estudantes

✓Professores

Quem está aí ?✓Profissionais de

Informática

✓Desenvolvedores

✓Estudantes

✓Professores

✓1ª vez na PyConBrasil

Quem está aí ?✓Profissionais de

Informática

✓Desenvolvedores

✓Estudantes

✓Professores

✓1ª vez na PyConBrasil

✓Membros APyBr

Quem está aí ?✓Profissionais de

Informática

✓Desenvolvedores

✓Estudantes

✓Professores

✓1ª vez na PyConBrasil

✓Membros APyBr

• Nenhuma resposta acima!

O Contexto ferramentas ISIS

O Projeto ISIS-NBP

O Problema *Idade

A Solução dá lhe Python!

O Convite http://reddes.bvsaude.org

Anatomia do Blá

O Contexto ferramentas ISIS

O Projeto ISIS-NBP

O Problema *Idade

A Solução dá lhe Python!

O Convite http://reddes.bvsaude.org

Anatomia do Blá

O Contexto ferramentas ISIS

O Projeto ISIS-NBP

O Problema *IdadeFlexibilidade, Interoperabilidade, Compatibilidade, Escalabilidade, Facilidade, Portabilidade,...

A Solução dá lhe Python!

O Convite http://reddes.bvsaude.org

Anatomia do Blá

O Contexto ferramentas ISIS

O Projeto ISIS-NBP

O Problema *IdadeFlexibilidade, Interoperabilidade, Compatibilidade, Escalabilidade, Facilidade, Portabilidade,...

A Solução dá lhe Python!

O Convite http://reddes.bvsaude.org

IPython, Twisted, Django, PyOpenSSL, PyCrypto, PLY,... e grande elenco!

O Mundo ISIS

O Mundo ISIS

1975 - CDS/ISIS (VAX)

1985 - Micro-ISIS (DOS),CISIS (Unix/DOS), Isis-Pascal

1995 - ISIS_DLL, WinISIS, JavaISIS, WWWISIS

2005 - WXIS, GenISIS, WebLIS, OpenISIS (PHP)

2008 - J-ISIS (Java), ABCD(PHP+CISIS)

2009 - ISIS-NBP 1.0 (Python)

O Mundo ISIS

O Mundo ISIS

O Mundo ISIS

O Mundo ISIS

O Mundo ISIS

O Mundo ISIS

• chaves inteiras (registro e campo)• chave letra (subcampo)• hierarquia limitada (4 níveis)• repetibilidade e linguagem de formatação

MFN: 169: Paper on: <plant physiology><plant transpiration><measurement and instruments>

70: Magalhaes, A.C.70: Franco, C.M.44: Methodology of plant eco-physiology: proceedings of the Montpellier Symposium

50: Incl. bibl.24: Techniques for the measurement of transpiration of individual plants26: ^aParis^bUnesco^c-196530: ^ap. 211-224^billus.

Modelo de Dados ISIS

Master File (.mst)

...

Control Record

Data Record

Data Record

Data Record

Layout das Bases ISIS

Master File (.mst)

...

Control Record

Data Record

Data Record

Data Record

Layout das Bases ISIS

Leader Section

Directory Section

Raw Data Section

Master File (.mst)

...

Control Record

Data Record

Data Record

Data Record

Layout das Bases ISIS

Master File (.mst)

...

Control Record

Data Record

Data Record

Data Record

Layout das Bases ISIS

1

2

3

4

5

6

...

(.xrf)

Master File (.mst)

...

Control Record

Data Record

Data Record

Data Record

Layout das Bases ISIS

1

2

3

4

5

6

...

(.xrf)

Arquitetura de Aplicações

Projeto ISIS-NBP

Engine

Database

Console Gateway

Projeto ISIS-NBP

Engine

Database

Console GatewayIPython

Projeto ISIS-NBP

Engine

Database

Console Gateway

PyOpenSSL, PyCrypto

IPython TwistedSSH

HTTP

Projeto ISIS-NBP

Engine

Database

Console Gateway

PyOpenSSL, PyCrypto

IPython Twisted

OIM

SSH

HTTP

ISIS native DB

Projeto ISIS-NBP

Engine

Database

Console Gateway

PyOpenSSL, PyCrypto

IPython TwistedDjango

OIM

SSH

HTTPXML-RPC

ISIS native DB

Projeto ISIS-NBP

Engine

Database

Console Gateway

PyOpenSSL, PyCrypto

IPython TwistedDjangoPLY

OIM

SSH

HTTPXML-RPC

ISIS native DB

Projeto ISIS-NBP

Engine

Database

Console Gateway

PyOpenSSL, PyCrypto

IPython TwistedDjangoPLY

nosetest

OIM

SSH

HTTPXML-RPC

ISIS native DB

Projeto ISIS-NBP

Engine

Database

Console Gateway

PyOpenSSL, PyCrypto

IPython TwistedDjangoPLY

nosetest

OIM

SSH

HTTPXML-RPC

ZODB, Durus,...

ISIS native DBBDB, XML,...

RSS, OAI-PMH

JSON

WebDAV

Twisted + Djangofrom django.conf import settingssettings.configure(DEBUG=True, DEFAULT_CHARSET=config.OUTPUT_ENCODING, ROOT_URLCONF = 'pyisis.web.urls', INSTALLED_APPS = ('django.contrib.contenttypes', ...), MIDDLEWARE_CLASSES = ('CommonMiddleware',...), ...)wsgires = wsgi.WSGIResource(AdminMediaHandler(WSGIHandler()))res = log.LogWrapperResource(wsgires)log.FileAccessLoggingObserver(config.WEB_LOG).start()site = server.Site(res)reactor.listenTCP(config.HTTP_PORT, channel.HTTPFactory(site))

Demo !

Demo !

Dá tempo de vero Python em ação ?

É possível ?Seria pedir muito ?

Arquitetura ISIS-NBP

Arquitetura ISIS-NBP

Arquitetura ISIS-NBP

Obrigado a todos pela atenção.

Rodrigo Dias Arruda Senrahttp://rodrigo.senra.nom.br

rsenra@acm.org

As opiniões e conclusões expressas nesta apresentação são de exclusiva responsabilidade de Rodrigo Senra.

Não é necessário requisitar permissão do autor para o uso de partes ou do todo desta apresentação, desde que não sejam feitas alterações no conteúdo reutilizado e que esta nota esteja presente na íntegra no material resultante.

Imagens e referências para outros trabalhos nesta apresentação permanecem propriedade daqueles que detêm seus direitos de copyright.