WebSphere extreme Scale Versão 7.1 Guia de Programação. Guia de Programação do WebSphere extreme Scale



Documentos relacionados
WebSphere extreme Scale Versão 7.0 Guia de Programação. Guia de Programação do WebSphere extreme Scale

WebSphere extreme Scale Versão 7.1 Guia de Administração. Guia de Administração do WebSphere extreme Scale

Guia de Instalação do Complemento do IBM Business Process Manager para Microsoft SharePoint

Noções de. Microsoft SQL Server. Microsoft SQL Server

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇOS IMPRESSÃO. Professor Carlos Muniz

Guia de Administração de Pagamento de Frete

Guia de Instalação do Complemento do IBM Business Process Manager para Microsoft Office

MQSeries Everyplace. Leia-me primeiro G

Amostras e Tutoriais Versão 7 Release 5. Tutorial da Amostra de Contratação para o IBM Process Designer

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS

Administração do Windows Server 2003

Polycom RealPresence Content Sharing Suite Guia rápido do usuário

Procedimentos para Reinstalação do Sisloc

Instruções de Instalação do IBM SPSS Modeler (Licença Simultânea)

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz

Guia de instalação Command WorkStation 5.6 com o Fiery Extended Applications 4.2

Sumário 1. SOBRE O NFGoiana DESKTOP Apresentação Informações do sistema Acessando o NFGoiana Desktop

Manual de Instalação do Agente Citsmart

Polycom RealPresence Content Sharing Suite Guia rápido do usuário

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede

Instalando, configurando e utilizando a Área de trabalho remota via Web

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

Instalação e utilização do Document Distributor

Capture Pro Software. Introdução. A-61640_pt-br

Guia de instalação Command WorkStation 5.5 com o Fiery Extended Applications 4.1

Tutorial de TCP/IP Parte 26 Criando Registros

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

Manual do PolicyKit-kde. Daniel Nicoletti Tradução: Luiz Fernando Ranghetti

Procedimentos para Instalação do Sisloc

Instruções de Instalação do IBM SPSS Modeler (Licença de Usuário Autorizado)

Logística e Operações: Arquivos de Ajuda Online

2 de maio de Remote Scan

Instalação do IBM SPSS Modeler Server Adapter

CONFIGURAÇÃO MINIMA EXIGIDA:

MANUAL C R M ÍNDICE. Sobre o módulo de CRM Definindo a Campanha... 3

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Configuração do Servidor DHCP no Windows Server 2003

Escritório Virtual Administrativo

IBM Tealeaf cxreveal Versão 9 Release de dezembro de cxreveal: Manual do Usuário

Guia de Instalação e Inicialização. Para WebReporter 2012

Instalando e usando o Document Distributor 1

INSTALAÇÃO DO MICROSOFT WINDOWS SHAREPOINT SERVICES 2.0

COMPARTILHAMENTO DO DISCO E PERMISSÕES DE REDE PÚBLICAS E DE GRUPOS DE TRABALHO.

MANUAL DE CONFIGURAÇÃO DO BACKUP

Introdução ao Tableau Server 7.0

Usar Atalhos para a Rede. Logar na Rede

Instruções para Instalação dos Utilitários Intel

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz

1. Escritório Virtual Atualização do sistema Instalação e ativação do sistema de Conexão...5

GUIA RÁPIDO SISTEMA ANTIFURTO THEFT DETERRENT

Leia-me do Licenciamento em Rede

Curso Básico Sistema EMBI

Guia de administração para a integração do Portrait Dialogue 6.0. Versão 7.0A

TRBOnet MDC Console. Manual de Operação

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

Versão /10. Xerox ColorQube 9301/9302/9303 Serviços de Internet

ArcSoft MediaConverter

Manual AGENDA DE BACKUP

Treinamento. Módulo. Escritório Virtual. Sistema Office. Instruções para configuração e utilização do módulo Escritório Virtual do sistema Office

Atualizaça o do Maker

WordPress Institucional UFPel Guia Rápido

Guia de início rápido do Powersuite

Capture Pro Software. Guia de referência. A-61640_pt-br

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS COTAS DE DISCO. Professor Carlos Muniz

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

Print Audit 6 - Instalação do SQL Server 2008 express R2

Instalação e Configuração do AD DS no Windows Server 2012 R2 INSTALAÇÃO DO SERVIÇOS DE DOMÍNIO DO ACTIVE DIRECTORY (AD DS)

Qlik Sense Desktop. Qlik Sense 1.1 Copyright QlikTech International AB. Todos os direitos reservados.

Certificado A1 Manual de Renovação online

Um Driver NDIS Para Interceptação de Datagramas IP

Manual de Instalação

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

LEIA ISTO PRIMEIRO. IBM Tivoli Configuration Manager, Versão 4.2.1

Guia de Inicialização para o Windows

Aplicativo da Manifestação do Destinatário. Manual

V.1.0 SIAPAS. Sistema Integrado de Administração ao Plano de Assistência à Saúde. Contas Médicas

Manual de operação. BS Ponto Versão 5.1

Obs: É necessário utilizar um computador com sistema operacional Windows 7.

Auxiliar de instalação (Português Brasileiro) Primeiros passos

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Manual de Administração

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

Turma. PowerPoint 2003

Visão Geral do Produto

MANUAL EXPORTAÇÃO IMPORTAÇÃO

Manual de Utilização COPAMAIL. Zimbra Versão 8.0.2

