= Jane Framework =
simple, fast, powerful application server framework based on tcp and embedded database
Feature:
application server framework in Java7
TCP server and client framework based on Apache Mina
simple, extensible and compact protocol on TCP
embedded database based on LevelDB with extremely fast in-memory cache
single process with multi-thread concurrent network and database
optimized for high performance (1 million TPS on one core of 3GHz PC)
simple implement but powerful (only 15K+ lines of core source code)
easy to understand and use with code generation for Java bean code
Todo:
more tests
more optimization for speed, memory and I/O throughput
License:
GNU Lesser GPL
平台:
Oracle/Open JDK 7+ (需要ant作为构建环境, 推荐最新版本)
Linux 2.6+(64-bit)/Windows 2000+(32/64-bit) (运行环境, 推荐64位4核4GB内存以上, 32位平台仅用于开发)
Eclipse 4.4+ (主要的Java开发环境, 推荐最新版本)
Visual Studio 2015+ (C#的开发环境, 推荐最新版本)
语言:
Java 7+ (框架和逻辑编写的主语言)
Lua 5.1 (基于Luaj的实现, 目前主要用于代码生成的脚本, 也可作为逻辑调用的脚本, 也用于客户端及工具程序)
C# 4.0+ (和Java版本兼容的bean部分实现和代码生成脚本, 以及网络模块实现)
原则:
以bean为核心
概念和实现简单清晰
依赖库:
日志库: slf4j-1.7.x logback-1.2.x
网络库: mina-core-2.0.x
数据库: leveldb-jni
脚本库: luaj-jse-2.0.x
托管站点:
参考/备用的开源库:
相关软件:
特性:
高性能的网络/数据库IO, 单进程+多线程, 嵌入式数据库
通用的框架和便利的逻辑实现, 以及异常安全保护
统一使用bean作为网络传输和数据库value的单位, 自动通过配置生成bean代码
bean的定义包括8种数值类型, 字符串、二进制数据, 以及9种容器类型, 还支持数值和字符串常量
支持发送简单的bean, 连续发送bean, 广播bean, rpc统一处理/单独回调/超时处理
支持简易高效的HTTP协议响应及回复
内含简单实用的压缩和加密算法
透明的基于文件和内存的面向对象数据库的操作、缓存、事务型持久化、热备份和增量备份, 基于记录加锁,支持死锁超时打断
TODO:
更多的测试
更多的性能、内存、IO优化