JVM上的Node.js替代者 Vert.x

fmms 12年前

Vert.x是一个用于下一代异步、可伸缩、并发应用的框架,旨在为JVM提供一个Node.js的替代方案。开发者可以通过它使用JavaScript、Ruby、Groovy、Java、甚至是混合语言来编写应用。

如下代码展示了Web服务器是如何通过vert.x来处理静态文件的:

// JavaScript  load('vertx.js')  vertx.createHttpServer().requestHandler(function(req) {    var file = req.path === '/' ? 'index.html' : req.path;    req.response.sendFile('webroot/' + file);  }).listen(8080)    # Ruby  require "vertx"  Vertx::HttpServer.new.request_handler do |req|    file = req.uri == "/" ? "index.html" : req.uri    req.response.send_file "webroot/#{file}"  end.listen(8080)    // Groovy  vertx.createHttpServer().requestHandler { req ->    def file = req.uri == "/" ? "index.html" : req.uri    req.response.sendFile "webroot/$file"  }.listen(8080)    // Java  import org.vertx.java.core.Handler;  import org.vertx.java.core.http.HttpServerRequest;  import org.vertx.java.deploy.Verticle;  public class Server extends Verticle {    public void start() {      vertx.createHttpServer().requestHandler(new Handler() {        public void handle(HttpServerRequest req) {          String file = req.path.equals("/") ? "index.html" : req.path;          req.response.sendFile("webroot/" + file);        }      }).listen(8080);    }  }

项目主页:http://www.open-open.com/lib/view/home/1336975849260