O sistema está pedindo que eu faça meu login novamente e diz que minha sessão expirou. O que isso significa?

NetEye Guia de Instalação

Instruções para instalação do Virtual Lab (ChemLab 2.5 ou Physics 3.0)

Sistema de Recursos Humanos

Agente Administrativo do MTE

MANUAL DO GERENCIADOR ESCOLAR WEB

Professor: Macêdo Firmino Disciplina: Redes de Computadores II

Transcrição:

WebSphere extreme Scale Versão 7.1 Guia de Programação Guia de Programação do WebSphere extreme Scale

Esta edição aplica-se à ersão 7, release 1, do WebSphere extreme Scale e a todos os releases e modificações subsequentes até que seja indicado de outra forma em noas edições. Copyright IBM Corporation 2009, 2010.

Índice Figuras............... Tabelas.............. ii Sobre o Guia de Programação..... ix Capítulo 1. Introdução ao WebSphere extreme Scale............ 1 Capítulo 2. Preparando para Desenoler Aplicatios........ 7 Interfaces de Programação do WebSphere extreme Scale................. 7 Considerações do Carregador de Classes e do Caminho de Classe............ 8 Configurando um Ambiente de Desenolimento.. 8 Executando um Aplicatio Cliente ou do Seridor do WebSphere extreme Scale com o Apache Tomcat no Rational Application Deeloper...... 10 Executando um Aplicatio Cliente ou do Seridor Integrado com o WebSphere Application Serer no Rational Application Deeloper........ 12 Capítulo 3. Acessando Dados com Aplicatios Cliente......... 15 interface ObjectGrid........... 15 Interface BackingMap........... 18 Conectando-se ao ObjectGrid Distribuído.... 22 Interação com um ObjectGrid Usando o ObjectGridManager............ 23 Métodos createobjectgrid........ 23 Métodos getobjectgrid......... 28 Métodos remoeobjectgrid........ 28 Controlando o Ciclo de Vida de um ObjectGrid 29 Acesso ao Shard ObjectGrid........ 31 Acessando Dados no WebSphere extreme Scale.. 31 Boas Práticas de CopyMode........ 34 Mapas de Matriz de Byte......... 40 Uso de Sessões para Acessar Dados na Grade... 42 SessionHandle para Roteamento...... 46 Integração de SessionHandle....... 47 Objetos de Armazenamento em Cache sem Relacionamentos Enolidos (API ObjectMap)... 50 Introdução ao ObjectMap......... 50 Mapas Dinâmicos........... 54 ObjectMap e JaaMap.......... 57 Mapas como Filas FIFO......... 58 Objetos de Armazenamento em Cache e seus Relacionamentos (API EntityManager)..... 61 Definindo um Esquema de Entidade..... 61 EntityManager em um Ambiente Distribuído.. 72 Interagindo com EntityManager...... 76 Suporte ao Plano de Carregamento do EntityManager............ 82 Impacto do Desempenho da Interface EntityManager............ 86 Filas de Consulta da Entidade....... 89 Interface EntityTransaction........ 94 Tutorial do Entity Manager: Visão Geral.... 94 Recuperando Entidades e Objetos (API de Consulta) 94 Consultando Dados em ários Fusos Horários.. 98 Inserindo Dados para Fusos Horários Diferentes 100 Uso da API ObjectQuery........ 100 API de Consulta EntityManager...... 105 Referência para Consultas do extreme Scale.. 109 Ajuste de Desempenho de Consulta..... 120 Usando Objetos Diferentes de Chaes para Localizar Partições (Interface PartitionableKey). 132 Programação para Transações........ 132 Visão Geral do Processamento de Transações 132 Manipulando Bloqueios......... 149 Isolamento de transação......... 165 Exceção de Colisão Otimista....... 167 Configurando Clientes com o WebSphere extreme Scale................ 168 Rastreando Atualizações de Mapas por um Aplicatio............. 173 Atiando a Replicação de Mapas do Lado do Cliente.............. 176 Exemplo da API do DataGrid........ 176 Capítulo 4. Acessando Dados com o Seriço de Dados REST....... 183 Operações com o Seriço de Dados REST.... 183 Protocolos de Pedido para o Seriço de Dados REST................ 185 Recuperar Pedidos com Seriço de Dados REST 185 Recuperando Não Entidades com Seriços de Dados REST............. 193 Pedidos de Inserção com Seriço de Dados REST............... 198 Pedidos de Atualização com Seriço de Dados REST............... 202 Pedidos de Exclusão com Seriços de Dados REST............... 206 Simultaneidade Otimista......... 207 Capítulo 5. Programação com APIs e Plug-ins do Sistema........ 209 Introdução aos Plug-ins.......... 209 Plug-ins para Despejar Objetos de Cache.... 211 Eictor TimeToLie (TTL)........ 214 Conexão de um Eictor programáel.... 216 Graando um Eictor Customizado..... 219 Boas Práticas de Desempenho do Eictor de Plug-in.............. 224 Plug-ins para Transformar Objetos Armazenados em Cache............... 226 Copyright IBM Corp. 2009, 2010 iii

