1 / 15

a fin a l, o q u e é u m S D ?

a fin a l, o q u e é u m S D ?. •. Na U nid ad e I v i m o s t o d a a p a r t e t e ó ri c a d e c o m o s ã o a p r e s e n t a d o s o s S i s t e m a D i s t ribuíd os , de s d e a p a r t e d a “ c a p a” d o s i s t e m a à d e t a l h e s p r e v e n t i v o s d a q u a l i d ad e

Download Presentation

a fin a l, o q u e é u m S D ?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. afinal,oqueéumSD? • NaUnidadeIvimostodaaparteteóricadecomosão apresentadososSistemaDistribuídos,desdeaparteda “capa”dosistemaàdetalhespreventivosdaqualidade edisponibilidadedeserviço; Apartirdestaunidade,iremostrabalharcomaparte • prática adjunto às SDS teorias essenciais para implementaçãode programando adistribuição ascendenteparaaspróximasaulas; UtilizaremosumaarquiteturabaseadaemobjetoscomlinguagemdeprogramaçãoJAVAemnossosexemploscomsockets,processos,nomeação,dentreváriasoutrascaracterísticasquecompõemosSDS; •

  2. afinal,oqueéumSD? • Inicialmenteébomrelembraroquepodeserdefinido como invocaçãoremota baseado na comunicação distribuídaquefoivistaanteriormente; Noentanto,quandoutiliza-seessetermo,subtende-se • queosobjetosexecutemnomesmocomputadorouem computadores separados comunicando-se entre si através de vias denominadas chamadas de métodos remotos–RPC; • Na linguagemJava, a implementação desse conceito APISem Remote surgiunaJDKversão1.1comumpacotede meadosde 1997 que ficou conhecida como MethodInvocation–RMI; Possuisuacoleçãodefinidaemumpacotejava.rmi; •

  3. afinal,oque éumSD? • O pacote de APIS que contém umconjunto de rotinas e bibliotecas configurarem permitem aos profissionais a codificação distribuída através da nomeação de atributos e métodos de acordo com a infraestrutura definidaparaoSD; • A nomeação ocorre, por exemplo, com as primitivas atribuídas, dentre elas “lookup” e “marshalling” que buscam“interagir”aimplementaçãodacomunicação comasredesparaforneceroserviçodeterminado; • Esseserviçoutilizaomodelo decomunicaçãocliente- servidor com aplicações chamadas que gerenciem a da movimentaçãode dosobjetos a partir instanciaçãodeváriasreferênciaseoperações;

  4. afinal,oqueéumSD? • Ofuncionamentotorna-sesimples,poisérealizadode maneira “dividida” seguindo uma ordem para cada “lado”dosistemadeacordocomumasériedepassos; Aidentificaçãodaorigem/destinodoobjetoédefinidacomousodesocketsnoformatodeURLScomafunção • deregistrarosobjetos“publicamente”através darede demais para que sejam apresentados à todos os componentesdoSD: • O serviço de apresentação de nomes para o RMI, é e realizado pelo pacote java.rmi.Naming implementandopelométodoNaming.lookup;

  5. afinal,oqueéumSD? • Jáoregistroé nomesespecial, Sintetizandoa executadoatravésdeumservidorde oRMIRegistry; ideia,osservidorestemafunção • específicadeinstanciarobjetosremotamenteedeixá- los disponíveis parao acessodos componentes de acordocomoserviçobuscado.A“porta”daaplicação evidenciaqualrecursoseráutilizadoouquaisobjetos serãoinvocados; Osclientes,pelocontrário,“pesquisam”pelos . nomes • dosobjetose suas devidas localizações, para qual recursoseráinvocado,deacordocomos parâmetros quesãopassadosàcadanovainstânciadesenvolvida pelosmétodos-pesquisar,comunicareintegrarJVMS;

  6. afinal,oqueéumSD? • Oacessoaosobjetospelasviasdechamadasquesão utilizadaspeloRMI,assimcomonasredes,eparaa própriaprogramaçãoOOérealizadaporinterfaces; • As interfacesnestecontextovisamcompatibilizar (generalizar)osmétodosquepodemserinvocadosde diferentes pontos do sistema e por diferentes dispositivos,masdemaneiraqueopropósitodoserviço nãosejaalteradoduranteesteprocesso; • No RMI, a principal interface é conhecida como InterfaceRemota, objetoremotona realizamtodasas responsávelpelaimplementaçãodo transiçãoemobjetos(proxies)que tarefasnecessáriasparaviabilizara comunicaçãoemrede;

  7. afinal, o que é um SD? • Arquitetura deInvocaçãodeObjetos Remotos;

  8. afinal,oqueéumSD? • ApesardaarquiteturadoRMIsercompostaporobjetos, adivisãoemcamadastambémsetornapresentepara facilitaraabstraçãodosmétodos; ORMIimplementaainvocaçãobasicamenteatravésdetrêsníveisobjetivandofacilitaraprogramaçãodasAPIS • econsequentementeoresultadofinal; Seguindoahierarquiade“programação”,éimportantedestacarcada“camada”,emumaordemdecrescente,daseguintemaneira: • • • • Camada Camada Camada de dede StubseSkeletons; ReferênciasRemotas;Transporte;

  9. afinal, o que é um SD? • Níveishierárquicos do RMI;

  10. afinal,oqueéumSD? ACamadadeStubseSkeletonséconhecidaporestar • “próxima” do programador fornecendo o gerenciamentodiretodasaplicações(objetos)remotas; • Os Stubs são classes utilizadas peloladocliente da aplicação desempenhando afunção de “conectores” entreaaplicaçãoeoobjetosremotosparareceberos parâmetros dos métodosexportados pelos objetos remotoseosencaminhá-losparaoladodoservidor; • Já os Skeletonsrecebem esses parâmetros enviados objetos pelos Stubs e executam as chamadasdos remotosemitindorespostas.Elesrecebemosvaloresde retornodométodoremotoeosdirecionaparaosStubs dos clientes no mesmo formato solicitado anteriormente;

  11. afinal, o que é um SD? • Camadasnumavisão“top-down”;

  12. afinal,oqueéumSD? • A segunda camada, a Camada deReferência,é responsável justamente por mediaro formato da semânticadecomunicaçãodos objetosexistentedentre osStubse osSkeletons; • A função básicaé analisar os dados para enviados e de de recebidos pelose definir “rotas” ecom os dados acordo comos objetos osprotocolos transportedacamada inferior; • Apesar apenas castna de trabalhar como “router”,o RMI suporta omodelode comunicaçãoedistribuiçãouni- maioriadasimplementaçõesdeSDScom“fila” deesperadosdados;

  13. afinal,oqueéumSD? • Aterceiracamada,aCamadadeTransporteabstraias funçõesdetransportecomunsdasredescomfocopara amovimentaçãodosdadosnos OprotocoloutilizadopeloRMI objetos; éoTCP/IP,nachamada • buscapela JVM através dos métodos de invocação locaisoudivididosadjuntosdasinterfacesremotascom a implementação de um protocolodenominado Java RemoteMethodProtocol(JRMP); • Ambos os protocolos formam um conjunto, onde o o primeirodesigna o controlede dados efluxo, e segundopossuicaracterísticasvoltadasparaosobjetos, comoporexemplonousodesocketseexceções;

  14. afinal, o que é um SD? • ImplementaçãodapilhaJRMP;

  15. afinal,oqueéumSD? • Vamosestudaropasso-a-passode comomontarumexemplobásicodeRMIutilizandoa ferramenta dedesenvolvimentoeclipse;

More Related