将Java Web应用程序移植到Python以使其更快? [英] Porting Java web application to Python to make it faster?

查看:59
本文介绍了将Java Web应用程序移植到Python以使其更快?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,


作为非开发人员我目前正在参与一项工业研究项目,以开发一个所谓的b&b项目。网络应用程序。该应用程序与中间件同时提供
,用于连接其他几个常规企业应用程序,如ERP,SCADA等,并提供GUI

前端给用户。开发人员使用Struts,Enterprise Java

Beans等,所以它将完全用Java实现,服务器端的所有

处理只有静态HTML页面在客户端

方。它必须模仿具有多个类似Eclipse的可折叠窗格的传统

交互式应用程序的GUI逻辑,

类似XForms的动态表单,大量可扩展树视图和可排序列表

无处不在,加上SOAP通信在幕后在整个公司的网络中获取和放置

数据。


开发人员表示它需要相当大的数据。

中的硬件资源为了允许合理的响应时间,根据它们>>> 1GByte的RAM

用于相当小的工作组(< 10并发用户)。从我自己的个人

体验用Java实现的应用程序(如UML和数据库

建模工具等)我担心这可能实际上意味着响应

次将是类似Godot的,并且应用程序将很快扼杀为

,因为我们面对的实际数据量超出了

通常的三项玩具演示。


现在的问题是:如果这个灾难场景(我正在为项目中的工业

应用合作伙伴工作,希望得到一些实际上会发生(&b
实际上可用于日常工作)的结果(我希望

它不会,但仍然......),可能会有有机会通过支付cs

学生将其移植到Python的文凭论文中,使用诸如线圈,猎豹,Webware等等,它会变得更苗条更快?如果是这样,通过

大概多少钱? 10%?一个数量级?


TIA,


祝你好运,


Wolfgang Keller

解决方案

>在java或python中省略对企业应用程序的讨论。


好​​的,我会咬人。


另一个列表上有一个帖子我最近这样读过。 Web服务器上Java和python之间性能差异
可能并不是那么重要。如果有什么我猜的那样

Java会更快。每天都有大量应用程序由Java服务器运行

。服务器上的一堆RAM什么都没有。它可能花费一两美元b $ b b美元。很重要。当然,在

python中重写应用程序要少得多。


性能问题将来自

的汇总内容你提到的来源。我的猜测是你会等待ERP到这个时间比用bb渲染这些页面需要更长的时间来响应更长的时间。

python。


在我看来,在python中重做这将是浪费钱。如果

开发人员熟练使用java,那么请使用java。如果他们更喜欢python

然后使用它。


你唯一要证明的是app可以在python中完成或者

java。如果Java是该领域公认的领导者。


-

Christopher Baus
http://www.baus.net/


Am星期四,2004年7月8日00:10:18 -0700(PDT)schrieb Christopher Baus:

在java或python中省略对企业应用程序的讨论。 / blockquote>

如果我想创建一个火焰战,我会交叉发布到

comp.lang.java。* :-)

好​​的,我会咬人的。


感谢您的回答。

我最近读到的另一个列表中有一个帖子。 Web服务器上Java和python之间的性能差异可能并不重要。如果有什么我可能会猜到它会更快。每天都有大量应用程序由Java服务器运行。服务器上的一堆RAM什么都没有。


Errr,>> 1 GByte只是为5 / $
用户提供交互式GUI并进行一些应用程序间通信 - 我不会'真的,

认为这没什么。特别是如果它与用户数量和/或数据量成比例地超指数b / b。在第一个

应用程序之后,我们希望能够为网站使用相同的应用程序

,同时还有100个并发用户。

聚合来自您提到的来源的内容会导致性能问题。我的猜测是,你会等待ERP的响应时间长于用java或
python渲染页面的时间。


重点是,这可以通过检索

背景中的数据和缓存来解决。它在本地数据库中。对不起,我没有提到这个。事实上,这样的数据库必须是

应用程序的一部分,因为与其他应用程序的一些通信将具有

离线,在批处理中。模式,在两个方向(得到以及放)。

在我看来,在python中重做这将是浪费钱。


嗯,即使是实习生,cs学生也很贵吗? >: - >

如果开发人员熟练使用java,那么请使用java。如果他们更喜欢使用它,那么请使用它。




他们都没有提到过Python。 >: - >


祝你好运,


Wolfgang Keller


免责声明:我喜欢Python但是编写Java webapps(主要是Struts)来生活