Desenolendo Árbitros Customizados para a Replicação Multimestre......... 226 Plug-in ObjectTransformer........ 227 Plug-ins para Versão e Comparação de Objetos de Cache................ 234 Plug-ins para Fornecer Listeners de Eentos... 238 Plug-in MapEentListener........ 239 Plug-in ObjectGridEentListener...... 240 Plug-ins para Indexação Customizada de Objetos de Cache............... 243 HashIndex Composto......... 245 Utilizando a Indexação para Acessar Dados Sem Chae............... 248 Plug-ins para a Comunicação com Armazenamentos Persistentes........ 252 Criando um Utilitário de Carga...... 254 Considerações sobre a Programação do Utilitário de Carga do JPA........ 258 Plug-in JPAEntityLoader......... 260 Utilizando um Utilitário de Carga com Mapas de Entidade e Tuplas.......... 262 Graando um Utilitário de Carga com um Controlador de Pré-carregamento de Réplica.. 268 Plug-ins para o Gerenciamento de Eentos de Ciclo de Vida da Transação........... 272 Visão Geral do Processamento de Transações 277 Introdução aos Slots de Plug-in...... 277 Gerenciadores de Transações Externas.... 279 Plug-in WebSphereTransactionCallback.... 282 Capítulo 6. Programação para Tarefas Administratias.......... 285 API do Seridor Integrado......... 285 Utilizando a API do Seridor Integrado.... 287 Monitorando com a API de Estatísticas..... 290 Monitorando com a PMI do WebSphere Application Serer........... 292 Atiando a PMI........... 293 Recuperando Estatísticas PMI....... 295 Módulos PMI............ 296 Acessando MBeans Utilizando a Ferramenta wsadmin.............. 303 Capítulo 7. Programação para Integração de JPA......... 305 Carregadores JPA............ 305 Visão Geral do Utilitário de Pré-Carregamento JPA Baseado em Cliente........... 307 Programação do utilitário de pré-carregamento JPA baseado em cliente........... 309 Atualizador de Dados Baseado em Tempo JPA.. 316 Iniciando o Atualizador Baseado em Tempo do JPA 318 Capítulo 8. Programação para Integração de Spring........ 323 Visão Geral de Integração da Estrutura Spring.. 323 Transações Gerenciadas pelo Spring...... 324 Beans de Extensão Gerenciados pelo Spring... 327 Beans de Extensão Spring e Suporte a Espaço de Nomes............... 328 Capítulo 9. Programação para Segurança............. 333 API de Segurança............ 333 Programação de Autenticação de Cliente.... 334 Programação de Autorização de Cliente.... 352 Autenticação de Grade.......... 359 Segurança Local............ 360 Capítulo 10. Considerações sobre Desempenho para Desenoledores de Aplicatios........... 367 Ajuste da JVM............. 367 Boas Práticas de CopyMode........ 369 Mapas de Matriz de Byte......... 374 Boas Práticas de Desempenho do Eictor de Plug-in............... 376 Boas Práticas de Desempenho de Bloqueio... 378 Desempenho de Serialização........ 379 Boas Práticas da Interface ObjectTransformer... 381 Capítulo 11. Resolução de Problemas 383 Logs e Rastreio............. 383 Opções de Rastreio........... 385 IBM Support Assistant for WebSphere extreme Scale................ 386 Mensagens.............. 388 Notas sobre o Release.......... 388 Aisos.............. 391 Marcas Registradas........ 393 Índice Remissio.......... 395 i IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

Figuras 1. A interação da consulta com os mapas de objetos e como um esquema é definido para classes e associado a um mapa ObjectGrid.. 101 2. A interação da consulta com os mapas de objetos ObjectGrid e como o esquema da entidade é definido e associado com um mapa ObjectGrid........... 106 3. Utilitário de Carga.......... 252 4. Estrutura do Módulo ObjectGridModule 297 5. Exemplo da Estrutura do Módulo ObjectGridModule.......... 297 6. Estrutura do mapmodule....... 299 7. Exemplo de Estrutura do Módulo mapmodule............ 299 8. Estrutura do Módulo hashindexmodule 300 9. Exemplo da Estrutura do Módulo hashindexmodule.......... 301 10. Estrutura agentmanagermodule..... 302 11. Exemplo da Estrutura agentmanagermodule 302 12. Estrutura querymodule........ 303 13. Exemplo da Estrutura querymodule QueryStats.jpg........... 303 14. Arquitetura do Utilitário de Carga do JPA 306 15. Utilitário de Carga do Cliente que usa Implementação JPA para Carregar o ObjectGrid............ 308 16. Atualização Periódica......... 317 17. Fluxo de Autenticação e Autorização do Cliente.............. 333 Copyright IBM Corp. 2009, 2010

i IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

Tabelas 1. interface ObjectGrid.......... 15 2. Outros Métodos........... 97 3. Chae para o Resumo BNF....... 118 4. Matriz de Compatibilidade do Modo de Bloqueio............. 151 5. Cenário de conflitos de uma única chae 154 6. Conflitos de uma única chae, continuação 154 7. Conflitos de uma única chae, continuação 154 8. Conflitos de uma única chae, continuação 155 9. Cenário de conflito de múltiplas chaes em ordem.............. 156 10. Cenário de conflito de múltiplas chaes em ordem, continuação......... 156 11. Fora de ordem com cenário com bloqueio U 157 12. Modos do Utilitário de Carga do Cliente 308 13. Lista de Métodos e a MapPermission Necessária............ 353 14. Lista de Métodos e a ObjectGridPermission Necessária............ 354 15. Permissões para um ObjectMap Hospedado por Seridor............ 355 Copyright IBM Corp. 2009, 2010 ii

iii IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

