fbpx
维基百科

Vert.x

Eclipse Vert.x 是一个事件驱动的应用程序框架,其支持多种编程语言,并运行于Java虚拟机中。[3][4]

Vert.x
原作者Tim Fox
開發者Tim Fox, VMWare, Red Hat, Eclipse基金会
当前版本
  • 4.5.1 (2023年12月13日;穩定版本)[1]
源代码库
  • github.com/eclipse/vert.x
编程语言Java, JavaScript, Apache Groovy, Ruby, Scala, Kotlin, Ceylon, Python, Clojure
操作系统Cross-platform
系統平台Java虚拟机
类型事件驱动 网络
许可协议Apache License version 2.0
网站vertx.io

在其他编程语言中,与其类似的有Node.js(适用于JavaScript)、Twisted(适用于Python)、Perl Object Environment(适用于Perl)、libevent(适用于C)、reactPHP(适用于PHP)、amphp(适用于PHP)及EventMachine(适用于Ruby)。

自2.1.4版本始,Vert.x以JavaJavaScriptGroovyRubyPythonScalaClojure及Ceylon编程语言公开其API。

自3.6.0版本始,Vert.x以JavaJavaScriptGroovyRubyScalaKotlin及Ceylon编程语言公开其API。

历史 编辑

2011年,在VMware工作的 Tim Fox 开始开发Vert.x。

Tim Fox 最初将项目命名为“Node.x”,该名称由Node.js的命名衍生而来,其中“x”表示新项目支持多种编程语言,而非仅支持JavaScript。该项目后来改名为“Vert.x”以避免潜在的法律问题,因为“Node”是 Joyent Inc. 拥有的商标[5]。新名称替换了node一词,所使用的vertex一词在数学中同样意为节点。

2012年12月,VMware向已离职的 Tim Fox 发送法律文件,以期从Vert.x社区[6][7]获得Vert.x商标、域名、博客、GitHub帐户及Google Group的控制权。

与其他各方讨论后,2013年1月,VMware同意将项目和相关IP转移到Eclipse基金会这一中立的法律实体中,以使Vert.x社区获得最大收益。 [8]

2013年8月,Core Vert.x 项目完成了向Eclipse基金会的迁移。Vert.x技术栈中的其他项目并未迁移至Eclipse,但因Eclipse基金会的默认而继续使用“Vert.x”商标。

2014年5月,Vert.x在JAX创新奖中荣获“最具创新性的Java技术”奖。 [9]

2016年1月12日,Tim Fox辞去了Vert.x项目的领导职务。[10]长期贡献者Julien Viet取代了他的位置。

架构 编辑

Vert.x使用底层I/O库Netty 。 [11]

Vert.x拥有以下特性:

  • 支持多种编程语言。应用程序组件能够以Java、JavaScript、Groovy、Ruby、Scala、Kotlin和Ceylon编写。
  • 简单的并发模型。所有代码都是单线程的,免除了多线程编程的麻烦。
  • 简单的异步编程模型,用于编写真正可扩展的非阻塞应用程序。
  • 跨越客户端和服务器端的分布式事件总线。事件总线甚至可以渗透到浏览器中的JavaScript中,从而可以创建所谓的实时Web应用程序。
  • 角色模型和公共存储库,用于重用并共享组件。

示例 编辑

下列Java代码会实现一个输出“Hello from Vert.x”的服务器:

import io.vertx.core.AbstractVerticle; public class Server extends AbstractVerticle {  public void start() {  vertx.createHttpServer().requestHandler(req -> {  req.response()  .putHeader("content-type", "text/plain")  .end("Hello from Vert.x!");  }).listen(8080);  } } 

同一服务器的JavaScript版本如下:

vertx.createHttpServer()  .requestHandler(function (req) {  req.response()  .putHeader("content-type", "text/plain")  .end("Hello from Vert.x!"); }).listen(8080); 

上述两种代码均可使得Web服务器以高度可扩展的方式提供内容。

