发布于 2017-02-08 06:18:40 | 165 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

Voovan 高性能WEB服务器及网络通信框架

Voovan 是一个高性能异步网络框架和HTTP 服务器框架,同时支持HTTP客户端抓去、动态编译支持、数据库访问封装以及DateTime、String、Log、反射、对象工具、流操作、文件操作、异步双向通道等功能。旨在提供可靠、方便、可单元测试的代码。它是一个无任何依赖的独立工具包,希望能够方便广大开发者快速的实现应用。


经过近两个月的不泄努力,Voovan 终于到达了 RC 版本,距离正式版本的发布已经很近了。

本次更新带来47项优化、bug 修复、新增等内容。

本次更新主要对异常进行了修复,并且重点优化了 JSON 和 Socket 通信的性能.可以说相当优秀.

  • JSON 没有采用常规的 Token 形式的解析,减少内存占用,并且直接解析成 Map 或者 List 等大家熟悉的形式.

  • Socket 性能优化,优化了 MessageLoader 和 ByteBufferChannel的性能,采用接近于零拷贝来提升性能并且降低内存消耗.

       性能测试【Voovan 参照 Jetty 的性能测试,中国框架一样很优秀

  • 增加对象池,PoolObject 为 Vestful 框架提供对象访问支持

本次更新的主要内容:

增加的内容

  • add: IoSession 和 SocketContext 增加 isOpen方法,用来判断区分连接状态判断对象是否打开

  • add: 消息截断类MessageSplitter 的 canSplite 函数的返回值有 boolean 改为 int 用来控制消息截断的长度

  • add: 反射类 TReflect 增加getAllExtendAndInterfaceClass方法用于一次提取所有父方法和继承的的类

  • add: JSON增加对反射类型的支持

  • add: 增加对象池

  • add: 增加了 MultiMap key 对应 list 值

优化的内容

  • imp: 增加 TString 新增函数的测试用例a

  • imp: 优化 JSON 解析的异常,对异常进行友好的展示,可以展示出错的 JSON 文本的位置

  • imp: 优化 JSON 解析算法,实现基于字节的一边遍历即可解析出 JSON 数据

  • imp: MessageLoader 最终优化,除了数组扩容,所有的字节数组操作都使用 System.arrayCopy 来提高性能

  • imp: 优化 MessageLoader 的实现,直接使用 session 中的 ByteBufferChannel减少字节操作提升性能

  • imp: 优化 ByteBufferChannel ,采用 Array 操作,大幅度提升性能

  • imp: 为 Socket 增加异步启动方法.

  • imp: TRelfect 优化构造函数,自动识别变量类型,寻找合适参数的方法

  • imp: 代码 sonar 优化

  • imp: 优化TReflect.getObjectFromMap方法,异常信息增加提示

  • imp: 反射 TString.toObject 方法优化

  • imp: 为了支持多机(集群)场景下ObjectPool的混用,将 id 改为 UUID 的形式

  • imp: 增加缓冲池大小的设置

  • imp: 优化异步通信

  • imp: WebServer命令参数修改成 Linux 规范形式

  • imp: 优化了首字母大写的算法

  • imp: PoolObject并发性能优化

  • imp: 优化 TReflect 的 getObjectFromMap 方法优化

  • imp: 优化 TString.toObject 和 JSONDecode.fromJSON方法

  • imp: 内存和性能优化

  • imp: 将 UDP 通信拆分成 UdpServerSocket 和 UdpSocket

BUG修复

  • fix: 修复 TFile.loadFileLastLines 读取时在读到文件头少了头部的一个字节

  • fix: 修复 UDP 通信的 bug

  • fix: 修复了在连接断开后,HttpSession 并未被从 SessionManager 中移除,导致内存没有被释放

  • fix: JSONDecode 类,对于起始为注释形式的 JSON 解析异常的 bug 处理 imp: 优化getObjectFromMap方法对于属性为 list 或者 map 时出现的类型转换异常

  • fix: HttpParser优化

  • fix: 修复直接读取的 bug

  • fix: 修复TReflect.getObjectFromMap中对 list 处理的 bug

  • fix: 异常优化

  • fix: WebServer模块、过滤器、路由配置加载异常输出错误优化.

  • fix: 修复 JSON 解析嵌套注释时的 bug.

  • fix: JSON 处理修复对注释的支持,原来正则替换注释会导致bug

  • fix: 线程池优化,当在一个进程内开多个 socket 时可能导致线程池提前关闭

  • fix: 将对象转换为JSON时双引号导致字符串违反规范的问题

  • fix: 修复静态资源文件加载失败的问题

  • fix: 反射 TReflect 类中 invokeMethod 方法增加自动通过参数选择方法

  • fix: ObjectPooll使用 hashcode 会出现相同 hashcode 的多个对象,且 hashCode 会发生改变,修改成使用固定增加的 ID 作为唯一标识

  • fix: 静态文件判断对包含文件扩展名的URL导致的路由匹配异常

  • fix: SingleLogger类会new 出多个相同目标文件的线程.

  • fix: 修复 UDP 接受消息异常的问题 EventTrigger 修改成可单元测试的,并优化并发线程模型

  • fix: 修复空指针问题

Voovan 是一个高性能异步网络框架和WEB服务器框架,同时支持HTTP客户端抓取、动态编译支持、数据库访问封装以及DateTime、String、Log、反射、对象工具、流操作、文件操作、异步双向通道等功能。旨在提供可靠、方便、可单元测试的代码。它是一个无任何依赖的独立工具包,希望能够方便广大开发者快速的实现应用。

开发文档:【Voovan开发手册

开发教程:【Voovan一步步入门



历史版本 :
Voovan v2.0.2,高性能异步通信框架和工具库
Voovan v2.0 发布,无依赖的AIO/NIO异步通信框架
Voovan V1.5.3 发布,高性能异步通信框架和工具集
Voovan v1.5 发布,高效堆外内存管理,性能不打折扣
Voovan V1.0-RC-1 发布,持续优化性能和稳定性
Voovan V1.0 (Beta.3.2) ,增加 UDP 异步通信
Voovan v1.0.beta.1 文档丰富/性能优异
Voovan V1.0-alpah-2 发布,并发性能大幅度提升
Voovan framework v1.0-alpha 释出
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务