Sobre o Guia de Programação O conjunto da documentação do WebSphere extreme Scale inclui três olumes que fornecem as informações necessárias para utilizar, programar e administrar o produto WebSphere extreme Scale. Biblioteca do WebSphere extreme Scale A biblioteca do WebSphere extreme Scale contém os seguintes liros: O Guia de Administração contém as informações necessárias para os administradores de sistema, incluindo como planejar implementações do aplicatio, planejar capacidade, instalar e configurar o produto, iniciar e parar seridores, monitorar o ambiente e proteger o ambiente. O Guia de Programação contém informações para desenoledores de aplicatios sobre como desenoler aplicatios para o WebSphere extreme Scale utilizando as informações da API incluídas. O Visão Geral do Produto contém um isualização de alto níel dos conceitos do WebSphere extreme Scale, incluindo cenários de caso de uso e tutoriais. Para fazer download dos manuais, á para a Página da Biblioteca do WebSphere extreme Scale. Também é possíel acessar as mesmas informações nesta biblioteca no centro de informações do WebSphere extreme Scale. Quem Dee Utilizar este Manual Este manual é destinado principalmente a desenoledores de aplicatios. Como este Manual Está Estruturado O manual contém informações sobre os seguintes tópicos principais: Capítulo 1 inclui informações sobre introdução ao WebSphere extreme Scale. Capítulo 2 inclui informações sobre como programar o WebSphere extreme Scale. Capítulo 3 inclui informações sobre acesso aos dados. Capítulo 4 inclui informações sobre as APIs e plug-ins do Sistema. Capítulo 5 inclui informações sobre a integração com a estrutura Spring. Capítulo 6 inclui informações sobre a API de segurança. Capítulo 7 inclui informações sobre a API de administração. Capítulo 8 inclui informações sobre as considerações de desempenho. Capítulo 9 inclui informações sobre a resolução de problemas. Capítulo 10 inclui o glossário do produto. Obtendo Atualizações para este Manual É possíel obter as atualizações para esse manual ao fazer download da ersão mais recente da Página da Biblioteca do WebSphere extreme Scale. Copyright IBM Corp. 2009, 2010 ix

Como Eniar Seus Comentários Entre em contato com a equipe de documentação. Você localizou o que precisaa? O conteúdo era exato e completo? Enie seus comentários sobre esta documentação por e-mail para wasdoc@us.ibm.com. x IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

Capítulo 1. Introdução ao WebSphere extreme Scale Depois de instalar o WebSphere extreme Scale em um ambiente independente, use as seguintes etapas como uma simples introdução para sua capacidade como uma grade de dados em memória. A instalação independente do WebSphere extreme Scale inclui uma amostra que pode ser usada para erificar a sua instalação e er como uma grade e um cliente simples do extreme Scale podem ser usados. A amostra de iniciação está localizada no diretório installroot/objectgrid/gettingstarted. A amostra de iniciação é fornecida para uma introdução rápida à operação básica e de funcionalidade do extreme Scale. A amostra consiste de scritps de shell e lote projetados para iniciar uma grade simples com muito pouca customização necessária. Além disso, um programa cliente, incluindo a fonte, é fornecido para executar funções simples de criação, leitura, atualização e exclusão (CRUD) nesta grade básica. Scripts e suas Funções Essa amostra fornece os seguintes scripts: O script en.sh bat é chamado pelos outros scripts para configurar as ariáeis necessárias do ambiente. Normalmente não é necessário alterar esse script. UNIX Linux./en.sh Windows en.bat O script runcat.sh bat inicia o processo de seriço de catálogo do extreme Scale no sistema local. UNIX Linux./runcat.sh Windows runcat.bat O script runcontainer.sh bat inicia um processo de seridor de contêiner. É possíel executar esse script árias ezes com nomes do seridor exclusios especificados para iniciar qualquer número de contêineres. Essas instâncias podem funcionar juntas para hospedar informações particionadas e redundantes na grade. UNIX Linux./runcontainer.sh unique_serer_name Windows runcontainer.bat unique_serer_name O script runclient.sh bat executa o cliente CRUD simples e inicia a operação especificada. UNIX Linux./runclient.sh command alue1 alue2 Windows runclient.sh command alue1 alue2 Para command, use uma das seguintes opções: Especifique i para inserir alue2 na grade com a chae alue1 Especifique u para atualizar o objeto com chae pelo alue1 para o alue2 Especifique d para excluir o objeto com chae pelo alue1 Copyright IBM Corp. 2009, 2010 1

