自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Jython的發(fā)展之道:性能,性能,性能!

開發(fā) 后端
在移植到JVM上的語言中,Jython是比較主要的一支。鑒于JVM在企業(yè)級(jí)開發(fā)的影響,Jython對(duì)于推動(dòng)Python在企業(yè)級(jí)開發(fā)中的應(yīng)用有著重要的地位。本文是Jython項(xiàng)目領(lǐng)導(dǎo)的一次訪談,討論了Jython的一些現(xiàn)狀。

Java做為一門編程語言正在老去,但Java平臺(tái)卻生命力越來越旺盛。事實(shí)上由于企業(yè)級(jí)開發(fā)對(duì)JVM的依賴與信任,很多語言都視JVM為走向企業(yè)級(jí)開發(fā)的重要步驟之一。在過去的幾年間有大量編程語言被“移植”到了Java虛擬機(jī)上,更有甚者單獨(dú)為JVM創(chuàng)建了為數(shù)眾多的語言。這包括Ruby(JRuby)、JavaScript(Rhino)、Groovy以及Python(Jython)。特別是Python在JVM上得到了蓬勃的發(fā)展,這都得益于最近Jython的前進(jìn)勢頭。

Jython是Python編程語言的一種實(shí)現(xiàn),運(yùn)行在JVM上。它擁有超過10年的歷史,然而大多數(shù)時(shí)間還是處于停滯不前的狀態(tài)。最近,Jython領(lǐng)域變得活躍起來,這也帶動(dòng)了Python在JVM上的發(fā)展。近日InfoQ的Craig Wickesser采訪了Jython的項(xiàng)目領(lǐng)導(dǎo)Frank Wierzbicki以了解Jython的當(dāng)前狀況以及JVM上的Python現(xiàn)狀。

過去一年多的時(shí)間里,Jython開始變得繁榮起來,你是怎么看待這一點(diǎn)的?

我認(rèn)為Jython 2.5(該版本的Jython對(duì)CPython的兼容性是最好的)實(shí)在是功不可沒。我們現(xiàn)在擁有的Python應(yīng)用和框架的數(shù)量都是前所未有的。比如說Django、Pylons以及Py2Web等等,SQLAlchemy 0.6很快也會(huì)與Jython協(xié)同工作了;除此以外,Twisted、TurboGears以及Grok上的工作也都在有條不紊地進(jìn)行當(dāng)中。所有這些都能訪問Java程序庫,就好像訪問本地Python一樣。

Sun Microsystems在Jython開發(fā)中扮演著什么角色?

Sun允許我全職負(fù)責(zé)Jython開發(fā)。我也對(duì)NetBeans團(tuán)隊(duì)做出了不少貢獻(xiàn),使得Python和Jython成為NetBeans IDE上的一等公民,而且還使得Jython、Django以及Pylons能與GlassFish協(xié)同工作。當(dāng)然了,這些團(tuán)隊(duì)也為Jython的開發(fā)做出了卓越的貢獻(xiàn)。

Jython 2.5最重要的變化是什么?

Jython 2.5的關(guān)注點(diǎn)在于讓Jython成為現(xiàn)代化、兼容于CPython、卓越的Python實(shí)現(xiàn)。我們使勁渾身解數(shù)讓盡可能多的純Python框架和應(yīng)用能夠正常運(yùn)行,但卻沒有把太多精力放在性能調(diào)優(yōu)上,這是接下來要做的事情,換句話說,我們要使Jython的性能與CPython有一拼。

Jython 2.6的路線圖如何?

我們現(xiàn)在將大部分精力都放在了性能上,同時(shí)還在不斷增加新的特性。比如,我們計(jì)劃改進(jìn)與Java程序庫的集成,尤其是需要替換掉Jython 2.2.x中一個(gè)名為“jythonc”的工具,該工具使得我們可以方便地實(shí)現(xiàn)某些Java集成并將結(jié)果打包為jar(一種Java分發(fā)格式)。由于內(nèi)部設(shè)計(jì)的原因,jythonc還無法支持某些新的Python特性。我們確信還會(huì)有越來越多的應(yīng)用和框架將運(yùn)行在Jython上。我們期待這一天的到來:一旦應(yīng)用無法運(yùn)行在Jython上,那將是應(yīng)用本身的bug而絕非Jython的問題。

