对于我的新的重型数据库读取应用程序,我需要使用GWT和mysql。 但是在java和PHP之间进行选择时,我有一些困惑, 1)使用mysql的JDBC比使用mysql的PHP慢(PHP赢了) 2)如果要使用PHP,我必须使用JSON在服务器和客户端之间传输数据。 3)如果使用JAVA,这个json解析和处理开销可以很容易地被快速RPC调用替换。(JAVA自己) 4)GWT对JAVA / RPC调用有很多支持和小框架,因此生产率更高。
请帮我选一个好的。
答案 0 :(得分:8)
我认为它们都非常合适。虽然我理解您对性能的需求是一个重要问题,但我个人认为,SQL驱动程序和JSON解析都不会成为您以后的性能问题。
对于大多数AJAX调用,网络开销(TCP握手等)占用大部分时间,除非您要传输大文件。然后后端是什么并不重要。
如果使用Java和Application Server,则应该快速汇集数据库连接。如果您使用GWT RCP,如果您需要稍后进行更改,则可以轻松地重构您的应用程序,这是一大优点。如果您发现某些更新速度很慢,那么最大的性能提升可能来自缓存客户端上的数据和/或组合AJAX调用。如果在客户端和服务器端都使用Java,那么这种重构会容易得多。
答案 1 :(得分:7)
GWT是使用Java代码创建Web应用程序的框架。你可以把它连接到一个PHP后端(还有关于如何做的文档)但是,从我的观点来看,你失去了GWT的主要观点,这是你整个应用程序的一种语言。
如果你真的需要使用GWT作为你的前端,也可以在Java中使用你的后端。如果采用不同的方法,那么使用PHP + HTML + JavaScript。
我的2美分。
答案 2 :(得分:4)
我认为这里遗漏的一个重点是成本。如果您使用PHP,您的托管成本可能会大大降低。将Java添加到等式通常意味着从专用服务器或VM开始,(记住Java开发的GWT前端被编译为Javascript)。忽略成本Java似乎是两者中显而易见的选择,由于上面提到的原因,主要是一种语言和更容易的RPC。
答案 3 :(得分:0)
我认为这实际上取决于你想要写它的内容以及你想要保留它的内容。我个人使用PHP,因为我个人更熟悉PHP。
答案 4 :(得分:0)
我会坚持使用Java,因为这是官方的GWT语言。如果使用PHP,则会失去使用Eclipse和IntelliJ Idea等功能强大的Java IDE进行开发和调试的好处。
答案 5 :(得分:0)
答案 6 :(得分:0)
如果您使用PHP作为后端,则不能使用" GWT rpc",您只能使用异步HTTP请求(使用RequestBuilder),但您的托管成本会降低。 我认为使用REST服务(通过PHP)实现后端更好,然后通过前端的GWT应用程序调用这些服务(例如使用restygwt库)。通过这种方法,您可以在将来轻松更改后端技术(或前端技术)。
度过愉快的时光。