Especifique g para recuperar e exibir o objeto com chae pelo alue1 Nota: O arquio installroot/objectgrid/ gettingstarted/src/client.jaa é o programa cliente que demonstra como se conectar a um seridor de catálogo, obter uma instância de ObjectGrid, e usar a API de ObjectMap. Etapas Básicas Use as seguintes etapas para iniciar sua primeira grade e executar um cliente para interagir com a grade. 1. Abra uma janela de sessão do terminal ou linha de comandos. 2. Utilize o seguinte comando para naegar para o diretório gettingstarted: cd installroot/objectgrid/gettingstarted Substitua installroot pelo caminho para o diretório-raiz da instalação do extreme Scale ou o caminho do arquio-raiz do trial do extreme Scale extraído installroot. 3. Execute o script a seguir para iniciar um processo de seriço de catálogo no host local: UNIX Linux./runcat.sh Windows runcat.bat O processo do seriço de catálogo executa na janela do terminal atual. 4. Abra outra janela de sessão de terminal ou de linha de comandos e execute o seguinte comando para iniciar uma instância do seridor de contêiner: UNIX Linux./runcontainer.sh serer0 Windows runcontainer.bat serer0 O seridor de contêiner será executado na janela do terminal atual. Repita as etapas 5e6sedesejar iniciar mais instâncias do seridor de contêiner para suportar a replicação. 5. Abra outra janela de sessão de terminal ou linha de comandos para executar comandos do cliente. Incluir dados na grade: UNIX Linux./runclient.sh i key1 helloworld Windows runclient.bat i key1 helloworld Procurar e exibir o alor: UNIX Linux./runclient.sh g key1 Windows runclient.bat g key1 Atualizar o alor: UNIX Linux./runclient.sh u key1 goodbyeworld Windows runclient.bat u key1 goodbyeworld Excluir o alor: UNIX Linux./runclient.sh d key1 Windows runclient.bat d key1 6. Use <ctrl+c> para parar o processo de seriço de catálogo e os seridores de contêiner em suas respectias janelas. 2 IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

Definindo um ObjectGrid A amostra usa os arquios objectgrid.xml e deployment.xml que estão no diretório installroot/objectgrid/gettingstarted/xml para iniciar um seridor de contêineres. O arquio objectgrid.xml é o arquio XML descritor do ObjectGrid e o arquio deployment.xml é o arquio XML descritor de política de implementação do ObjectGrid. Ambos os arquios juntos definem uma topologia de ObjectGrid distribuída. Arquio XML descritor do ObjectGrid Um arquio XML descritor de ObjectGrid é usado para definir a estrutura do ObjectGrid que será usada pelo aplicatio. Ele inclui uma lista de configurações de BackingMap. Esses BackingMaps são o armazenamento de dados atual para dados em cache. O exemplo a seguir é um arquio objectgrid.xml de amostra. As primeiras linhas do arquio incluem o cabeçalho obrigatório de cada arquio XML do ObjectGrid. Este arquio de exemplo define o Grid ObjectGrid com BackingMaps Map1 e Map2. <objectgridconfig xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://ibm.com/ws/objectgrid/config../objectgrid.xsd" xmlns="http://ibm.com/ws/objectgrid/config"> <objectgrids> <objectgrid name="grid"> <backingmap name="map1" /> <backingmap name="map2" /> </objectgrid> </objectgrids> </objectgridconfig> Arquio Descritor XML de Política de Implementação Um arquio XML descritor de política de implementação é passado para um seridor de contêineres ObjectGrid durante a inicialização. Uma política de implementação dee ser usada com o arquio XML de ObjectGrid e dee ser compatíel com o XML de ObjectGrid que é usado com ele. Para cada elemento objectgriddeployment na política de implementação, ocê dee ter um elemento ObjectGrid correspondente no XML do seu ObjectGrid. Os elementos de backingmap que são definidos dentro do elemento objectgriddeployment deem ser consistentes com os backingmaps localizados no XML de ObjectGrid. Cada backingmap dee ser referido dentro de um e apenas um mapset. O arquio XML descritor de política de implementação dee igualar-se com o arquio XML ObjectGrid correspondente, o arquio objectgrid.xml. No seguinte exemplo, as primeiras linhas do arquio deployment.xml incluem o cabeçalho obrigatório de cada arquio XML de política de implementação. O arquio define o elemento objectgriddeployment para o ObjectGrid da Grade que está definido no arquio objectgrid.xml. Ambos os BackingMaps, Map1 e Map2, que são definidos dentro do ObjectGrid da Grade estão incluídos no mapset que tem os atributos numberofpartitions, minsyncreplicas e maxsyncreplicas configurados. <deploymentpolicy xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://ibm.com/ws/objectgrid/deploymentpolicy../deploymentpolicy.xsd" xmlns="http://ibm.com/ws/objectgrid/deploymentpolicy"> <objectgriddeployment objectgridname="grid"> <mapset name="mapset" numberofpartitions="13" minsyncreplicas="0" maxsyncreplicas="1" > Capítulo 1. Introdução ao WebSphere extreme Scale 3

