Por quê hospedagem Java é tão cara?

[quote=Elizeu_Santos]Site é uma coisa, sistema corporativo é outra.
ultimamente tenho visto no RJ que PHP ainda existe, e que linguagens dinâmicas estão sendo cada vez mais utilizadas quando se trata de front-end. JSF é uma maravilha, mas… e ai soma o “mas” anterior com o “mas” do custo de hospedagem…
não sei se é este o motivo, porém tenho visto algumas oportunidades ruby, python e php.[/quote]
Boa análise Elizeu, você não está completamente errado em sua observação, porém, JSF não é Java.

É plenamente plausível colocar um sistema Java WEB no ar sem encostar no JSF e seu ciclo de vida “corporativo” (heuehueheuehue).

No mais, ao amigo criador do tópico, Java necessita de uma máquina virtual que funciona como Interpretador do bytecode que você compilou e jogou no servidor de aplicações. Seu Servidor de aplicações, sobe pool de conexões, gerencia suas threads, gerencia o ciclo de vida dos Servlets, etc. Tudo isso tem um custo de manutenção muito maior para os servidores, não somente recursos de máquinas, mas humanos tbm, tendo em vista que otimizar a JVM é algo bom quando sua aplicação escala.

Facebook é em PHP, mas (alguém me corrija se eu estiver errado) parece utiliza um Framework que otimiza o código em PHP para C++, Rip-rop se não me engano. Twitter recentemente teve que ir pra dentro da JVM por conta de escalabilidade.

O enem, foi realizado há uns anos atrás pela Red Hat. Foi todo feito sobre JBoss utilizando o Seam, alcançando picos de 150.000 acessos simultâneos.

Enfim, há Ns cenários para Ns situações específicas e sentenciar que Java não presta para Sistemas com milhares de acessos é precipitado. Linguagens de scripts estão crescendo a rodo devido à facilidade e produtividade do código, porém ainda há muito o que se fazer por algumas delas, para sequer encostar no que a JVM é capaz de fazer a nível de processamento.

Não a toa, a maioria delas, hoje são suportadas dentro da JVM.

Resta ao amigo do tópico estudar um pouco mais sobre o assunto, dar uma olhada em assuntos como Cloud por exemplo, que já jogou o desenvolvimento de Softwares Web para outros patamares.

No mais é isso, espero ter deixado minha pequena contribuição para a discussão.

Desculpem qualquer coisa.

Abs []

[quote=Mitidiero]Java requer investimento em todos os itens que o jakefrog citou acima…

Mas vale lembrar que dificilmente um site/serviço/sistema nasce com milhares de acesso :wink:

Se já tem milhares de acesso tem verba pro java.[/quote]

milhares de acesso na web != clientes pra cobrar no fim do mês

[quote=adriano_si][quote=Elizeu_Santos]Site é uma coisa, sistema corporativo é outra.
ultimamente tenho visto no RJ que PHP ainda existe, e que linguagens dinâmicas estão sendo cada vez mais utilizadas quando se trata de front-end. JSF é uma maravilha, mas… e ai soma o “mas” anterior com o “mas” do custo de hospedagem…
não sei se é este o motivo, porém tenho visto algumas oportunidades ruby, python e php.[/quote]
Boa análise Elizeu, você não está completamente errado em sua observação, porém, JSF não é Java.

É plenamente plausível colocar um sistema Java WEB no ar sem encostar no JSF e seu ciclo de vida “corporativo” (heuehueheuehue).

No mais, ao amigo criador do tópico, Java necessita de uma máquina virtual que funciona como Interpretador do bytecode que você compilou e jogou no servidor de aplicações. Seu Servidor de aplicações, sobe pool de conexões, gerencia suas threads, gerencia o ciclo de vida dos Servlets, etc. Tudo isso tem um custo de manutenção muito maior para os servidores, não somente recursos de máquinas, mas humanos tbm, tendo em vista que otimizar a JVM é algo bom quando sua aplicação escala.

Facebook é em PHP, mas (alguém me corrija se eu estiver errado) parece utiliza um Framework que otimiza o código em PHP para C++, Rip-rop se não me engano. Twitter recentemente teve que ir pra dentro da JVM por conta de escalabilidade.

O enem, foi realizado há uns anos atrás pela Red Hat. Foi todo feito sobre JBoss utilizando o Seam, alcançando picos de 150.000 acessos simultâneos.

Enfim, há Ns cenários para Ns situações específicas e sentenciar que Java não presta para Sistemas com milhares de acessos é precipitado. Linguagens de scripts estão crescendo a rodo devido à facilidade e produtividade do código, porém ainda há muito o que se fazer por algumas delas, para sequer encostar no que a JVM é capaz de fazer a nível de processamento.

Não a toa, a maioria delas, hoje são suportadas dentro da JVM.

