AJAX - ZK, vcs conhecem?

27 respostas
agodinho

semana passada entrei num novo projeto usando um framework ajax do qual nunca ouvira falar: ZK (http://www.zkoss.org/).

A primeira vista parecia tosquinho mas depois que comecei a usar o bicho …

Vale a pena uma olhadinha (ou usadinha, como preferirem).

Não se deixem enganar, só pra ter uma idéia até agora não precisei programar uma linha de jabaScript !!! Tudo no java mesmo …

Aguardo comentários

27 Respostas

M

Andei testando ele esses dias…
É interessante mas parace que tem problemas de performance:
http://jroller.com/page/galina?entry=zk_framework_performance_test

E não sei se é impressão minha mas parece que ele faz muito acesso ao servidor… ou seja, coisas que já deveriam ser carregadas na iniciallização do aplicativo vão sendo carregadas aos poucos, pode ser uma vantagem mas tb pode não ser.

O ZeroKode é interessante, ajuda a construir a interface sem ser tudo no braço.

agodinho

macfly2500, tem problemas de performance sim (a documentação fala sobre baixa escalabilidade - não sei o que eles chamam de baixa mas não aconselho pra aplicações com mais de 50 usuários simultâneos).

cara, pelo que ele faz (guarda uma penca de info na session do usuário) já era de se esperar …

mas ainda assim é muito maneiro.

qto aos muitos acessos ao server depende de como sua aplicação é implementada - ele emprega o conceito de listenners - se vc criar listenners muito genéricos óbviamente vc vai ter muitos acessos mesmo …

ainda não precisei do editor dele naum (o zerocode). Com um bom conjunto de stylesheets vc simplifica e muito seus arquivos zul - a ponto de poder fazê-los na mão …

M

Pois é eu até estava gostando do bixinho mas devido a isto desisti, pois peformance é um ponto crucial do projeto que estou desenvolvendo. Por aquele teste que foi feito ele aguenta até 40 usuários…

Realmente ele vai gravando muita coisa na session, eles deveriam dar uma melhorada nisso. Sei lá… deixar algumas coisas no lado do cliente através de campos ocultos, forms, etc…

Tú chegou a dar uma olhada no ThinWire?
http://www.thinwire.com/

Achei interessante tb…

agodinho

hmmm, nunca vi naum - vou dar uma avaliada e no decorrer da semana posto meus comentários sobre esse cara (no site já naum achei a documentação dele!)

avaliei recentemente tb o DWR e o Echo2, mas todos esses (até onde vi - posso estar enganado) precisam que vc escreva muito jabaScript.

estou curioso com aquele sdk da google - mas ainda naum tive tempo de olhar (alguns amigos anteciparam que ele depende de script tb - naum confirmei isso).

Já á favor do ZK (apesar da “baixa” escalabilidade) é que ele realmente é fácil de usar. Nós estamos apostando nele (ele é bem novo ainda - recentemente saiu a versão 2.1.2 - aquele benchmark é pra 2.0).

Pra nossa aplicação escalabilidade é importante (performance só numa fase final).

Vamos ver né? Acho que qq decisão por “framework” AJAX ainda é um tiro no escuro.

agodinho

macfly2500, numa primeira análise (sem muito critério) os tempos de respostas do ThinWire naum me pareceram melhores que o zk naum (os tempos de carga dos widgets e os tempos de intereção estão até inferiores aqui).

vou olhar com calma e te digo no decorrer da semana o que achei.

M

Blz…

Nos mantenha informados sobre os seus avanços com o ZK.
Eu ainda estou a cata de um framework para trabalhar com Ajax, faz umas 2 semanas que só estou testando eles… hehe
Testei além desses que vc mencionou o Open Lazlo, Echo, ThinWare, GWT, qooxdoo, Dojo, tibco gi …

Acho que o ZK, ThinWire, Open Lazlo, echo são bons para criar uma aplicação realmente com cara e funcionalidade semelhante a de desktop. Já o otros como DWR permitem definir quais partes da página serão carregadas dinamicamente via Ajax.

O GWT (Google Web Toolkit) compila e gera o javascript para você. Mas não consegui me encontrar com ele… não gostei muito

M

agodinhost:

macfly2500, numa primeira análise (sem muito critério) os tempos de respostas do ThinWire naum me pareceram melhores que o zk naum (os tempos de carga dos widgets e os tempos de intereção estão até inferiores aqui).

vou olhar com calma e te digo no decorrer da semana o que achei.

Blz. Mas vc testou o demo do site ou localmente?
Pois o site deles é meio lento mesmo…

M

Dê uma olhada no Qxooxdoo… só por curiosidade…

De todos que testei é o que tem a interface mais legal:
http://qooxdoo.org/demo

agodinho

saquei, testei no site deles mesmo. Vou montar a parada aqui e depois te digo como foi.

agodinho

macfly2500:
Dê uma olhada no Qxooxdoo… só por curiosidade…
caraca!!! mais um??? vou ver, vou ver - já estou sem sono mesmo …
btw: que raio de nome naum eh naum ? naum sei nem como se pronuncia.

agodinho

Por curiosidade o quê que vc achou do Open Lazlo e do Dojo?

M

Heheh

Bom eu vou nanar… pois já estou dormindo no teclado…

Se tiver sem sono mesmo dê uma olhada no Morfik:
http://www.morfik.com/

A idéia o do Morfik é muito boa, vc desenvolve em liguagens como Delphi, Java, VB etc e ele converte para JScript…

Veja no demo deles que eles criaram um clone do GMail…
Eu testei e é realmente muito facil de utilizar… principalmente para quem já trabalhou com linguagens como Delphi…

M

Com o Dojo tem que escrever Javascript.
É um Toolkit em js e não um framework Java, pode ser usado com páginas em PHP, HTML, jsp etc

Open Lazlo
Achei meio pesadão.
Não gosto muito de Flash, mas ele pode trabalhar com DHTML também
Estou baixando um plugin para o eclipse que não tinha visto que existia
o IDE4Laszlo e vou dar mais uma testada nele.
Qualquer coisa reporto aqui

twyster

Opa grande agodinho e ai como vai a experiencia com o ZK. Esse OpenLazlo é interessante para criação de aplicaçoes RIA, mais eu sinceramente tenho um pé atras com aplicações swf`s. Mas o OpenLaslo aparentemente bate de frente com o FLEX muito bem. FLEX é o servidor da macromédia que praticamente faz a mesma função do Lazlo.

Estou acompanhando o topico e achei muito interessante os assuntos, vou averiguar algumas das soluçoes propostas aqui depois.

Abraços.

ricardosoares

testei a versao 1.0

fiz um pequeno sistema, só um cadastro
ficou realmente familiar a uma aplicação desktop
muito fácil mesmo. nenhuma linha de javascrip, só java!
só fico receoso quanto a confiabilidade, capacidade em grande volume de acesso e performance. mas isso, só o tempo responderá.
por enquanto, aprovo sim. vale a pena desenvolver algo pequeno nele.

erickmelo

É bem pertinente esta colocação quanto à performance do ZK… Estou pensando em adotá-lo no desenvolvimento de um projeto. Resolvi então pesquisar um pouco mais a respeito desse aspecto.

A colocação postada anteriormente neste fórum, mostrando que o ZK possui uma limitação de 40 usuários é de certa forma contestada pelos desenvolvedores envolvidos no projeto.

http://sourceforge.net/forum/message.php?msg_id=3950971

Eles colocam que as métricas associadas no teste que relata o limite de 40 usuários não estão muito claras.

Destacam que o script de teste do ZK efetua 302 testes de requisição por usuário, enquanto o echo2 executa apenas 22 testes. Essa suposta limitação ao ZK refere-se ao número de requisições simultâneas que o Tomcat pode lidar.

Segue abaixo o cálculo feito. Pelo que percebo o ZK pode ser perfeitamente utilizado em aplicações com um número maior de usuários, haja visto que geralmente um único usuário não fará 302 requisições simultâneas… Ou seja, teremos como limitador o número de Threads do Tomcat: 10.000. Para aplicações de pequeno/médio porte este limitador não implica em problemas.

Por favor, me corrijam se eu estiver errado.

We did a simple caculation:

  1. For echo2: 500 users * 22 requests = 11000

  2. For zk: 40 users * 302 request = 12080

  3. Your Tomcat server set maxThreads to 10000.

We cut the number of ZK’s test requests and try. We found
the less test
requests sent for a user, the better the Performance.

agodinho

Oi, reabrindo esse post.

Estou na faze de entrega do nosso sistema - e é o sistema que servio de piloto pra divulgarmos o ZK na empresa em que estou prestando serviços hoje.

Valeu a pena.

Tivemos algumas dores de cabeça com o aplication server adotado pelo cliente (Oracle OPMN / OC4J) mas o ZK se saiu muito bem, muito melhor do que esperávamos.

O projeto está bem estável e onda de vento em popa lá no site da source forge - a versão atual é a 2.4.1 (quando abri o post ainda era 2 e alguma coisa).

Woody

erickmelo

Reabrindo o post novamente:

O ZK encontra-se atualmente na versão 3.0.3. Os problemas de performance alegados nas versões iniciais parecem estar resolvidos. Além disso foram adicionadas novas funcionalidades, como integração com outros frameworks (Hibernate, Acegi, Spring, JSF, etc), além de JPA.

Foi feita uma comparação entre a versão 2.4 e a 3.0. O ganho de performance foi elevado: 5x

Caso alguém queira dar uma conferida nesse teste, segue a URL:

http://www.zkoss.org/smalltalks/zk30rctest/

O projeto tem ganhado força e grandes empresas já comçam a usá-lo:

http://www.zkoss.org/whosusingzk/

Acredito que vale a pena considerá-lo.

TheThis

Ae galera… to usando o zk para fazer um sistema para a faculdade
assim que estiver terminado Posto aki as dificuldades encontradas
e também as vantagens que o zk trouxe (se tiver)
até mais abraço

fantomas

Oi Gujers,

Estou avaliando este framework e estou um pouco confuso em relação a licensa, mesmo lendo as informações contidas no site dos produtores.

Até onde eu entendi, se eu quiser utilizar o ZK para desenvolver um software para vender depois (sem o código fonte) vou ter que comprar um licensa para poder fazer isso.

É isso mesmo?

Abraços

leandrogmuller

É complexo hoje escolher qual framework utilizar com tanta novidade no mercado… Estou a encerrar uma aplicação com JSF + RichFaces e gostaria de saber se ouve muita perda na performance do ZKnão tive a oportunidade de olhar seus códigos e principalmente sua metologia de desenvolvimento, normalmente as aplicações aqui da empresa tem acesso + ou - 500 usuários simultaneos, uma implementação instável com grande peso na banda de internet poderia causar uma grande dor de cabeça ao departamento de TI.

Obrigado pela atenção turma.

rissato

pra quem está usando o ZK, existe um projeto chamado ZeroKode. É um designer (feito com o ZK mesmo) pra vc criar as interfaces arrastando os componentes para uma estrutura de árvore (igual no OAF). Mto legal, e ajuda pq vc vai “desenhando” a interface e já vê o resultado na hora.

fantomas

leandrogmuller:
É complexo hoje escolher qual framework utilizar com tanta novidade no mercado… Estou a encerrar uma aplicação com JSF + RichFaces e gostaria de saber se ouve muita perda na performance do ZKnão tive a oportunidade de olhar seus códigos e principalmente sua metologia de desenvolvimento, normalmente as aplicações aqui da empresa tem acesso + ou - 500 usuários simultaneos, uma implementação instável com grande peso na banda de internet poderia causar uma grande dor de cabeça ao departamento de TI.

Desenvolvi um sistema recentimente com o ZK; o sistema é simples e cadastral e não tem muitos usuários porisso fica difícil pra eu saber como o ZK irá se comportar com alta demanda de requisições.

Baseando-me nos estudos que fiz do framework eu diria que é bem rápido e suportaria grande quantidade de requisições facilmente pelos seguintes motivos:

  1. Internamente ele é feito inteiramente com AJAX.
  2. A arquitetura é bem mais simplificada que a do JSF.
  3. Como tudo é feito com AJAX o volume de cada requisição é mínimo.
  4. Possibilita utilizar todos os padrões que vc julgar necessário de forma simples.
  5. Os detalhes que envolvem a parte visual da implementação é simples e muito clara.
  6. Como o envolvimento com o protocolo HTTP é zero e o que sobre é praticamente tudo em Java vc tem chances que incluir soluções que melhorem a performance a todo o momento.
  7. Se vc quiser vc não utiliza tags, faz tudo em Java, eu não fiz isso, mas o ZK permite tranquilamente.
  8. Extremamente flexivel.

O chato destas coisas é que fomentam pessimos hábitos de programação, principalmente no ZK que tem como um dos principais objetivos ser bastante flexivel e atender todo quanto é tipo de usuário.

flws

rissato

Não concordo. Em se tratando de INTERFACE (e somente INTERFACE), o código gerado (xml) com o designer é exatamente igual ao que o programador faria. Além disso, acredito que “desenhar” interfaces é muito mais produtivo e permite que você use melhor sua criatividade na hora de posicionar os componentes.

leandrogmuller

Pela experiencia que obteve, ele funciona + ou - parecido com JSF, gosto muito do jsf devido a separação entre as camadas, podendo modificar xml e htmls sem mecher um dedo no codigo da aplicação.

Digo isso por que minha camada de negocio esta toda pronta, e gostaria de mudar somente a camada de visão para esse framework ZK, sendo uma das coisas que mais gosto em JSF, a facilidade de mudar uma camada sem afetar a outra.
Já fiz isso quando mudei de MyFaces para Woodstock, então param o projeto e resolvi migrar para RichFaces… e nunca precisei mecher nos beans para fazer essa migração.

t++

fantomas

Discordancia completamente aceita.

Uma hora destas vou experimentar esta ferramenta para ver os resultados.

Abraços

GouverMXT

Esse framework é só para view? Posso integrá-lo de boa com um controlador, como por exemplo, o VRaptor?

Criado 16 de outubro de 2006
Ultima resposta 28 de fev. de 2009
Respostas 27
Participantes 10