Sunteți pe pagina 1din 3

SistemasDistribuídos­2ºSemestre

JAVAEE(JavaEnterpriseEdition):éumconjuntodeespecificaçõesdestinadosa

facilitaracriaçãodeaplicações"Enterprise"(aplicaçõesqueempresasusam)em

Java.Ex.:JBoss,Glassfish

WebContainer:

ofereceserviçosparaparaogerenciamentoeaexecuçãode

componentesweb(servlets,JSP,spáginasJSF )ex:TOMCATJetty

Servlets­SãocomponentesJavaexecutadosnoservidorquetemoobjetivodegerar

conteúdo(HTMLeXML)dinâmicoparaweb.

JavaServerPages(JSP)­EspecializaçãodeservletsquepermiteaplicaçõesemJava

seremmaisrobustasetenhamfacilidadesnodesenvolvimento.

JavaServerFaces(JSF)­ÉframeworkwebcomopadrãoMVC(Model,VieweController)

baseadoemJavaqueajudaasimplificarodesenvolvimentodeinterfaces(telasdosistema)

atravésdeummodelodeUI.

atravésdeummodelodeUI. EJBContainer ​ : ​

EJBContainer:ResponsávelpelogerenciamentodaexecuçãodosEnterpriseBeans,

contendoacamadalógicafuncionaldesuaaplicaçãoJavaEE.

EnterpriseBeans:Partesdeumaaplicaçãoqueimplementamlógicadenegóciooucódigo

depersistência.

EJBxInjeção:

EJBtemumpool,jáficapré­instanciadonamemória,ficandoprontoparaserconsumido,

tendoumaconexãojápronta.Vantagens:maisrápido,permiteescalabilidade,loadbalance

Injeção:serveparareferenciaroobjetoqueestanoContainer,masémaislentoenão

permiteescalabilidade.Vantagens:émaiseficienteparainjetarDAO.

JNDI(JavaNamingandDirectoryInterface):éumaAPIdoJavaquepermitecomque

clientesdesoftwaresdescubrameprocurempordadoseobjetosatravésdeumnome.

ORM(ObjectRelationalModel)&JPA(JavaPersistenceAPI)

JPAéumframeworkdepersistênciadedadospadrãodalinguagemJava,possuindoo

papeldedefinirummeiodemapeamentoobjeto­relacionalparaqueainformaçãopossa

transitarentreobancodedadoseocontainerEJB,atravésdeanotaçõesnocódigo.

(ImplementaçõesdeJPA:Hibernate,Toplink).

ORMéoconceitoouprocessodeconverterdadosdeumalinguagemorientadaaobjetos

paraDBrelacionalevice­versa.

SincronizaçãodeRelógio

Asincronizaçãoemsistemasdistribuídosémaiscomplicadadoqueemsistemas

centralizadosporqueemsistemasdistribuídosénecessárioutilizaralgoritmosdistribuídos.

Nãoéusualmentepossível(oudesejável)coletartodasasinformaçõessobreosistemaem

umúnicolugaredepoisquealgunsprocessosexaminem­naetomemumadecisãocomoé

feitonocasocentralizado.

Emgeralalgoritmosdistribuídospossuemasseguintespropriedades:

a. Ainformaçãorelevanteestáestaespalhadaemmúltiplasmáquinas;

b. Processostomamdecisõesbaseadassomentenasinformaçõeslocais;

c. Umúnicopontodefalhanosistemadeveserevitado;

d. Nãoexisteumrelógioemcomumououtrotipoprecisodetempoglobal.

RelógiosLógicos:Soluçãoparasincronizarrelógiosemsistemasdistribuídos,quetoma

comobaseasequênciadeeventosenãootempo,fazendocomqueossistemassejam

baseadosnotemporelativoaesseconceito.

Clockskew:assincroniagradualdosrelógioslógicos

RelógiosFísicos:

NTP(NetworkTimeProtocol):

Protocoloparasincronizaçãodosrelógiosdoscomputadores

baseadonoUDPparasincronizaçãodorelógiodeumconjuntodecomputadoresemredesde

dadoscomlatênciavariável.ONTPpermitemanterorelógiodeumcomputadorcomahora

semprecertaecomgrandeexatidão

FunçõesdosRemotes:

Basic:utilizadoparaarmazenarobjetosbásicosquepoderiamserreutilizadosemoutros

projetosdeoutrasplataformasJava,porexemplo:android,swingeoutros;

Core:utilizadoparaguardarasinterfacesdeserviçosEJBeoutrosserviçosquepossuem

dependênciadaarquiteturaJavaEE;

Service(ouEJB):possuitodasasimplementaçõesdeserviçosEJBsassimcomoacessoa

bancodedadoseregrasdenegócioemgeral.Oacessoabancodedadospoderiaficar

separado,porém,nãoiremosreutilizarissoemoutrosprojetos,logo,paranossotutorial,é

deboautilidadequeestejanestepacote;

Restful(ouWeb):possuiinterfacesdeacessoàcamadadeserviçosEJBs(regrasde

negócios).Essaimplementaçãopodecontemplarinterfaceswebconvencionais,como

PrimeFaces,JavaServerFaces,JSPeoutros;assimcomo,podeoferecerrecursosde

Restfule/ouWebService.Nestetutorial,éapresentadooRestfuldentrodopadrão

HATEOASafimdeilustraroacessoexternoaosdadoseasregrasdenegócio,istocom

suportenativodoGlassfishpelabibliotecaJersey,nocasodoJBoss(Wildfly)essesuporte

seriadadopelabibliotecaRestEasy.Porsetratardeumaespecificação,cabeaoarquiteto

analisarosrequisitoseescolherasmelhoresinterfacesebibliotecasaseremutilizadas;

Enterprise:móduloqueapenasespecíficacomoosdemaismódulosdeveramser

empacotadoseconfiguradosparaumfuturodeploynoservidordeaplicação.