Resta ao amigo do tópico estudar um pouco mais sobre o assunto, dar uma olhada em assuntos como Cloud por exemplo, que já jogou o desenvolvimento de Softwares Web para outros patamares.

No mais é isso, espero ter deixado minha pequena contribuição para a discussão.

Desculpem qualquer coisa.

Abs [] [/quote]

Bom post.

Só que ENEM e Twitter são famosos por sair do ar direto. :lol:

[quote=JoseIgnacio][quote=adriano_si][quote=Elizeu_Santos]Site é uma coisa, sistema corporativo é outra.
ultimamente tenho visto no RJ que PHP ainda existe, e que linguagens dinâmicas estão sendo cada vez mais utilizadas quando se trata de front-end. JSF é uma maravilha, mas… e ai soma o “mas” anterior com o “mas” do custo de hospedagem…
não sei se é este o motivo, porém tenho visto algumas oportunidades ruby, python e php.[/quote]
Boa análise Elizeu, você não está completamente errado em sua observação, porém, JSF não é Java.

É plenamente plausível colocar um sistema Java WEB no ar sem encostar no JSF e seu ciclo de vida “corporativo” (heuehueheuehue).

No mais, ao amigo criador do tópico, Java necessita de uma máquina virtual que funciona como Interpretador do bytecode que você compilou e jogou no servidor de aplicações. Seu Servidor de aplicações, sobe pool de conexões, gerencia suas threads, gerencia o ciclo de vida dos Servlets, etc. Tudo isso tem um custo de manutenção muito maior para os servidores, não somente recursos de máquinas, mas humanos tbm, tendo em vista que otimizar a JVM é algo bom quando sua aplicação escala.

Facebook é em PHP, mas (alguém me corrija se eu estiver errado) parece utiliza um Framework que otimiza o código em PHP para C++, Rip-rop se não me engano. Twitter recentemente teve que ir pra dentro da JVM por conta de escalabilidade.

O enem, foi realizado há uns anos atrás pela Red Hat. Foi todo feito sobre JBoss utilizando o Seam, alcançando picos de 150.000 acessos simultâneos.

Enfim, há Ns cenários para Ns situações específicas e sentenciar que Java não presta para Sistemas com milhares de acessos é precipitado. Linguagens de scripts estão crescendo a rodo devido à facilidade e produtividade do código, porém ainda há muito o que se fazer por algumas delas, para sequer encostar no que a JVM é capaz de fazer a nível de processamento.

Não a toa, a maioria delas, hoje são suportadas dentro da JVM.

Resta ao amigo do tópico estudar um pouco mais sobre o assunto, dar uma olhada em assuntos como Cloud por exemplo, que já jogou o desenvolvimento de Softwares Web para outros patamares.

No mais é isso, espero ter deixado minha pequena contribuição para a discussão.

Desculpem qualquer coisa.

Abs [] [/quote]

Bom post.

Só que ENEM e Twitter são famosos por sair do ar direto. :lol: [/quote]

Bom cara, até onde eu sei, a baleinha do Twitter sempre dava as caras antes dessa migração… Não lembro de tê-la visto depois disso. Todavia não sou parâmetro pois entro no Twitter 10 minutos por semana.

Quanto ao enem, aí eu não sei, mas sei que no ano que lí a notícia da red hat, estava com uma porcentagem de quase 100% de disponibilidade.

Não sei como era antes e nem como ficou depois. Só citei exemplos de sucesso com a plataforma pra mostrar que não é uma constante que Java não dê pra se criar aplicações com milhares da usuários simultâneos. Discutível pode ser, mas constante não.

Abs[]

Voce leu notícia ou press release?

Uma rápida busca no google por “enem fora do ar” retornam vários resultados interessantes.

Mas quanto ao twitter, sei que eles migraram um sistema pra java, não sei se foi o site.

Se for, sem dúvida é um bom exemplo já que o Twitter deve lidar com essa quantidade de usuários diaramente.

Mas lembrando que a discussão não é se Java consegue lidar com essa carga, mas o custo necessário pra alcançar tal proeza (ou como alguns preferem chamar de “investimento”).

[quote=adriano_si][quote=Elizeu_Santos]Site é uma coisa, sistema corporativo é outra.
ultimamente tenho visto no RJ que PHP ainda existe, e que linguagens dinâmicas estão sendo cada vez mais utilizadas quando se trata de front-end. JSF é uma maravilha, mas… e ai soma o “mas” anterior com o “mas” do custo de hospedagem…
não sei se é este o motivo, porém tenho visto algumas oportunidades ruby, python e php.[/quote]
Boa análise Elizeu, você não está completamente errado em sua observação, porém, JSF não é Java.

É plenamente plausível colocar um sistema Java WEB no ar sem encostar no JSF e seu ciclo de vida “corporativo” (heuehueheuehue).

