[Open Source] A next-generation Java Web development framework built on Java AIO: faster, smaller, and simpler.

Open SourceClassification Systems
2026-06-28 09:00 8 次浏览 • 0 次下载 0KB
[Open Source] A next-generation Java Web development framework built on Java AIO: faster, smaller, and simpler.

1. Project Overview

Tio-Boot is a next-generation Java Web development framework: faster, smaller, and simpler! It delivers 2 to 3 times higher concurrency, reduces memory usage by 1/3 to 1/2, starts 5 to 10 times faster, and reduces package size to between 1/2 and 1/10 of the original. Built on Java AIO, Tio-Boot enables a Linux server with 2 CPU cores and 4 GB of RAM to handle tens of thousands of concurrent connections.

2. Open Source License

Licensed under MIT

3. Screenshots

Image

4. Feature Overview

Key Features

  1. Based on Java AIO and T-IO:
     Leverages Java asynchronous I/O and T-IO to deliver high performance.
  2. Adopts the Spring-Boot Configuration Philosophy:
     Supports commonly used Spring-Boot annotations without using Spring's IOC or AOP.
  3. Integrates JFinal AOP:
     Provides support for Dependency Injection (DI), Inversion of Control (IOC), and Aspect-Oriented Programming (AOP).
  4. Integrates the JFinal Enjoy Template Engine
     Provides template engine support.
  5. Integrates JFinal Active Record
     Provides database operation support.
  6. Supports Common Web Components:
     Includes interceptors, WebSocket, handlers, and controllers.

Slogan

Simple, easy to use, fast to develop, and fast to run.

Mission

Eliminate unnecessary complexity, return to simplicity, keep things lightweight, and develop efficiently.

Advantages and Disadvantages

Advantages

  1. No Servlet:
     Reimplements network connections based on Java AIO, supporting asynchronous, non-blocking, and high-performance operations.
  2. Multi-Protocol Support:
     A single port simultaneously supports UDP, TCP, HTTP, and WebSocket protocols.
  3. Embedded Device Support:
     Tio-Boot can run on Android systems.
  4. Fast Startup and Small Footprint:
     When providing HTTP services only, the packaged JAR file is just 3MB, with a startup time of only 300ms.
  5. Hot Reloading in Development Environments:
     When used with hotswap-classloader , reloading can be completed within 20ms. Code changes can be tested without restarting the application, greatly improving development efficiency.
  6. Supports Compilation into Binary Files:
     JAR packages can be compiled into binary files using GraalVM.

Resource Optimization

  1. 50% Less Memory Usage
  2. 50% Fewer Servers Required

T-IO Performance Test Results

  1. Performance Test 1:
     Stable support for 300,000 concurrent TCP connections with 1.9G of memory.
  2. Performance Test 2:
     Achieves 10.51 million chat messages per second using T-IO.
  3. Performance Test 3:
     Comparison test results between Netty and T-IO.

See the README.md documentation for details

Disadvantages

  1. Steep Learning Curve:
     A solid programming foundation is required to understand the related concepts.

Tio-Boot provides developers with high-performance capabilities and efficient development tools. However, due to its complex concepts and relatively steep learning curve, developers need a solid programming foundation to fully leverage the advantages of this framework.

5. Tech Stack

Quick Start

Tio-Boot has been published to the Maven repository: Tio-Boot

Add the following content to pom.xml :

<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <java.version>1.8</java.version>
  <maven.compiler.source>${java.version}</maven.compiler.source>
  <maven.compiler.target>${java.version}</maven.compiler.target>
  <tio-boot.version>1.9.3</tio-boot.version>
  <jfinal-aop.version>1.3.5</jfinal-aop.version>
</properties>
<dependencies>
  <dependency>
    <groupId>com.litongjava</groupId>
    <artifactId>tio-boot</artifactId>
    <version>${tio-boot.version}</version>
  </dependency>
  <dependency>
    <groupId>com.litongjava</groupId>
    <artifactId>jfinal-aop</artifactId>
    <version>${jfinal-aop.version}</version>
  </dependency>
</dependencies>

Example Code

package com.litongjava.tio.web.hello;
import com.litongjava.annotation.AComponentScan;
import com.litongjava.tio.boot.TioApplication;
@AComponentScan
public class HelloApp {
  public static void main(String[] args) {
    long start = System.currentTimeMillis();
    //TioApplicationWrapper.run(HelloApp.class, args);
    TioApplication.run(HelloApp.class, args);
    long end = System.currentTimeMillis();
    System.out.println((end - start) + "ms");
  }
}
package com.litongjava.open.chat.controller;
import com.litongjava.annotation.RequestPath;
@RequestPath("/")
public class IndexController {
  @RequestPath()
  public String index() {
    return "index";
  }
}
#1
资源直链https://gitee.com/ppnt/tio-boot
去下载
星河码客

发现和分享优质开源项目,传承互联网精神,为开发者服务。

关于本站

联系我们

微信/广告合作:ITcloub (备注星河码客)

免责声明:本站资源版权归原作者所有,仅供学习与交流。如有侵权,请通过「关于我们 - 侵权投诉」联系删除。

Powered by Nuxt · Deployed on Cloudflare