Memnemonics fike’s Rotating Header Image

java

OpenJDK e JNLP

   Com a nova política da Oracle para distribuição do Java Hotspot nas distribuições linux, forçou a remoção dos pacotes java dos mesmo. As “distros” que  mais tiveram “impacto” foram o Debian e o Ubuntu.  E se você ficou órfão  e não pode mais  usar o Internet Banking ou alguma aplicação JNLP, tem um jeito de resolver. :)

Resolvendo do jeito Debian-Way,  basta instalar (Estou usando a versão instável/SID e AMD64/64 bits) os pacotes icedtea-netxicedtea-pluginicedte6a-plugin.

Algumas coisas irão parar de funcionar, Internet Banking do Santander não funciona em nenhum browser, o Banco do Brasil funciona no iceweasel/firefox.

Se precisar alterar as configurações (proxy, certificados) pode executar o comando itweb-settings.

Java Web Start with Openjdk

2º encontro do NoSQLBrasil e reflexões

 

    Tenho que agradecer o Alexandre Porcelli pela a oportunidade de participar com um lighting talk. O evento foi excelente, apresentações muito boas e técnicas (exceto a minha. :P ).

    Algumas palestras como da Microsoft e da Oracle fizeram-me refletir sobre algumas coisas do mercado de TI. Basicamente no mundo da Operação ou Sustentação:

 

- Big Data e Storages
   Com cada vez mais equipamentos conectados a Internet ou sistemas corporativos, está cada vez mais complexo gerenciar sistemas e infraestrutura. Tem-se informação demais e a necessidade de extrair tendências, relações, histórico, etc. Qualquer sistema a ser pensando (principalmente que envolva a internet) pode ter volume de transação ou acesso muito acima do que tinha-se planejado. 

    Os dados para armazenar, principalmente informação histórica ou legado crescerá exponencialmente. Storage do jeito tradicional, com a preocupação de Raid Group, Raid Type e etc. terá a importância menor. Pensarão em Provisionamento Dinâmico, Virtualização de Storages e robôs de Fitotecas.  

    Também ficará cada vez mais usado a "Tierização" ou seja, conforme o uso de um determinado dado tem acesso recorrente, o Storage automaticamente movimenta este de discos mais lentos para mais rápidos. 

    Nunca pensei em afirmar isso com grande convicção mas cada vez mais o uso de NFS (arquitetura Network Attach Storage) ou outro sistema de arquivo distribuído será cada vez maior pois conectar tantos equipamentos com "fibra ótica"  (SAN)  tem um custo operacional de crescimento do que uso de sistema de arquivo distribuído quando é necessário pensar em escalabilidade rapidamente.

    Só para deixar claro que transações OLTP ainda confio em Storages SAN mas confesso que a arquitetura Scale Out para armazenamento tem chamado minha atenção ultimamente, principalmente para uso de dado não estruturado como bancos de dados NoSQL, Áudio, Vïdeo, etc.

- NoSQL e Big Data

   Então, basicamente em qualquer sistema pode ocorrer o problema do sucesso além do esperado. Aí é cache, cache, cache onde puder ter para dar conta e ou abrir mão de alguma coisa de uma aplicação tradicional CRUD ou banco de dados relacional.

- Pradonização de produto não, processo:

  Isso é um pouco ainda difícil de aceitar mas é um fato. Se você é responsável por uma operação de infraestrutura ou serviço, perceberá que não adianta adotar um tipo de virtualização, um banco de dados, um tipo de sistema operacional, etc. Cada vez mais tem-se que encontrar soluções rápidas e adequadas para sustentar o negócio.

  O mais importante é o controle dos processo da operação de infraestrutura. Mesmo porque a operação não está, necessariamente na sede da empresa, está na nuvem.

- Virtualização é um commodite:

  Não sei se ambientes pequenos isso acontece/acontecerá mas em muitas situações tem hypevisor (Xen, KVM, VMware, Hyper-V, etc.) diferentes com ferramentas para gerenciar.  Felizmente existe algumas soluções interessantes para esse tipo de gerenciamento como Openebula e OpenStack.

-  Soluções poliglotas:

  Então fã de uma linguagem de programação, pode continuar encantado com ela mas a oferta é tanta de soluções que muitas delas estão desenvolvidas em uma linguagem diferente que você gosta. Terá que aprender como adequá-las para suas necessidades (Perl, Python, Ruby, Java, Scala, etc… ). Um aparte: Gostei muito do Elastic Search.

- DBA, é o fim

  Não é o fim do DBA mas tornara cada vez mais um nicho especifíco. Muito da responsabilidade do DBA com o Big Data está com o desenvolvedor ou arquiteto da aplicação. Principalmente com os bancos de dados NoSQL.

- Sysadmin/Sysops/Devops/FuckOps

  De certa maneira também o sysadmin tem suas funções alteradas, os conhecimentos de ferramentas de configuração (Chef, Puppet, Cfengine, etc…) e administração de servidores na "nuvem" é cada vez mais frequente. Ah, se você é um sysadmin que não tem caguete de programação é melhor rever seus conceitos senão também sua área de atuação ficará mais limitada.

- Enfim, ganhamos e não sabemos:

   Os grandes, aparentemente perderam o bonde da virtualização de servidores, estão brigando numa "camada" acima. A tal de Sky Computing, tanto que a Microsoft com o Azure, IBM com Smart Cloud, Oracle com a Public Cloud, Google com App Engine. E eu achando que Daas com PostgreSQL era o bacana. :)

 

Obs. Tá meio troll esse post. Se tiver afim de aprofundar algum assunto, comenta aí que depois comentou ou posto algo menos genérico. ;)

