这个说的Spark不是apache的Spark,这边说的是一个java的web application的框架。
官网:http://sparkjava.com/

我做过一段时间的后台架构开发,使用的是微服务架构,主要使用了C++和PHP,大部分是PHP,C++只是用在API调用频率很高的地方,大部分的还是使用的PHP完成,使用C++是比较痛苦的,虽然借助与nginx,不需要解析HTTP协议,但是还是需要自己设计路由系统和参数解析系统。使用PHP,就没有那些痛苦。之后也接触了nodejs,不过可能实战接触的比较少,真正在后台中使用nodejs的还是很少。在国内美团和阿里用nodejs是比较有实际的工程经验的,但还是只是将nodejs要在中间层,负责model的渲染,还是通过API去调用后台的java业务服务,主要是http。说明java在实际的后台业务中还是首选的语言。

Spark框架,使用了java8中的匿名函数来编写HTTP的动作响应方法,和C++的匿名函数的形式的不太接近,不过和ES6的箭头函数十分相似。

来一段简单的例子

import static spark.Spark.*;

public class HelloWorld {
    public static void main(String[] args) {
        get("/hello", (req, res) -> "Hello World");
    }
}

HTTP中的GET操作,匹配的路径/hello,动作是返回Hello World,很轻松的搞定了。

这个框架提供很多工具,静态文件托管,Session,过滤器,模板等。

在需要开发微服务的工具中,不失为一个好的选择。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