No mais, ao amigo criador do tópico, Java necessita de uma máquina virtual que funciona como Interpretador do bytecode que você compilou e jogou no servidor de aplicações. Seu Servidor de aplicações, sobe pool de conexões, gerencia suas threads, gerencia o ciclo de vida dos Servlets, etc. Tudo isso tem um custo de manutenção muito maior para os servidores, não somente recursos de máquinas, mas humanos tbm, tendo em vista que otimizar a JVM é algo bom quando sua aplicação escala.

Facebook é em PHP, mas (alguém me corrija se eu estiver errado) parece utiliza um Framework que otimiza o código em PHP para C++, Rip-rop se não me engano. Twitter recentemente teve que ir pra dentro da JVM por conta de escalabilidade.

O enem, foi realizado há uns anos atrás pela Red Hat. Foi todo feito sobre JBoss utilizando o Seam, alcançando picos de 150.000 acessos simultâneos.

Enfim, há Ns cenários para Ns situações específicas e sentenciar que Java não presta para Sistemas com milhares de acessos é precipitado. Linguagens de scripts estão crescendo a rodo devido à facilidade e produtividade do código, porém ainda há muito o que se fazer por algumas delas, para sequer encostar no que a JVM é capaz de fazer a nível de processamento.

Não a toa, a maioria delas, hoje são suportadas dentro da JVM.

Resta ao amigo do tópico estudar um pouco mais sobre o assunto, dar uma olhada em assuntos como Cloud por exemplo, que já jogou o desenvolvimento de Softwares Web para outros patamares.

No mais é isso, espero ter deixado minha pequena contribuição para a discussão.

Desculpem qualquer coisa.

Abs [] [/quote]

eu acabei falando “rápido” demais… queria falar de algumas desvantagens. mas enfim, é isso ai que você falou.

Se não me engano a fila do Twitter que foi pra dentro da JVM, eles cresceram de uma maneira tão grande que atingiram uma parede, na qual não conseguiam mais escalar da maneira que precisavam.

portanto foi tudo reimplementado em Scala, que roda na JVM.

[quote=JoseIgnacio]Voce leu notícia ou press release?
[/quote]

Agora é que são elas… não me lembro… :lol:

Fiz a busca, mas aqui no trampo infelizmente não abre todos os links para verificação… Quando chegar em casa dou uma olhada. Me lembro que isso ocorreu em 2009 se não me engano.

Também não sei ao certo cara. Usei o exemplo porque na época foi algo bem comentado e embora não tenha sido todo o Twitter, ainda assim é algo que deve ser considerado. O digao colocou que pode ter sido a fila… Enfim.

[quote=JoseIgnacio]
Mas lembrando que a discussão não é se Java consegue lidar com essa carga, mas o custo necessário pra alcançar tal proeza (ou como alguns preferem chamar de “investimento”).[/quote]

Eu entendo que começou assim, mas em um determinado momento do tópico, o amigão que o criou, deixou claro que havia chegado a conclusão que [quote]Então, desenvolver um site para acesso de milhares de pessoas simultaneamente, Java nem pensar?[/quote]

Quando não é bem assim…

Só entrei nos méritos pra evitar conclusões equivocadas. Mas concordo com você. O custo de manutenção de um servidor para suportar toda a artilharia Java, deve ser pensado de acordo com seu problema e solução proposta.

Dependendo, pode ser tanto gasto quanto invesimento.

Abs []

Eles dão um SGDB como o MySQL também? :slight_smile:

No mais, ajudaria em termos de desempenho, não usar Frameworks como JSF, Hibernate, Spring, e fazer tudo na unha, JSPs, Servlets, Javascript, etc?

Eles dão um SGDB como o MySQL também? :slight_smile:

No mais, ajudaria em termos de desempenho, não usar Frameworks como JSF, Hibernate, Spring, e fazer tudo na unha, JSPs, Servlets, Javascript, etc?[/quote]

Isso ae depende. Se você entende bem de JSF, poderá fazer um bom código com ele. Se entende de JSP, fará algo bom com ele, e por aí vai. Vai mais da parte do programador mesmo, o framework pode influenciar, mais pouco.

Ó único caso diferente que vi até agora é o uso do jQuery pra versões mobile de sites. Vi por alto que é ruim, pois carrega coisas desnecessárias e talz, fazendo o site demorar até 3 vezes mais para carregar que o normal(Sem jQuery).

Então até o Javascript é recomendado fazer na unha, sem usar o jQuery? :slight_smile:

Ou isso se aplicaria nesse caso para versões mobile de sites?

[quote=javadalberto]
No mais, ajudaria em termos de desempenho, não usar Frameworks como JSF, Hibernate, Spring, e fazer tudo na unha, JSPs, Servlets, Javascript, etc?[/quote]