Oracle: A maior e melhor plataforma java de todos os tempos

  

    Alguns anos atrás a Oracle tinha muitos produtos de infra-estrutura java mas de péssima qualidade. Tanto que fan-boys Java faziam pouco caso dos produtas deles.

  Porém, quando Larry Allisson atiçou sua sede de aquisições sem precedentes na história tecnológica. Uma das empresas adquiridas foi a BEA Systems que tinha em ser portifólio,  a melhor máquina virtual java (JRockit) e um excelente servidor de aplicação java, conhecido como WebLogic.

   Com a aquisição da Sun, a Oracle tem definitivamente as melhores soluções para arquitetura java. Servidores SPARC, Sistema Operacional Solaris, as máquinas virtuais da Sun e JRockit, além de ter dois excelentes servidores de aplicação java (WebLogic e Glassfish).

   A notícia que a próxima versão (Java 7) da máquina virtual Sun Oracle terá código-fonte vindo do JRockit e do Hotspot (Nome da máquina virtual daSun Oracle), possivelmente terá um aumento significativo de performance, debug mais apurado e mais recursos de monitoramento. Importante observar, qual será o estratégia em relação ao WebLogic e Glassfish, se tiver a fusão dos códigos, sem dúvida poderá ser o melhor servidor de aplicação Java.

 

   Caso a Oracle adote essa estratégia, poderá ser a empresa dominante em todos os sentidos na pilha Java, do Hardware (servidores) ao Servidor de Aplicação Java (também conhecido como J2EE ou JEE). A frente da IBM com Websphere, Red Hat com Jboss e Icedtea, Fundação Apache com Geronimo e Harmony e do Consórcio OW2 com JOnas.

   

 

   Da pior para a melhor, a competição no mercado Java está só para gente grande, vamos esperar o que os concorrentes irão fazer para manterem-se competitivos.

Icedtea/OpeJDK e Pentaho

    Esses dias tenho tido bastante diversão já que a internet no trabalho tem algumas pequenas restrições. Na última semana precisa testar o Pentaho, como também precisava testar alguma versão da máquina virtual java que rodasse num Linux na plataforma SPARC.

    Para uma linguagem multiplataforma que é possível facilmente olhar sua conta pela internet (internet banking) na plataforma AMD64 com Linux (meu caso Debian) nativamente e executar programas com Linux na plataforma SPARC. Ainda prefiro a velha e antiquada linguagem C. Isso é uma ironia, complemento de um nota antiga aqui no blog.

   Depois de três brigando com o OpenJDK/IcedTea para compilar, consegui gerar os binários depois de 13 horas initerruptas. No SPARC não consegui fazer muito coisa mas no AMD64 em testes sem rigor científico, o tempo que demorou para a instância do JBoss 4.2 carregar com o Pentaho BI Plataform.

OpenJDK:
Tempo Médio: 56 segundos

Sun-Java6:
Tempo Médio: 59 segundos

   Como o foco não era comparar as máquina virtuais java, somente fiz a média de carregar uma instância do JBoss com Pentaho. O equipamento é um Pentium Dual-Core, 2GB de RAM, Debian Lenny (AMD64), JBoss 4.2.2 e PostgreSQL 8.3.3. Gostaria de avançar mais nesse teste mas uma pequena falta de tempo me impede no momento. :)

As dez mais quentes inovações Código Aberto

O Slashdot publicou sobre as dez invovações mais quentes de Código Aberto publicadas originalmente aqui. Basicamente fala de Virtualização, CRM, Gerenciamento de infra-estrutura de rede, soluções embarcadas, automação de serviço e soluções mais completas de Groupware.

Considerando que essas soluções estão sob ótica de mercado, também consideraria nessa ecosfera sistemas que possam ajudar na organização de processos ou tomadas de decisão. Softwares Livres/Código Aberto como KnowledgeTree para controle de documentos e processos ou a famosa sigla BPM (Business Process Management) facilitam muito as empresas a diminuir o uso de serviços de centralização de documentos baseados em servidores de arquivos como Active Directory e Samba.

Outro software ou área de crescimento, ainda que no Brasil seja incipiente, são os Software de BI (Business Inteligence) e OLAP (Online Analytical Processing), por aqui tem o Pargres baseado em Java e PostgreSQL. Também tem um bem interessante que está tendo um crescimento rápido e desenvolvimento bem promissor é o Pentaho. O Pentaho é uma ferramenta de BI com muitas funcionalidades que impressionam bastante para quem mexe a primeira vez com um software desse, ele é desenvolvido principalemente em Java e tem compatibilidade com alguns banco de dados sendo o principal o MySQL, também permite trabalhar com serviços de diretório com OpenLdap ou Apache DS.

Se você quer impressionar seu chefe e ter uma promoção na empresa, uma das soluções apresentadas no artigo das 10 mais quentes mais essas que citei você pode até ser o chefe do seu chefe ou ser um empresário bem sucedido. :)

Obs. Nâo esqueça de deixar para mim de presente umas garrafas de Whisky. ;)

Compilador Java da Sun com licença GPL

Essa notícia deve ser antiga mas vamos lá. =P

Estava bisbilhotando o site da SUN e acabei entrando no openjdk e para minha surpresa o compilador java (javac) está lá disponível. Uma olhadela rápida vi várias arquivos estão com a licença GPL.

O quanto ele é funcional? Boa pergunta. =)

Ainda olhando superficialmente ele faz várias chamadas do JRE e se por estiver usando o git (não é que o Linus criou, é da FSF) ou outro JRE talvez não funcione por completo (hora de testar!!!). Para quem achava que eles não abririram o código – "Cara, é verdade o Javac está aberta!", pena que não é a Ferrari para podemos ver como funciona por dentro mas já é uma boa diversão. =)