還會(huì)有Jython3k么?

當(dāng)然了!3.0是Python的未來,也是Jython的未來。坦白地說,我們還沒有開始Jython3k的開發(fā)工作,但我希望一旦2.6發(fā)布后我們將會(huì)認(rèn)真考慮這個(gè)問題。之所以等待2.6的發(fā)布是因?yàn)橛糜趯ython 2移植到Python 3上的工具需要2.6作為起始點(diǎn)。

你認(rèn)為會(huì)有人用Jython開發(fā)企業(yè)應(yīng)用么?

我聽說有人已經(jīng)將包含Pylons或Django的WAR文件放到了產(chǎn)品中,還聽說某些網(wǎng)上商店發(fā)現(xiàn)Jython與JDBC的集成在某些情況下要比CPython的數(shù)據(jù)訪問更棒。Jython 2.5是個(gè)現(xiàn)代化的Python,在很多情況下都是非常不錯(cuò)的選擇。

我不知道一般人是否了解Jython的歷史——其首個(gè)版本發(fā)布于1998年7月。那時(shí)除了Java,Jython就是JVM上功能特性最全面的編程語言了。因此企業(yè)實(shí)際上已經(jīng)使用Jython很長時(shí)間了。比如IBM WebSphere和Oracle WebLogic就使用Jython作為管理腳本語言。

你如何看待JVM上的Python現(xiàn)狀?

對(duì)于JVM上的Python來說現(xiàn)在的一切都是非常美好的。由John Rose領(lǐng)導(dǎo)的Da Vinci Machine項(xiàng)目正致力于讓JVM成為動(dòng)態(tài)語言的最佳歸宿。這項(xiàng)工作現(xiàn)在也已經(jīng)融合到JDK 7中了,一旦我們可以利用這項(xiàng)工作的成果那Jython的執(zhí)行效率就將得到極大的改進(jìn)。目前我正在編寫一個(gè)Jython原型以利用該工作的成果。

【編輯推薦】

  1. 基于JVM的語言正在開始流行
  2. Jython 2.5.1最終版發(fā)布
  3. Jython 2.5版本發(fā)布?xì)v程
  4. Python和Jython的區(qū)別簡述
  5. Jython的安裝步驟(Jython2.1)
責(zé)任編輯:yangsai 來源: InfoQ
相關(guān)推薦

2009-07-17 13:45:39

Jython性能測評(píng)

2009-07-14 17:58:55

Jython性能

2009-07-14 18:45:26

Jython開發(fā)特性

2024-12-04 10:58:57

TomcatJetty高并發(fā)

2020-08-18 13:50:04

Tomcat高并發(fā)Java

2020-12-07 15:16:04

排序算法

2021-05-12 06:02:56

性能優(yōu)化工具WebPageTest

2022-02-16 07:13:21

性能工程性能規(guī)劃

2021-05-10 08:08:25

工具LightHouse性能優(yōu)化

2013-12-02 13:19:42

RiverbedSDNSDDC

2015-09-14 10:41:51

PHP性能分析微觀分析

2024-09-06 07:55:42

2020-09-03 14:30:40

Tomcat 拆解調(diào)優(yōu)

2015-08-18 11:44:02

PHP性能分析宏觀分析

2021-12-29 10:30:15

JMH代碼Java

2021-10-25 10:23:49

Webpack 前端Tree shakin

2019-03-01 11:03:22

Lustre高性能計(jì)算

2018-07-06 11:18:46

HBaseHFile數(shù)據(jù)庫

2010-12-23 17:45:54

x86浪潮山東大學(xué)

2016-10-25 15:34:00

VDI性能監(jiān)控
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)