<map ref="map1"/> <map ref="map2"/> </mapset> </objectgriddeployment> </deploymentpolicy> O atributo numberofpartitions do elemento mapset especifica o número de partições para o mapset. Ele é um atributo opcional e o padrão é 1. O número dee ser apropriado para a capacidade antecipada da grade. O atributo minsyncreplicas de mapset especifica o número mínimo de réplicas síncronas para cada partição no mapset. Ele é um atributo opcional e o padrão é 0. Primária e réplica não são colocadas até que o domínio possa suportar o número mínimo de réplicas síncronas. Para suporte do alor minsyncreplicas, é preciso de mais um contêiner do que o alor de minsyncreplicas. Se o número de réplicas síncronas ficar abaixo do alor de minsyncreplicas, grae transações que não são mais permitidas àquela partição. O atributo maxsyncreplicas de mapset especifica o número máximo de réplicas síncronas para cada partição no mapset. Ele é um atributo opcional e o padrão é 0. Nenhuma outra réplica síncrona é posicionada para uma partição após um domínio alcançar este número de réplicas síncronas para esta partição específica. A inclusão de contêineres que podem suportar esse ObjectGrid pode resultar em um aumento no número de réplicas síncronas se seu alor de maxsyncreplicas ainda não tier sido atingido. A amostra define o maxsyncreplicas para 1, que significa que o domínio posicionará, no máximo, uma réplica síncrona. Se ocê iniciar mais de uma instância do seridor de contêineres, haerá somente uma réplica síncrona posicionada em uma das instâncias do seridor de contêineres. Usando o ObjectGrid O arquio Client.jaa no diretório installroot/objectgrid/ gettingstarted/src/ é o programa cliente que demonstra como se conectar a um seridor de catálogos, obter uma instância de ObjectGrid, e usar a API de ObjectMap. Da perspectia de um aplicatio cliente, o uso do WebSphere extreme Scale pode ser diidido nas seguintes etapas. 1. Conexão com o seriço de catálogo por meio da obtenção de uma instância de ClientClusterContext. 2. Obtenção de uma instância do ObjectGrid do cliente. 3. Obtenção de uma instância da Sessão. 4. Obtenção de uma instância do ObjectMap. 5. Uso de métodos ObjectMap. 1. Conectando ao seriço de catálogo por meio da obtenção de uma instância do ClientClusterContext Para se conectar a um seridor de catálogos, use o método connect da API ObjectGridManager. O método connect usado requer apenas o terminal do seridor de catálogos no formato de hostname:port, como localhost:2809. Sea conexão com o seridor de catálogos for bem-sucedida, o método connect retornará uma instância do ClientClusterContext. A instância do ClientClusterContext é necessária para a obtenção do ObjectGrid a partir da 4 IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

API do ObjectGridManager. O trecho de código a seguir demonstra como se conectar a um seridor de catálogos e obter uma instância do ClientClusterContext. ClientClusterContext ccc = ObjectGridManagerFactory.getObjectGridManager().connect( localhost:2809, null, null); 2. Obtendo uma Instância do ObjectGrid Para obter uma instância do ObjectGrid, use o método getobjectgrid da API do ObjectGridManager. O método getobjectgrid necessita de ambos, a instância do ClientClusterContext e o nome da instância do ObjectGrid. A instância do ClientClusterContext é obtida durante a conexão com o seridor de catálogos. O nome de ObjectGrid é Grid que é especificado no arquio objectgrid.xml. O fragmento de código a seguir demonstra como obter o ObjectGrid chamando o método getobjectgrid da API ObjectGridManager. ObjectGrid grid = ObjectGridManagerFactory.getObjectGridManager().getObjectGrid(ccc, Grid ); 3. Obtendo uma Instância da Sessão É possíel obter uma Sessão da instância do ObjectGrid obtida. Uma instância da Sessão é necessária para obter a instância do ObjectMap e executar a demarcação da transação. O fragmento de código a seguir demonstra como obter uma instância da Sessão chamando o método getsession da API ObjectGrid. Session sess = grid.getsession(); 4. Obtendo uma Instância do ObjectMap Após obter uma Sessão, é possíel obter uma instância do ObjectMap a partir de uma instância da Sessão chamando o método getmap da API de Sessão. Você dee passar o nome do mapa como parâmetro para o método getmap para obter a instância do ObjectMap. O fragmento de código a seguir demonstra como obter ObjectMap chamando o método getmap da API de Sessão. ObjectMap map1 = sess.getmap("map1"); 5. Usando os métodos ObjectMap Após a obtenção de um ObjectMap, é possíel usar a API ObjectMap. Lembre-se de que a interface ObjectMap é um mapa transacional e requer demarcação de transação usando os métodos begin e commit da API Session. Se não houer demarcação de transação explícita no aplicatio, as operações do ObjectMap serão executadas com transações de confirmação automática. O fragmento de código a seguir demonstra como usar a API ObjectMap com transação de confirmação automática. map1.insert(key1, alue1); O fragmento de código a seguir demonstra como usar a API ObjectMap com demarcação de transação explícita. sess.begin(); map1.insert(key1, alue1); sess.commit(); Informações adicionais Esta amostra demonstra como iniciar o seridor de catálogos e o seridor de contêiner e usar a API do ObjectMap em um ambiente independente. Também é possíel usar a API do EntityManager. Em um ambiente WebSphere Application Serer com owebsphere extreme Scale instalado ou atiado, o cenário mais comum é uma topologia conectada à rede. Em uma topologia conectada à rede, o seridor de catálogos é hospedado no processo do gerenciador de implementação do WebSphere Application Serer e cada Capítulo 1. Introdução ao WebSphere extreme Scale 5

instância dowebsphere Application Serer hospeda um seridor extreme Scale automaticamente. Os aplicatios Jaa Platform, Enterprise Edition precisam somente incluir ambos, o arquio XML descritor do ObjectGrid e o arquio XML descritor da política de implementação do ObjectGrid, no diretório META-INF de qualquer módulo e o ObjectGrid se torna disponíel automaticamente. Então, um aplicatio pode se conectar a um seridor de catálogos disponíel localmente e obter uma instância do ObjectGrid para uso. 6 IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