参考 编辑

  1. ^ Release 4.5.1. 2023年12月13日 [2023年12月19日]. 
  2. ^ Eclipse Vert.x 3.8.5
  3. ^
    Wait, vert.x – JVM Polyglot Alternative to Node.js (页面存档备份,存于互联网档案馆),Dio Synodinos,2012-05-04,InfoQ
  4. ^
    Vert.x – an asynchronous, event-driven Java web framework (页面存档备份,存于互联网档案馆),Eberhard Wolff,2012-06-20,hDeveloper
  5. ^
  6. ^
    "VMware's dealings with Vert.x founder should serve as a warning." (页面存档备份,存于互联网档案馆
  7. ^
    "Who controls Vert.x: Red Hat, VMware, or neither?" (页面存档备份,存于互联网档案馆
  8. ^
    "Vert.x Joining Eclipse Foundation" (页面存档备份,存于互联网档案馆
  9. ^
    “Vert.x赢得JAX创新奖” (页面存档备份,存于互联网档案馆
  10. ^
  11. ^
    vert.x – JVM Polyglot Alternative to Node.js (页面存档备份,存于互联网档案馆),Dio Synodinos,2012-05-04,InfoQ

外部链接 编辑

  • 官方网站

vert, 注意, 本條目主題可能尚無中文譯名, 因而使用原文或其拉丁字母转写作為標題, 如果您在可靠來源中找到本主題的中文名稱, 请勇于将其移动至中文标题, 2019年1月, eclipse, 是一个事件驱动的应用程序框架, 其支持多种编程语言, 并运行于java虚拟机中, 原作者tim, fox開發者tim, vmware, eclipse基金会当前版本4, 2023年12月13日, 穩定版本, 源代码库github, eclipse, vert, x编程语言java, javascript, apache, . 注意 本條目主題可能尚無中文譯名 因而使用原文或其拉丁字母转写作為標題 如果您在可靠來源中找到本主題的中文名稱 请勇于将其移动至中文标题 2019年1月 Eclipse Vert x 是一个事件驱动的应用程序框架 其支持多种编程语言 并运行于Java虚拟机中 3 4 Vert x原作者Tim Fox開發者Tim Fox VMWare Red Hat Eclipse基金会当前版本4 5 1 2023年12月13日 穩定版本 1 源代码库github wbr com wbr eclipse wbr vert wbr x编程语言Java JavaScript Apache Groovy Ruby Scala Kotlin Ceylon Python Clojure操作系统Cross platform系統平台Java虚拟机类型事件驱动 网络许可协议Apache License version 2 0网站vertx wbr io自由软件主题在其他编程语言中 与其类似的有Node js 适用于JavaScript Twisted 适用于Python Perl Object Environment 适用于Perl libevent 适用于C reactPHP 适用于PHP amphp 适用于PHP 及EventMachine 适用于Ruby 自2 1 4版本始 Vert x以Java JavaScript Groovy Ruby Python Scala Clojure及Ceylon编程语言公开其API 自3 6 0版本始 Vert x以Java JavaScript Groovy Ruby Scala Kotlin及Ceylon编程语言公开其API 目录 1 历史 2 架构 3 示例 4 参考 5 外部链接历史 编辑2011年 在VMware工作的 Tim Fox 开始开发Vert x Tim Fox 最初将项目命名为 Node x 该名称由Node js的命名衍生而来 其中 x 表示新项目支持多种编程语言 而非仅支持JavaScript 该项目后来改名为 Vert x 以避免潜在的法律问题 因为 Node 是 Joyent Inc 拥有的商标 5 新名称替换了node一词 所使用的vertex一词在数学中同样意为节点 2012年12月 VMware向已离职的 Tim Fox 发送法律文件 以期从Vert x社区 6 7 获得Vert x商标 域名 博客 GitHub帐户及Google Group的控制权 与其他各方讨论后 2013年1月 VMware同意将项目和相关IP转移到Eclipse基金会这一中立的法律实体中 以使Vert x社区获得最大收益 8 2013年8月 Core Vert x 项目完成了向Eclipse基金会的迁移 Vert x技术栈中的其他项目并未迁移至Eclipse 但因Eclipse基金会的默认而继续使用 Vert x 商标 2014年5月 Vert x在JAX创新奖中荣获 最具创新性的Java技术 奖 9 2016年1月12日 Tim Fox辞去了Vert x项目的领导职务 10 长期贡献者Julien Viet取代了他的位置 架构 编辑Vert x使用底层I O库Netty 11 Vert x拥有以下特性 支持多种编程语言 应用程序组件能够以Java JavaScript Groovy Ruby Scala Kotlin和Ceylon编写 简单的并发模型 所有代码都是单线程的 免除了多线程编程的麻烦 简单的异步编程模型 用于编写真正可扩展的非阻塞应用程序 跨越客户端和服务器端的分布式事件总线 事件总线甚至可以渗透到浏览器中的JavaScript中 从而可以创建所谓的实时Web应用程序 角色模型和公共存储库 用于重用并共享组件 示例 编辑下列Java代码会实现一个输出 Hello from Vert x 的服务器 import io vertx core AbstractVerticle public class Server extends AbstractVerticle public void start vertx createHttpServer requestHandler req gt req response putHeader content type text plain end Hello from Vert x listen 8080 同一服务器的JavaScript版本如下 vertx createHttpServer requestHandler function req req response putHeader content type text plain end Hello from Vert x listen 8080 上述两种代码均可使得Web服务器以高度可扩展的方式提供内容 参考 编辑 Release 4 5 1 2023年12月13日 2023年12月19日 Eclipse Vert x 3 8 5 Wait vert x JVM Polyglot Alternative to Node js 页面存档备份 存于互联网档案馆 Dio Synodinos 2012 05 04 InfoQ Vert x an asynchronous event driven Java web framework 页面存档备份 存于互联网档案馆 Eberhard Wolff 2012 06 20 hDeveloper https groups google com d msg vertx lxZGADtT6dQ a0qzaQpzfroJ VMware s dealings with Vert x founder should serve as a warning 页面存档备份 存于互联网档案馆 Who controls Vert x Red Hat VMware or neither 页面存档备份 存于互联网档案馆 Vert x Joining Eclipse Foundation 页面存档备份 存于互联网档案馆 Vert x赢得JAX创新奖 页面存档备份 存于互联网档案馆 https groups google com forum fromgroups topic vertx yluLHXa5CRU 页面存档备份 存于互联网档案馆 vert x JVM Polyglot Alternative to Node js 页面存档备份 存于互联网档案馆 Dio Synodinos 2012 05 04 InfoQ外部链接 编辑官方网站 取自 https zh wikipedia org w index php title Vert x amp oldid 71698414, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。