基于Scala的REST框架Spray
来源:互联网 发布:淘宝修改宝贝详情影响 编辑:程序博客网 时间:2024/05/01 09:17
Spray是一系列轻量级Scala库,提供基于Akka框架的客户端/服务端REST/HTTP功能。Spray提供了REST/HTTP所需的一系列可集成的组件,并且以纯ScalaAPI的方式实现,没有使用任何遗留的Java库。
Spray的设计理念:
- 完全异步、无阻塞
所有API都是完全异步的,所有实现都避免阻塞的代码。 - 基于Actor和Future
完全基于Akka平台编程模型的实现,基于Akka的核心概念Actor和Future构建。 - 高性能
为高负载环境下实现卓越性能而精心设计实现的低级组件。 - 轻量级
精心管理的依赖,尽量小的依赖关系。 - 模块化
由松耦合的集成组件构成,应用可只依赖需要的部分组件。 - 可测试
spray组件以结构化的方式组成,便于进行测试。
模块
- spray-caching:基于谷歌concurrentlinkedhashmap和Akka Future的快速、轻量级内存缓存。
- spray-can: 基于spray-io上的低级、低成本、高性能的HTTP服务器和客户端。
- spray-client: 基于spray-can的更高级别的客户端HTTP客户端API支持。
- spray-http: 不可变的HTTP请求、响应、常用头模型。该模块完全独立,不依赖任何Akka和其他spray组件。
- spray-httpx: 用于HTTP消息(信息编码、解码、压缩等)高级别的工具集,被spray-client、spray-route引用。
- spray-io: 用于直接将Akka Actors连接到异步Java NIO套接字的低级别网络IO层。可以看做是Scala版的Netty。
- spray-servlet: 提供基于Servlet API之上的spray-canHTTP服务器接口的适配器层。在servlet容器中使用spray-routing。
- spray-routing: 定义RESTful服务的高级别路由的DSL。
- spray-testkit: 便于测试spray-routing服务的DSL,支持ScalaTest和Specs2。
- spray-util: 除了spray-http以外的公用工具类。
- spray-json: 轻量级、简洁的JSON实现。它不依赖任何spray和Akka组件,并在spray-client和spray-httpx中作为可选依赖,它不在spray的代码仓库中。它只是spray提供的一种可选择JSON库。
我们需要的HTTP方式
- 基于case class的模型
- 基于actor的API(消息协议)
- 一等函数
- Scala/Akka Future
- Scala集合
- 类型类
- 类型安全
0 0
- 基于Scala的REST框架Spray
- 使用Scala和Spray实现REST
- [todo]scala之spray
- scala spray.json
- 基于JavaScript的REST客户端框架
- 构建Scala的REST服务
- RestExpress 一个基于Netty的轻量级Rest服务开发框架
- 基于REST的web service project添加spring框架
- 如何更好的设计你的REST API之基于REST架构的Web Service设计及REST框架实现
- spray.testkit的使用
- spray-can的初识
- 基于REST的Webservice
- Gatling-基于Scala,Akka&Netty的性能测试框架
- 使用maven创建基于spring框架的scala web工程
- REST框架的理解
- 传统的Heap Spray(转)
- 基于REST的Web服务
- 基于WCF的REST服务
- Java线程池及CountDownLatch的使用
- 程序员之所以犯错误,不是因为他们不懂,而是因为他们自以为什么都懂——给自己的话
- SQL Server 2014 安装
- Python 第一章 基础知识
- DTP的优化
- 基于Scala的REST框架Spray
- Win7系统不识别usb键盘
- Convert Sorted List to Binary Search Tree
- 细聊代理模式
- 各种分类算法的优缺点
- 版本管理学习
- Visual Studio快捷键大全
- 第一个博文
- UE4 UnrealEngine4 中 实现多通道技术