我不认为问题是Java,服务器端它非常快。有了一个好的数据访问层和缓存(比如Hibernate),我认为一个

的Java webapp很难被击败。听起来问题是

设计决定模仿富桌面应用程序作为基于Web的应用程序。

因为这是一个内部应用程序,你可能想建议一个桌面客户端

(基于Java或Python)通过Soap或xmlrpc进行通信。使用Java在富有的客户端应用程序中为有限的b
观众做一个好的事情是你可以通过Webstart实现无痛部署。

另一方面,我很幸运能够编写基于wxPython的丰富的客户,并使用Inno Setup提供可点击的安装程序。


祝你好运,

Rick


Wolfgang Keller< wo ******************** @ gmx.de> ;在消息新闻中写道:< 1i ****************************** @ 40tude.net> ...

您好,

作为非开发人员,我目前正在参与一个工业研究项目,以开发一个所谓的研究项目。网络应用程序。该应用程序与中间件同时用于连接其他几个常规企业应用程序,如ERP,SCADA等,并为用户提供GUI前端。开发人员使用的是Struts,Enterprise Java
Bean等,所以它将完全用Java实现,服务器端的所有处理和客户端上只有静态HTML页面。 。它必须模仿传统
交互式应用程序的大部分GUI逻辑,具有多个类似Eclipse的可折叠窗格,类似XForms的动态表单,大量可扩展的树视图和可排序的列表,以及SOAP通信和;幕后在整个公司的网络中获取和放置大量数据。

开发人员说它需要相当大的数据。为了允许合理的响应时间,为了一个相当小的工作组(< 10个并发用户),根据它们>> 1GByte的RAM来实现硬件资源。根据我自己对使用Java实现的应用程序的经验(例如UML和数据库建模工具等),我担心这可能实际上意味着响应的时间将是类似Godot的并且应用程序将很快窒息,因为我们将面对真实世界的数据超出通常的三个项目。玩具示范。

现在的问题是:如果这个灾难场景(我正在为项目中的工业应用合作伙伴工作,希望得到一些结果,那将是实际上可以用于日常生活的工作实际上会发生(我希望
它不会,但仍然......),可能有可能通过支付学生将学生移植到Python在他的毕业论文中使用了诸如Coil,Cheetah,Webware等东西,它会变得更苗条,更快?如果是这样的话,大概多少钱? 10%? TIA,

最好的问候,

Wolfgang Keller



Hello,

as a non-developer I am currently participating in an industrial "research"
project to develop a so-called "web application". This application serves
at the same time as middleware to connect several other "conventional"
enterprise-applications such as ERP, SCADA etc. and to provide a GUI
frontend to the users. The developers are into Struts, Enterprise Java
Beans and the like, so it will be entirely implemented in Java with all the
processing on the server side and only static HTML pages on the client
side. It will have to "emulate" much of the GUI logic of a conventional
interactive application with multiple Eclipse-like collapsable panes,
XForms-like dynamic forms, lots of expandable tree views and sortable lists
everywhere, plus SOAP communication "behind the scenes" to get and put
loads of data all over the company''s network.

The developers say it will require "considerable" hardware resources in
order to allow reasonable response times, according to them >>1GByte of RAM
for a rather small workgroup (<10 concurrent users). From my own personal
experience with applications implemented in Java (such as UML and database
modeling tools etc.) I fear that this might in fact mean that the reponse
times will be Godot-like and that the application will miserably choke as
soon as we confront it with real-world amounts of data going beyond the
usual "three items" toy demonstrations.

Now the question: If this desaster scenario (I''m working for the industrial
application partner in the project who expects to get some results that
will be actually usable for everydays'' work) will actually happen (I hope
it won''t, but still...), might there be a chance that by paying a cs
student for porting it to Python in his diploma thesis using such things as
Coil, Cheetah, Webware etc. it will get slimmer and faster? And if so, by
how much approximately? 10%? One order of magnitude?

TIA,

Best regards,

Wolfgang Keller

解决方案

> Omit discussion on enterprise application in java or python.

Ok, I''ll bite.

There was thread on a another list that I read like this recently. The
difference in performance between Java and python on the web server
probably doesn''t really matter that much. If anything I might guess that
Java would be faster. Tons of huge applications are run by Java servers
everyday. A gig of RAM on the server is nothing. It might cost a couple
hundred dollars. Big deal. Certainly much less that re-writing the app in
python.

The performance problems will result from aggregating content from the
sources you mention. My guess is you''ll be waiting around for the ERP to
respond longer than it take will render the pages in either java or
python.

In my opinion it would be a waste of money to redo this in python. If the
developers are skilled in java, then go with java. If they prefer python
then use it instead.

The only thing you will prove is that the app can be done in python or
java. If anything Java is the proven leader in this field.

--
Christopher Baus
http://www.baus.net/


Am Thu, 8 Jul 2004 00:10:18 -0700 (PDT) schrieb Christopher Baus:

Omit discussion on enterprise application in java or python.


If I had wanted to create a flamewar, I would have cross-posted to
comp.lang.java.* :-)
Ok, I''ll bite.
Thanks for the answer.
There was thread on a another list that I read like this recently. The
difference in performance between Java and python on the web server
probably doesn''t really matter that much. If anything I might guess that
Java would be faster. Tons of huge applications are run by Java servers
everyday. A gig of RAM on the server is nothing.
Errr, >>1 GByte just to provide an interactive GUI to something like 5
users and doing some inter-application communication - I wouldn''t really
consider that as nothing. Especially not if it scales hyper-exponentially
with the number of users and/or the data volume. After this first
application, we expect to be able to use the same application for sites
with something like 100 concurrent users as well.
The performance problems will result from aggregating content from the
sources you mention. My guess is you''ll be waiting around for the ERP to
respond longer than it take will render the pages in either java or
python.
The point is that this can be worked around by retrieving the data in
background and "caching" it in a local database. Sorry that I didn''t
mention this. In fact such a database would have to be part of the
application, as some of the communication with other applications will have
to be offline, in "batch" mode, in both directions (get as well as put).
In my opinion it would be a waste of money to redo this in python.
Hmm, are cs students THAT expensive even as interns? >:->
If the developers are skilled in java, then go with java. If they prefer
python then use it instead.



