是否值得使用Google Web Toolkit进行繁忙的网站流量(如Youtube,Hulu)。如果没有那么应该使用什么Java框架?
答案 0 :(得分:7)
你打算用GWT做什么?如果你要提供大量的视频文件,我认为GWT不会让你的雷达昙花一现。由于GWT在客户端执行,它不会在您的服务器上放置任何处理器负载,并且生成的实际javascript文件被编译为所需的最小代码,并且与甚至一个视频下载相比会很小
GWT用于谷歌的adsense管理控制台和google wave。您的网站是否会比其中任何一个获得更多流量? ;)随着优化技术变得更好,随着GWT 2.0,我们应该会看到更多的性能提升。
此IO会话讨论了如何从GWT中挤出额外的性能。
答案 1 :(得分:3)
作为评估的一部分 表示层框架,我们 为Google执行了负载测试 Web工具包。我们用过样品 应用程序DynaTable,随附 GWT。我们部署了DynaTable 应用程序到Tomcat服务器。我们 使用Grinder记录测试脚本 TCPProxy。测试方法是 在这篇文章中描述。
http://jroller.com/galina/entry/google_web_toolkit_performance_test
答案 2 :(得分:2)
有很多高端网站使用Java作为后端。我使用过PHP,已经有一段时间了,但从可测性,可维护性和安全性的角度来看,我不想用它来构建一个网站。这只是我的偏好。
基本上,GWT提供客户端和服务器端组件。在可伸缩性方面,客户端不是您主要关心的问题。因此,客户端决策只是一个问题,GWT的客户端组件将提供您需要的功能和小部件,可以单独使用,也可以与javascript工具包一起使用。看看GWT application gallery,看一看人们用它做的一些事情。
GWT的服务器端组件包含传统的servlet以异步方式提供Ajax,并且将在大多数Java servlet引擎中运行。我在VPS上有一个基于GWT的小网站,而GWT服务器端在Tomcat下运行。
由于它是Ajax,你应该通过精心设计的网站获得比传统的基于servlet的解决方案更好的可扩展性,因为服务器不是连续编写和传递整个页面,而是只有更小的响应。
此外,您可以构建您的GWT应用程序并从Google App Engine提供它,这将允许您轻松支持您想要的任何大小的社区。从页面:
“App Engine开发人员现在可以购买超出免费配额限制的额外计算资源。将您的应用程序扩展到数百万用户并仅为您使用的内容付费.App Engine将始终免费开始,因此您可以尝试使用没风险。“
答案 3 :(得分:1)
性能方面,GWT非常好 - 如果你绝对需要再挤几毫秒,那么Java方面的东西与它没什么关系:相反,你需要提供编码良好的Javascript(可能使用一个强大的框架,如dojo或jquery)。
所有这些主要是关于做(部分或全部)工作客户端,它本质上比任何纯粹的服务器端方法更好地扩展 - 因为根据定义,您可以按比例获得更多的计算能力(在您的用户中)浏览器! - )随着你的负载增加!
答案 4 :(得分:1)
许多客户的最大问题是正确编码后端,而不是前端。所有顶级站点(facebook,youtube,myspace)都使用PHP作为后端,所以我认为在Java上使用它有一些东西可以说,后台有类似memcache的东西。它的内存更加轻巧,而且可扩展性更高,而且不会浪费大量的硬件。
所有这一切都说GWT对于前端是好的,因为你必须记住,即使你有100万个客户端,所有代码都在运行客户端,所以你要担心的是发送给你的任何RPC数据包服务器