cara, como Erck falou, tudo vai do quanto você conhece a ferramenta e saiba otimizá-la.

Tudo tem um custo. Frameworks lhe dão Produtividade, muita produtividade, mas lhe cobram performance, quesito esse que pode ser aprimorado quanto mais conhecedor do Framewok você se tornar.

Lembre que um Framework adiciona uma camada a mais em seus Projetos.

Jamais lhe direi pra fazer tudo na unha, eu vejo isso quase como matar um projeto, porém usar aquilo que for melhor para sua situação.

Só para você ter uma ideia do funcionamento do JSF, lhe recomendo esse post do Edson Gonçalves.

Perceba o que o JSF precisa fazer por você para que a mágica aconteça: http://www.edsongoncalves.com.br/tag/jsf-2-0/

Se isso é certo ou errado ??? Pra mim é discutível, a produtividade gerada tem me sido bastante útil em algumas situações, mas definitivamente não é a melhor solução pra tudo, pois o mesmo tem um tempo de resposta bem maior (devido a montagem dos componentes) se comparados a outras soluções.

Por isso eu lhe digo, estude a sua solução. Não pense logo de cara em “Milhares de acessos simultâneos”. Você vai ter isso mesmo ??? Prefere produtividade agora ou já realmente seu Sistema vai precisar escalar logo ???

Tudo isso só você pode responder.

Pra não fugir do tema central do tópico de vez, acho que já ficou claro porque a hospedagem Java é tão “cara”, não ???

Abs []

adriano_si, não existe a possibilidade de se usar MVC sem Frameworks e ainda assim escrever um bom código?

Eles dão um SGDB como o MySQL também? :slight_smile:

[/quote]

Eles me dão o Datastore (tranquilamente o NOSQL mais acessado do planeta com 2 trilhões de acessos por mês). :wink:

Mas, se ainda assim vc achar que precisa de SQL, vc tem a opção do MySQL.

Opa cara, claro que sim. Usar Framework não é garantia de código bom ou ruim. Frameworks te dão produtividade e quem sabe performance.

Encare Frameworks como soluções padrões para problemas comuns que outros já passaram e montaram uma solução fechada para não passarem mais por isso.

Frameworks como Hibernate se tornaram padrão do mercado, devido a fácil abstração da camada de acessos a Dados, porém há pessoas que não gostam e têm seus motivos para isso. Usar ou não usar, não lhe garante bons códigos.

Peguei 3 sistemas que usavam Hibernate, somente no último conseguio enxergar o uso correto do mesmo.

Bom código independe de Framework. Desculpem se meu post passado em algum momento deu a entender isso.

Abs []

Depende de onde você olha.

O Grails Brasil (www.grailsbrasil.com.br) tá me custando algo entre 17 e 20 dolares por mês na Amazon: mais barato que muita hospedagem PHP por ai.

É apenas a minha opinião, mas o Hibernate e o Spring Security não parecem ter abstraído tantas coisas assim, são tantas configurações, que os “métodos antigos” parecem ser mais simples e práticos. Mas é apenas a minha opinião. :slight_smile:

É apenas a minha opinião, mas o Hibernate e o Spring Security não parecem ter abstraído tantas coisas assim, são tantas configurações, que os “métodos antigos” parecem ser mais simples e práticos. Mas é apenas a minha opinião. :)[/quote]
Quanto ao Hibernate, eu não concordo, configura-lo hoje é tão trivial quanto qualquer outra configuração de FMKs consolidados…o Hibernate te dá um CRUD simples, só isso, já economiza muitas linhas de código…uma outra coisa, vai fazer controle transacional na mão…

Eles dão um SGDB como o MySQL também? :slight_smile:

[/quote]

Eles me dão o Datastore (tranquilamente o NOSQL mais acessado do planeta com 2 trilhões de acessos por mês). :wink:

Mas, se ainda assim vc achar que precisa de SQL, vc tem a opção do MySQL.[/quote]

André,

Me cadastrei recentemente lá e não encontrei a opção do MySQL, você poderia me dar uma dica de onde ativar?

No mais gostei muito do serviço, é de qualidade e simples de usar!

Abs,
Salomão

Eles dão um SGDB como o MySQL também? :slight_smile:

[/quote]

Eles me dão o Datastore (tranquilamente o NOSQL mais acessado do planeta com 2 trilhões de acessos por mês). :wink:

Mas, se ainda assim vc achar que precisa de SQL, vc tem a opção do MySQL.[/quote]

André,

Me cadastrei recentemente lá e não encontrei a opção do MySQL, você poderia me dar uma dica de onde ativar?

No mais gostei muito do serviço, é de qualidade e simples de usar!

Abs,
Salomão
[/quote]

https://developers.google.com/cloud-sql/docs/before_you_begin?hl=pt-BR