None of them has ever mentioned Python at all. >:->

Best regards,

Wolfgang Keller


Disclaimer: I love Python but write Java webapps (mainly Struts) for a
living.

I don''t think the problem is Java, server side it is very fast. With a
good data access layer and caching (like Hibernate) I think that a
Java webapp will be hard to beat. Sounds like the problem is the
design decision to emulate a rich desktop app as a web based app.
Since this is an internal app you may want to suggest a desktop client
(either Java or Python based) communicating via Soap or xmlrpc. The
nice thing about doing an rich client app in Java for a limited
audience is you can Webstart it which makes for painless deployment.
On the other hand, I''ve had good luck writing wxPython based rich
clients and using Inno Setup to deliver a clickable installer.

Good luck,
Rick

Wolfgang Keller <wo********************@gmx.de> wrote in message news:<1i******************************@40tude.net> ...

Hello,

as a non-developer I am currently participating in an industrial "research"
project to develop a so-called "web application". This application serves
at the same time as middleware to connect several other "conventional"
enterprise-applications such as ERP, SCADA etc. and to provide a GUI
frontend to the users. The developers are into Struts, Enterprise Java
Beans and the like, so it will be entirely implemented in Java with all the
processing on the server side and only static HTML pages on the client
side. It will have to "emulate" much of the GUI logic of a conventional
interactive application with multiple Eclipse-like collapsable panes,
XForms-like dynamic forms, lots of expandable tree views and sortable lists
everywhere, plus SOAP communication "behind the scenes" to get and put
loads of data all over the company''s network.

The developers say it will require "considerable" hardware resources in
order to allow reasonable response times, according to them >>1GByte of RAM
for a rather small workgroup (<10 concurrent users). From my own personal
experience with applications implemented in Java (such as UML and database
modeling tools etc.) I fear that this might in fact mean that the reponse
times will be Godot-like and that the application will miserably choke as
soon as we confront it with real-world amounts of data going beyond the
usual "three items" toy demonstrations.

Now the question: If this desaster scenario (I''m working for the industrial
application partner in the project who expects to get some results that
will be actually usable for everydays'' work) will actually happen (I hope
it won''t, but still...), might there be a chance that by paying a cs
student for porting it to Python in his diploma thesis using such things as
Coil, Cheetah, Webware etc. it will get slimmer and faster? And if so, by
how much approximately? 10%? One order of magnitude?

TIA,

Best regards,

Wolfgang Keller



这篇关于将Java Web应用程序移植到Python以使其更快?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