Capítulo 2. Preparando para Desenoler Aplicatios Configure seu ambiente de desenolimento e aprenda onde localizar detalhes sobre as interfaces de programação disponíeis. Interfaces de Programação do WebSphere extreme Scale O WebSphere extreme Scale fornece diersos recursos que são acessados programaticamente usando a linguagem de programação Jaa por meio de interfaces de programação de aplicatios (APIs) e interfaces de programação do sistema. APIs do WebSphere extreme Scale Quando estier utilizando APIs do extreme Scale, ocê dee distinguir entre operações transacionais e não-transacionais. Uma operação transitória é uma operação executada dentro de uma transação. As APIs de ObjectMap, EntityManager, Query e DataGrid são APIs transacionais contidas no Session que é um contêiner transacional. As operações não-transitórias não estão relacionadas a uma transação, como por exemplo operações de configuração. As APIs ObjectGrid, BackingMap e de plug-in não são transitórias. ObjectGrid, BackingMap e outras APIs de configuração são categorizadas como API Principal do ObjectGrid. Os plug-ins serem para customizar o cache para obter as funções desejadas e são categorizados como a API de Programação do Sistema. Um plug-in no extreme Scale é um componente que fornece um determinado tipo de função aos componentes conectáeis do extreme Scale que incluem ObjectGrid e BackingMap. Um recurso representa uma função ou característica específica de um componente do extreme Scale, incluindo ObjectGrid, Session, BackingMap, ObjectMap e assim por diante. Geralmente, os recursos são configuráeis com APIs de configuração. Os plug-ins podem ser internos, mas podem requerer o desenolimento de seus próprios plug-ins em algumas situações. É possíel configurar normalmente o ObjectGrid e o BackingMap para atender aos requisitos do seu aplicatio. Quando o aplicatio possui requisitos especiais, considere o uso de plug-ins especializados. O WebSphere extreme Scale pode ter plug-ins integrados que atendam aos seus requisitos. Por exemplo, se for necessário um modelo de replicação ponto a ponto entre duas instâncias do ObjectGrid ou duas grades distribuídas do extreme Scale, o JMSObjectGridEentListener integrado estará disponíel. Se nenhum dos plug-ins internos puder resoler seus problemas de negócios, consulte a API de Programação do Sistema para fornecer seus próprios plug-ins. ObjectMap é uma API baseada em mapa simples. Se os objetos armazenados em cache forem simples e nenhum relacionamento estier enolido, a API do ObjectMap será ideal para seu aplicatio. Se os relacionamentos de objetos estierem enolidos, use a API EntityManager, que suporta relacionamentos como gráfico. Query é um mecanismo poderoso para localização de dados no ObjectGrid. Session e EntityManager fornecem o recurso de consulta tradicional. Copyright IBM Corp. 2009, 2010 7

A API do DataGrid é um recurso de computação poderoso em um ambiente distribuído do extreme Scale que enole muitas máquinas, réplicas e partições. Os aplicatios podem executar lógica de negócios em paralelo a todos os nós do ambiente distribuído do extreme Scale. O aplicatio pode obter a API do DataGrid por meio da API do ObjectMap. O seriço de dados REST do WebSphere extreme Scale é um seriço HTTP Jaa que é compatíel com Microsoft WCF Data Serices (formalmente, ADO.NET Data Serices) e que implementa o Open Data Protocol (OData). O seriço de dados REST permite que qualquer cliente HTTP acesse uma grade do extreme Scale. Ele é compatíel com o suporte do WCF Data Serices fornecido com o Microsoft.NET Framework 3.5 SP1. Aplicatios RESTful podem ser desenolidos com um rico conjunto de ferramentas fornecido pelo Microsoft Visual Studio 2008 SP1. Para obter mais detalhes, consulte o Guia do Usuário do Seriço de Dados REST do extreme Scale. Considerações do Carregador de Classes e do Caminho de Classe Como o extreme Scale armazena objetos Jaa no cache por padrão, ocê dee definir classes no caminho de classe sempre que os dados forem acessados. Especificamente, o cliente extreme Scale e os processos do contêiner deem incluir as classes ou JARs no caminho de classe ao iniciar o processo. Ao projetar um aplicatio para uso com o extreme Scale, separe qualquer lógica de negócios dos objetos de dados persistentes. Consulte Carregamento de classe no WebSphere Application Serer Centro de Informações de Implementação de Rede para obter mais informações. Para obter as considerações dentro de uma configuração de Estrutura Spring, consulte a seção de pacotes no tópico sobre a integração com a estrutura Spring no Guia de Programação. Para obter as configurações relacionadas ao uso do agente de instrumentação do WebSphere extreme Scale, consulte o tópico do agente de instrumentação no Guia de Programação. Configurando um Ambiente de Desenolimento Configure um ambiente de desenolimento integrado baseado no Eclipse para construir e executar um aplicatio SE Jaa com o extreme Scale. Procedimento Configure o Eclipse para construir e executar um aplicatio SE Jaa com o extreme Scale. 1. Defina uma biblioteca de usuário para permitir que seu aplicatio faça referência a interfaces de programação de aplicatio do extreme Scale. a. No Eclipse ou no ambiente do IBM Rational Application Deeloper, clique em Janela > Preferências. b. Expanda a ramificação Jaa > Caminho de Construção e selecione Bibliotecas de Usuário. Clique em Noo. c. Selecione a biblioteca de usuário do extreme Scale. Clique em Incluir JARs. 8 IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale

1) Naegue e selecione os arquios objectgrid.jar e cglib.jar do diretório wxs_root/lib. Clique em OK. 2) Para incluir Jaadoc para APIs ObjectGrid, selecione o local do Jaadoc para o arquio objectgrid.jar que ocê incluiu na etapa anterior. Clique em Editar. Na caixa do caminho do local do Jaadoc, digite o seguinte endereço da Web: http://www.ibm.com/deeloperworks/wikis/extremescale/docs/api/ d. Clique em OK para aplicar as configurações e fechar a janela Preferências. As bibliotecas do extreme Scale estão agora no caminho de construção para o projeto. 2. Inclua a biblioteca de usuário em seu projeto Jaa. a. No Package Explorer, clique com o botão direito do mouse no projeto e selecione Propriedades. b. Selecione a guia Bibliotecas. c. Clique em Incluir Biblioteca. d. Selecione Biblioteca de Usuário. Clique em Next. e. Selecione a biblioteca de usuário do extreme Scale configurada anteriormente. f. Clique em OK para aplicar as mudanças e fechar a janela Propriedades. Execute um aplicatio SE Jaa com o extreme Scale com Eclipse. Crie uma configuração de execução para executar seu aplicatio. 1. Configure o Eclipse para construir e executar um aplicatio SE Jaa com o extreme Scale. No menu Executar, selecione Executar Configurações. 2. Clique com o botão direito do mouse na categoria Aplicatio Jaa e selecione Noo. 3. Selecione a noa configuração de execução, denominada New_Configuration. 4. Configure o perfil. Projeto (na página tabulada principal): your_project_name Classe Principal (na página tabulada principal): your_main_class Argumentos VM (na página tabulada de argumentos): -Djaa.endorsed.dirs=wxs_root/lib/endorsed Problemas com os Argumentos VM ocorrem com frequência porque o caminho para jaa.endorsed.dirs dee ser um caminho absoluto sem ariáeis ou atalhos. Outros problemas comuns de configuração enolem o Object Request Broker (ORB). Você dee er o seguinte erro. Consulte Configurando um Object Request Broker customizado para obter mais informações: Caused by: jaa.lang.runtimeexception: The ORB that comes with the Sun Jaa implementation does not work with ObjectGrid at this time. Se ocê não tier objectgrid.xml ou deployment.xml acessíel ao aplicatio, poderá er o seguinte erro: Exception in thread "P=211046:O=0:CT" com.ibm.websphere.objectgrid. ObjectGridRuntimeException: Cannot start OG container at Client.startTestSerer(Client.jaa:161) at Client. main(client.jaa:82) Caused by: jaa.lang.illegalargumentexception: The objectgridxml must not be null at com.ibm.websphere.objectgrid. deployment.deploymentpolicyfactory.createdeploymentpolicy (DeploymentPolicyFactory.jaa:55) at Client.startTestSerer(Client. jaa:154).. 1 more Capítulo 2. Preparando para Desenoler Aplicatios 9

5. Clique em Aplicar e feche a janela ou clique em Executar. Executando um Aplicatio Cliente ou do Seridor do WebSphere extreme Scale com o Apache Tomcat no Rational Application Deeloper Tenha ocê um aplicatio cliente ou do seridor, use as mesmas etapas básicas para executar o aplicatio no Apache Tomcat no Rational Application Deeloper. Para um aplicatio cliente, ocê deseja configurar e executar um aplicatio da Web para usar um cliente do WebSphere extreme Scale no Rational Application Deeloper. Siga estas instruções para criar um projeto da Web para executar um contêiner ou seriço de catálogo do WebSphere extreme Scale. Para um aplicatio do seridor, ocê deseja atiar um aplicatio Jaa EE na interface do Rational Application Deeloper com uma instalação independente do WebSphere extreme Scale. Siga estas instruções para configurar um projeto do aplicatio Jaa EE para usar a biblioteca do cliente do WebSphere extreme Scale. Antes de Iniciar Instale o Teste do WebSphere extreme Scale ou o produto integral. Instale a ersão independente do produto WebSphere extreme Scale Versão 7.1. Faça download e extraia a ersão de teste do WebSphere extreme Scale. Instale o Apache Tomcat 6.0 ou posterior. Instale o Rational Application Deeloper e crie um aplicatio da Web Jaa EE. Procedimento 1. Inclua a biblioteca de tempo de execução do WebSphere extreme Scale no seu caminho de construção do Jaa EE. Aplicatio cliente Neste cenário, ocê deseja configurar e executar um aplicatio da Web para usar um cliente do WebSphere extreme Scale no Rational Application Deeloper. a. Janela Preferências Jaa Caminho de Construção Bibliotecas de Usuário. Clique em Noo. b. Digite um Nome da biblioteca de usuário de extremescaleclient e clique em OK. c. Clique em Incluir Jars..., naegue para o arquio wxs_home/lib/ ogclient.jar e selecione-o. Clique em Abrir. d. Opcional: (Opcional) Para incluir Jaadoc, selecione o local Jaadoc e clique em Editar... No caminho do local Jaadoc, é possíel digitar a URL da documentação da API ou pode fazer download da documentação da API. Para usar a documentação da API on-line, digite http://www.ibm.com/ deeloperworks/wikis/extremescale/docs/api/ no caminho do local Jaadoc. Para fazer download da documentação da API, á para a WebSphere extreme Scale Página de download de documentação da API. Para o caminho do local Jaadoc, digite seu local de download local. e. Clique em OK. f. Clique em OK para fechar o diálogo Bibliotecas de Usuário. g. Clique em Projeto Propriedades. h. Clique em Caminho de Construção Jaa. i. Clique em Incluir Biblioteca. 10 IBM WebSphere extreme Scale Versão 7.1 Guia de Programação: Guia de Programação do WebSphere extreme Scale