JAVA
Publicações arquivadas desta categoria
Minhas experiências com Java e EJB um desafio a cada dia
Publicações arquivadas desta categoria
Publicado por Eduardo Eugênio em 14 Ago 2008 | sob: JAVA
Quando notamos que o site está crescendo ou percebemos que número de visitas aumentou a solução mais eficiente é pensar na otimização das consultas.
A busca de um assunto específico em um livro é muito mais fácil e rápido quando feita pelo índice, essa definição é clássica. Por esta razão, neste artigo focaremos a criação de índices para otimizações nas consultas nos bancos de dados.
Em um banco de dados com o aumento de visitas ao site é necessário que a resposta seja o mais rápida possível, os índices são uma espécie de “turbo” para consultas ao banco quando utilizados corretamente.
De qualquer forma, a criação de índices deve ser cautelosa, pois o mesmo necessita de espaço na base de dados, não se deve criar índices em todos os campos, mas sim, nos que são utilizado em critérios de buscas (WHERE ou INNER JOIN).
O uso de índices é um dos aspectos mais importantes para otimizar bases de dados. Não importa se ela é simples, por exemplo: Uma pesquisa em uma tabela não indexada com 1.000.000 (um milhão) de registros nunca será rápida e leve.
Se sua aplicação faz várias vezes a mesma consulta que retornam uma quantidade considerável de registros, você pode utilizar o SQL_CACHE, por exemplo:
A cada acesso ao seu index.php ele executa a query: “SELECT id, nome FROM tabela WHERE id > 0;”
Ao invés de fazer o MySQL processar sempre esta query, use “SELECT SQL_CACHE id, nome FROM tabela WHERE id > 0;”, o MySQL buscará o resultado da query no cache ao invés de fazer sempre a mesma pesquisa, o servidor MySQL poderá responder até 90% mais rápida a sua solicitação, deixando o carregamento do seu site muito mais leve.
Publicado por Eduardo Eugênio em 14 Ago 2008 | sob: JAVA
Olá Amigos ,
Hoje foi realizada a ultima fase do evento JBoss Road Show Brasil 2008 em São Paulo . Grande iniciativa da Red Hat que divulgou para todo o Brasil as tecnologias de ponta em JBOSS. http://www.br.redhat.com/promo/roadshow2008/index.php
Meu destaque foi para a palestra do Edgar Silva http://jbossbrasil.ning.com/profile/edgar que falou claramente sobre a Ferramenta JON grande ferramenta de monitoração …. Vou ficar de olho nessa tecnologia que tem tudo a ver com meu naipe em Java.
Publicado por Eduardo Eugênio em 18 Jan 2008 | sob: JAVA
Java e mysql se conversam a anos , agora a Sum fez um negócio da China comprando o Mysql http://www1.folha.uol.com.br/folha/informatica/ult124u364272.shtml
Desenvolvedores aguardem que agora o Java vai conquistar o mundo …..
Publicado por Eduardo Eugênio em 06 Dez 2007 | sob: JAVA
O ponto crucial de uma aplicação cliente-servidor de hoje é a conexão com o banco de dados. Esta dica pode melhora muito este gargalo de sua aplicação Java.
O JNDI (Java Naming and Directory Interface) é um conjunto de APIs e ferramentas que permite acessar o banco de dados através de um serviços de nomes em aplicações Java. Com ele, você pode compartilhar o mesmo DataSource com outros aplicativos que acessam o mesmo banco de dados, melhorando o desempenho de conexões ao banco de dados. (MYSQL , POSTGRES, ORACLE ).
Esta configuração fica em um arquivo reservado onde configurado com as seguintes características :
Vamos descrevê-las abaixo :
Nome de referência que será utilizando na aplicação para acessar o banco de dados
name=”jdbc/LOGIN”
Informa ao Tomcat que o processo de abertura e fechamento das conexões.
auth=”Container”
Define o tipo de datasource utilizada na conexão
type=”javax.sql.DataSource”
Indica a classe necessário apara a criação da fábrica de conexões
factory=”org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory”
Usuário e senha do banco de dados
username=”USUARIO_BD”
password=”SENHA”
Driver que sera utilizado para conexão ao banco
driverClassName=”com.mysql.jdbc.Driver”
Caminho físico e porta do banco de dados no servidor veja que no final há um parâmetro (autoReconnect=true) que permite a reconexão caso a mesma seja fechada.
url=”jdbc:mysql://HOSTDOBANCO:3306/NOME_BD?autoReconnect=true”
Número máximo de conexões no pool ao mesmo tempo
maxActive=”5″
Número máximo das conexões inativas
maxIdle=”5″
Tempo máximo de espera por conexão ao banco de dados em milisegundos por padrão 15 segundos
maxWait=”15000″
Query SQL utilizada pelo pool para validar as conexões antes de retornar os valores para a aplicação
validationQuery=”select current_date”
Define o que fazer quando as conexões ficam inativas
removeAbandoned=”true”
removeAbandonedTimeout=”30″
logAbandoned=”true”
The Apache Tomcat 5.5 Servlet/JSP Container - JNDI Resources HOW-TO
http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html
Publicado por Eduardo Eugênio em 25 Out 2007 | sob: JAVA
E ai galera …
Hoje falaremos um pouquinho sobre annotations , uma das coisas mais legais que conheci em java nos últimos tempos.
Imaginem só , os desenvolvedores colocavam comentários nas aplicações , essas anotações na maioria das vezes seguiam um padrão …. pensa bem porque não acoplar as anotações na programação para simplificar a declaração das classes , métodos , arquivos e elementos do programa ??
Neste artigo vou colocar a descrição de algumas anotações utilizadas na conexão com o banco de dados utilizando JPA (Java Persistence API).
@Name - Registra o componente sob determinado nome único na aplicação que será utilizado pelo Seam
@Scope - Determina o escopo do componente assim , mesmo que o tipo não seja declarado o escopo será utilizado para que funcione.
@NotNull - Valida junto ao Hibernate validator , neste caso aceitar um valor nulo
@Length - Valida junto ao Hibernate o tamanho do campo.
Em breve falarei em outras anotações que estou estudando. Até Mais
Este link é bem legal mostra uma referência de anottations JPA
JPA Annotation Reference