当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

ActiveJ

轻量级 Java Web 框架
授权协议 Apache
开发语言 Java
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 不详
投 递 者 夏奕
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

ActiveJ 是适用于现代 Web、云、高负载和微服务的 Java 框架,可作为 Spring/Micronauts/Netty/Jetty 的替代方案。它希望在无第三方依赖的情况下,尽可能以最精简的方式提供优秀的性能。

主要特性

  • 最小依赖:轻量级的简洁 Java 框架,无第三方依赖
  • 拥有丰富的技术栈:可用于构建快速的异步应用程序
  • 零开销设计
  • 可作为  Spring、Micronaut、Apache Spark、Quarkus 和其他解决方案的全功能替代品

示例代码

class Main extends HttpServerLauncher {
  @Provides
  AsyncServlet servlet() {
    return request -> HttpResponse.ok200()
      .withPlainText("Hello World");
  }
  
  public static void main(String[] args) throws Exception {
    Launcher launcher = new HttpHelloWorldExample();
    launcher.launch(args);
  }
}

性能比较

  • 2021SC@SDUSC 上一篇文章介绍了HTTP的主要内容,那么接下来我们就来看源代码部分。 首先,先看AsyncServlet接口。 基本上,它只是一个异步函数,将 HttpRequest 映射到 HttpResponse 开箱即用的预定义 AsyncServlet 集合(StaticServlet、BlockingServlet、RoutingServlet 等) 广泛支持 AsyncSer

  • 2021SC@SDUSC 前言 本章为新的开篇,主要介绍ActiveJ中的FileSystem文件系统。 ActiveJ FS ActiveJ FS 是一个轻量级的异步 Java 库,它在常见文件操作之上提供了一个微小的抽象。它提供了上载、下载、追加、列出、复制、移动、删除和其他用于操作本地、远程或分布式存储的方法。 ActiveJ FS有是什么优势呢? 异步文件系统 轻量化设计 直观的 API,

  • 2021SC@SDUSC 前言 在上一章我们解析了ActiveJ FileSystem中ActiveFS的众多方法接口以及其对应在LocalActiveFS中的实现,让我们对ActiveJ FileSystem能干的事有了大体的了解。而接下来的章节,我们将根据具体的实例试着理解FileSystem的运行机制。本次通过upload和download两种方式来探究ActiveJ FileSystem的

  • 2021SC@SDUSC 概述: CSP (stands for Communicating Sequential Process) provides sequential I/O communication between asynchronous data suppliers and consumers. It is used for asynchronous streaming of dat

  • 2021SC@SDUSC Eventloop是异步编程的内部类。在异步编程模型中,必须避免Eventloop线程中的阻塞操作(如I/O或长时间运行的计算)。应使用此类操作的异步版本。Eventloop表示只有一个阻塞操作的无限循环selector.select(),它选择一组键,这些键对应的通道已准备好进行I/O操作。使用从外部添加到Eventloop的带有任务的键和队列,它从方法run()中的一

  • 2021SC@SDUSC 前言 在前面的六章中,我们具体看了RPC实现的关键类:RpcClient、RpcServer、RpcSteam、RpcMessage以及RpcClientConnection、RpcServerConnection。在了解了一切之后,因为对于源码的解读对于理解还有些抽象,所以这一次我们结合着实际例子,即我们之前在掌握大体架构时的RpcExample,将例子中的调用一点点深

  • 2021SC@SDUSC 前言 在平时使用各种编程语言的过程中,我们都能接触到map,即key-value的存储方式。java中的map,python中的字典dict等等,都为key-value的存储方式。而在ActiveJ的RPC中,也存在着这一种key-value存储的hash,为RPC提供更高效,更快速的键值存取,使RPC的速度在有ActiveJ的序列化器的加持下变得更快,下面我们就来试着编

  • 2021SC@SDUSC 前言 在上一章我们实现了通过RPC实现远程键值存储的相关调用。而这一章我们会提到一个nosql数据库——Memcached。为什么会在RPC中实现一个类Memcached的应用程序?是因为ActiveJ作为一个追求极速高效的后端框架,尽可能在每一方面都能达到最高速的状态,而Memcached通过在事先规划好的内存空间中临时绶存数据库中的各类数据,以达到减少业务对数据库的直

  • 2021SC@SDUSC 一、代码分析内容 本次介绍的是core-serializer包中的一个类——SerializerBuilder类,这是一个比较重要的类,前面没有分析,放到最后来详细分析一下。这个类的功能是扫描类的字段以进行序列化。本次博客就根据SerializerBuilder类的属性和方法来看一下它的功能是怎么实现的。 二、代码解读 1.属性 我们先来看一下这个类中定义的各种属性。

  • 2021SC@SDUSC 前言 在上一章我们重新阅读了RpcExample类的例子描述,用最实际的方法了解了具体都干些什么,是怎么完成的。但在途中对于其中关键启动onStart()方法的使用上,我发现了一些一直被我漏掉没看到的RpcBenchmark类,作为RPC的基准,rpcclient和server的初始化离不开这几个基准类,下面我们就一起来看一下benchmark都做了些什么,他是干什么的。

  • 2021SC@SDUSC Eventloop是异步编程的内部类。在异步编程模型中,必须避免Eventloop线程中的阻塞操作(如I/O或长时间运行的计算)。应使用此类操作的异步版本。Eventloop表示只有一个阻塞操作的无限循环selector.select(),它选择一组键,这些键对应的通道已准备好进行I/O操作。使用从外部添加到Eventloop的带有任务的键和队列,它从方法run()中的一

 相关资料
  • 本文向大家介绍轻量级javascript 框架Backbone使用指南,包括了轻量级javascript 框架Backbone使用指南的使用技巧和注意事项,需要的朋友参考一下 Backbone 是一款基于模型-视图-控制器 MVC 模式的轻量级javascript 框架 ,可以用来帮助开发人员创建单页Web应用。 借助Backbone 我们可以使用REST的方式来最小化客户端和服务器间的数据传输,

  • 本文向大家介绍前端轻量级MVC框架CanJS详解,包括了前端轻量级MVC框架CanJS详解的使用技巧和注意事项,需要的朋友参考一下 选择正确的库 创建一个JS APP没有好的工具是很有难度的,jQuery只是操作DOM的库,没有提供任何创建APP的基础,这就是为什么我们要一个类似CanJS的专门的库。 CanJS 是一个轻量级的MVC库,提供你创建一个JS APP所需的工具。 CanJS 是一个轻

  • 问题内容: 是否有一个提供发布/订阅模式的Java轻量级框架? 一些理想的功能 支持泛型 向发布者注册多个订阅者 API主要是接口和一些有用的实现 完全不需要内存,持久性和事务保证。 我了解JMS,但这对我来说太过分了。发布/订阅的数据是文件系统扫描的结果,扫描结果被馈送到另一个组件进行处理,然后在将其馈给另一个组件之前进行处理,依此类推。 编辑:所有在同一过程中。bean的PropertyCha

  • 本文向大家介绍浅谈Android轻量级的数据缓存框架RxCache,包括了浅谈Android轻量级的数据缓存框架RxCache的使用技巧和注意事项,需要的朋友参考一下 请求网络数据是在安卓开发中使用最频繁的一个功能,网络请求的体验决定了用户对整个APP的感觉,因此合理地使用缓存对网络请求的数据进行处理极为重要。合理的进行缓存和网络请求,可以为APP带来更优秀的体验。图片的缓存有Picasso、Gl

  • 问题内容: 我一直在使用jQuery在基于Web的应用程序中完成整个AJAX魔术。但是,我来到了一个决定,我并不需要所有这些神奇功能jQuery有,除了它的AJAX功能(例如,,,和)。 您能推荐轻量级的跨浏览器AJAX库/框架(最大10 kb)吗? 问题答案: 您可以通过删除不需要的模块来缩小jQuery的大小,只需修改Makefile文件即可。

  • 本文向大家介绍详解Spring Batch 轻量级批处理框架实践,包括了详解Spring Batch 轻量级批处理框架实践的使用技巧和注意事项,需要的朋友参考一下 实践内容 从 MariaDB 一张表内读 10 万条记录,经处理后写到 MongoDB 。 具体实现 1、新建 Spring Boot 应用,依赖如下: 2、创建一张表,并生成 10 万条数据 3、创建 Person 类 4、创建一个中