- Java中的MINA框架
小陈拾光
Java开发java架构算法
Server端packagecom.chen.mina;importorg.apache.mina.core.filterchain.DefaultIoFilterChainBuilder;importorg.apache.mina.filter.codec.ProtocolCodecFilter;importorg.apache.mina.filter.codec.serialization.O
- java 网络通信 mina Hello World(基于mina2.0.9)
MicoCube
服务器端importorg.apache.mina.core.service.IoAcceptor;importorg.apache.mina.core.session.IdleStatus;importorg.apache.mina.filter.codec.ProtocolCodecFilter;importorg.apache.mina.filter.codec.textline.TextL
- Mina 协议编解码过滤器二(协议解码器)
Donald_Draper
Mina
Mina协议编解码过滤器一(协议编解码工厂、协议编码器):http://donald-draper.iteye.com/blog/2376663引言: 上一篇文章,我们看了协议编解码过滤器,其中涉及到协议编解码工厂、协议编码器、和协议解码器,由于篇幅原因,我们只看了协议编解码工厂、协议编码器,先来回顾一下: 协议编解码过滤器ProtocolCodecFilter关联一个协议编解码工厂Pro
- Mina Codec Filter对应协议实现编解码处理
boonya
MinaApacheMina学习实践
原文地址:MinaFilter(ApacheMinauserguideChapter9CodecFilter)本教程试图解释为什么以及如何使用ProtocolCodecFilter.1.1.1.为什么使用ProtocolCodecFilterTCP保证交付的所有数据包以正确的顺序。但是不能保证服务端发送方的写操作会导致一个接收端读取事件。参见:http://en.wikipedia.org/wik
- Apache MINA --- [ProtocolCodecFilter]
moonsnake777
为什么使用它:TCP协议保证所有的包有正确的顺序,但是不保证发送端的一个写操作只导致接收端的一个读事件发生,用MINA术语来描述 就是:没有ProtocolCodecFilter,发送端一个IoSession.write(...)能够导致接收端多个messageReceived(...),多个write(...)也能被引导到一个messageReceived(...),也许在单机测试时我们不会
- APACHE MINA之ECHO服务器
Sidyhe
importorg.apache.mina.core.service.IoAcceptor;
importorg.apache.mina.core.service.IoHandlerAdapter;
importorg.apache.mina.core.session.IoSession;
importorg.apache.mina.filter.codec.ProtocolCodecFilter
- mina源码分析---4
二侠
mina-2.0.9源码分析
ExecutorFilter和ProtocolCodecFilter源码分析从上一章分析的callNextMessageReceived函数中得知,mina框架会调用注册进的filter对客户端请求进行处理,默认的filter有HeadFilter和TailFilter,本章就分析mina源码中提供的ExecutorFilter和ProtocolCodecFilter。ExecutorFilter
- mina源码分析---4
conansonic
ExecutorFilter和ProtocolCodecFilter源码分析从上一章分析的callNextMessageReceived函数中得知,mina框架会调用注册进的filter对客户端请求进行处理,默认的filter有HeadFilter和TailFilter,本章就分析mina源码中提供的ExecutorFilter和ProtocolCodecFilter。ExecutorFilter
- openfire源码分析---5
二侠
openfire源码分析
filter源码分析在上一章分析的createClientListeners函数中构造了3个filter,ExecutorFilter、ProtocolCodecFilter和StalledSessionsFilter并将它们添加到mina框架中。这里首先贴出部分相关的源码,为了方便分析,首先贴出createClientListeners的部分源码,ExecutorFilterexecutorFi
- openfire源码分析---5
conansonic
filter源码分析在上一章分析的createClientListeners函数中构造了3个filter,ExecutorFilter、ProtocolCodecFilter和StalledSessionsFilter并将它们添加到mina框架中。这里首先贴出部分相关的源码,为了方便分析,首先贴出createClientListeners的部分源码,ExecutorFilterexecutorFi
- mina ProtocolCodecFilter 中文手册
摄氏三十七度
安卓技术
为什么要使用ProtocolCodecFilter1.TCP确保了所有的包是按正确顺序传输的.但不能保证发送端写操作的结果跟接收端读的结果是一致的.在mina中,在没有ProtocolCodecFilter发送端调用IoSession.write(Objectmessage)可会导致多个接收端的messageReceived(IoSessionsession,Objectmssage)事件多个Io
- Mina IOFilter
labreeze
一:IOFilter的作用 LoggingFilter记录所有事件和请求 ProtocolCodecFilter将到来的ByteBuffer转换成消息对象(POJO) CompressionFilter压缩数据 SSLFilter增加SSL–TLS–StartTLS支持 二:IOFilter的类图和常用方法 IoFilter是MINA中的过滤器接口 6个与Io
- mina:ProtocolCodecFilter
txxs
mina
使用ProtocolCodecFilter解决以下问题1、TCP担保以正确的顺序交付所有数据包。但是没有担保对于在发送端写操作时影响到接收端的读事件。在MINA术语中:如果没有ProtocolCodecFilter的话,一个由发送端对IoSession.write(Objectmessage)的调用将导致多个接收端的messageReceived(IoSessionsession,Objectme
- mina:ProtocolCodecFilter
maoyeqiu
Mina
使用ProtocolCodecFilter解决以下问题 1、TCP担保以正确的顺序交付所有数据包。但是没有担保对于在发送端写操作时影响到接收端的读事件。在MINA术语中:如果没有ProtocolCodecFilter的话,一个由发送端对IoSession.write(Objectmessage)的调用将导致多个接收端的messageReceived(IoSessionsession
- Mina中关于多个同类型Filter(如ProtocolCodecFilter)实例共存问题的解决
zheng0518
最近在研读Mina框架的源码,刚好手头上有项目就直接用上了。直接进入正题…… 对Mina有点了解的人都知道,Mina中有一条FilterChain,我们可以向其中加入Filter实现链式处理。从源码看来,多数Filter(如ProtocolCodecFilter)在使用过程只允许有一个实例。若FilterChain中存在多个相同的实例,则有可能出现各种莫明其妙的问题,这些问题往往是超出你预料
- MINA源码分析---协议编码解码过滤器ProtocolCodecFilter
爱佳男士
mina框架
协议数据1、对输出的数据进行编码,把消息对象转换成二进制字节流2、对收到的数据进行解码过滤器ProtocolCodecFilter,对应的两个最重要的方法分别是1、先对数据进行编码,再发送filterWrite(NextFilternextFilter,IoSessionsession,WriteRequestwriteRequest)2、收到数据,进行解码messageReceived(Next
- mina 传输图片
chengxu2011
java
packagemina.example3;importjava.net.InetSocketAddress;importorg.apache.mina.filter.codec.ProtocolCodecFilter;importorg.apache.mina.filter.codec.serialization.ObjectSerializationCodecFactory;importorg.
- org.apache.mina.filter.codec.ProtocolDecoderException: java.lang.NullPointerException
yipanbo
java
错误代码如下:org.apache.mina.filter.codec.ProtocolDecoderException:java.lang.NullPointerException(Hexdump:...)atorg.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:241)
- org.apache.mina.filter.codec.ProtocolDecoderException: java.lang.NullPointerException
yipanbo
错误代码如下:org.apache.mina.filter.codec.ProtocolDecoderException:java.lang.NullPointerException(Hexdump:...) atorg.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:2
- MINA 中的 协议编解码器
爱佳男士
mina框架
6.协议编解码器:前面说过,协议编解码器是在使用Mina的时候你最需要关注的对象,因为在网络传输的数据都是二进制数据(byte),而你在程序中面向的是JAVA对象,这就需要你实现在发送数据时将JAVA对象编码二进制数据,而接收数据时将二进制数据解码为JAVA对象(这个可不是JAVA对象的序列化、反序列化那么简单的事情)。Mina中的协议编解码器通过过滤器ProtocolCodecFilter构造,
- Mina中关于多个同类型Filter(如ProtocolCodecFilter)实例共存问题的解决
oathevil
MinaJava
最近在研读Mina框架的源码,刚好手头上有项目就直接用上了。直接进入正题……对Mina有点了解的人都知道,Mina中有一条FilterChain,我们可以向其中加入Filter实现链式处理。从源码看来,多数Filter(如ProtocolCodecFilter)在使用过程只允许有一个实例。若FilterChain中存在多个相同的实例,则有可能出现各种莫明其妙的问题,这些问题往往是超出你预料之外的,
- Mina中关于多个同类型Filter(如ProtocolCodecFilter)实例共存问题的解决
oathevil
最近在研读Mina框架的源码,刚好手头上有项目就直接用上了。直接进入正题…… 对Mina有点了解的人都知道,Mina中有一条FilterChain,我们可以向其中加入Filter实现链式处理。从源码看来,多数Filter(如ProtocolCodecFilter)在使用过程只允许有一个实例。若FilterChain中存在多个相同的实例,则有可能出现各种莫明其妙的问题,这些问题往往是超出你预料
- 《Apache MINA 2.0 用户指南》第九章:编解码器过滤器
Defonds
性能优化Socket编程MINA框架
本文解释一下为什么以及如何使用一个ProtocolCodecFilter。为什么要使用一个ProtocolCodecFilter?TCP担保以正确的顺序交付所有数据包。但是没有担保对于在发送端写操作时影响到接收端的读事件。参考http://en.wikipedia.org/wiki/IPv4#Fragmentation_and_reassembly和http://en.wikipedia.org/
- 《Apache MINA 2.0 用户指南》第九章:编解码器过滤器
defonds
apachesocketMinaMinamina框架高性能网络框架
本文解释一下为什么以及如何使用一个ProtocolCodecFilter。 为什么要使用一个ProtocolCodecFilter?TCP担保以正确的顺序交付所有数据包。但是没有担保对于在发送端写操作时影响到接收端的读事件。参考http://en.wikipedia.org/wiki/IPv4#Fragmentation_and_reassembly和http://en.wikipe
- 《Apache MINA 2.0 用户指南》第五章:过滤器
Defonds
性能优化Socket编程MINA框架
IoFilter扮演着很重要角色,它是MINA的核心结构之一。它过滤IoService和IoHandler之间的所有I/O事件和请求。如果你有网络应用编程的经验,你完全可以把它当成Servlet过滤器的表兄弟。许多开箱即用的过滤器通过使用类似以下的开箱即用过滤器简化横切注入用来提升网络应用的开发速度:LoggingFilter记录所有事件和请求ProtocolCodecFilter将一个连入的By
- 《Apache MINA 2.0 用户指南》第五章:过滤器
defonds
apachesocketMinaMinamina框架高性能网络框架
IoFilter扮演着很重要角色,它是MINA的核心结构之一。它过滤IoService和IoHandler之间的所有I/O事件和请求。如果你有网络应用编程的经验,你完全可以把它当成Servlet过滤器的表兄弟。许多开箱即用的过滤器通过使用类似以下的开箱即用过滤器简化横切注入用来提升网络应用的开发速度:LoggingFilter记录所有事件和请求ProtocolCodecFilter将一个连
- 转:Mina框架研究(3)
niedj
Mina
FiltersIoFilter 是MINA框架中一个核心的部分,如下图,对间于IoService和IoHandle之间,用于过滤所有的I/O事件和请求,其扮演的角色就像J2EE中的Servlet。MINA提供不少现成的过滤器:1、LoggingFilter :日志过滤器,用于记录所有的事件和请求日志.2、ProtocolCodecFilter:规约解析过滤器,用来将所有收到的ByteBuffer内
- Apache MINA 框架之Filters介绍
apache
IoFilter是NIMA框架核心组员之一,扮演者重要角色。它过滤所有IoService和IoHandler之间的I/O事件和请求。一些典型且经常使用的过滤器:LoggingFilter 记录所有事件和请求。ProtocolCodecFilter 将传入消息ByteBufferPOJO,反之亦然。CompressionFilter压缩数据。SSLFilter 添加SSL-TLS-StartTLS支
- Apache Mina 文档翻译 - 第九章 - Codec过滤器
zjumty
nioMina
第九章 - Codec过滤器
本章中会说明为什么要使用ProtocolCodecFilter和如何使用ProtocolCodecFilter。 为什么使用ProtocolCodecFilter?
TCP可以保证数据包按照正确的顺序投递。但是不能保证在发送端的写操作对应在接收端一定有一次读操作。具体参照:http://en.wikipedia.org/wiki/IPv4#Fragmentatio
- 在上一篇博文中已经简单介绍过“过滤器”的概念,那么在Mina 中的协议编解码器通过过滤器 ProtocolCodecFilter 构造,这个过滤器的构造方法需
lzhw1985
protocol
mina是对nio的具体实现。是目前比较高效和流行的nio框架了。下面是对使用mina进行通讯的一个简单demo,后面再用mina写一个RPC的简单框架。 mina主要包括:(使用的mina版本为2.0.0.M4core,具体可见官方网站 )mina也分服务端和客户端(这是肯定的...) 其中服务端为:NioSocketAcceptor客户端为:NioSocketConnector 类似于Sock
- Hadoop(一)
朱辉辉33
hadooplinux
今天在诺基亚第一天开始培训大数据,因为之前没接触过Linux,所以这次一起学了,任务量还是蛮大的。
首先下载安装了Xshell软件,然后公司给了账号密码连接上了河南郑州那边的服务器,接下来开始按照给的资料学习,全英文的,头也不讲解,说锻炼我们的学习能力,然后就开始跌跌撞撞的自学。这里写部分已经运行成功的代码吧.
在hdfs下,运行hadoop fs -mkdir /u
- maven An error occurred while filtering resources
blackproof
maven报错
转:http://stackoverflow.com/questions/18145774/eclipse-an-error-occurred-while-filtering-resources
maven报错:
maven An error occurred while filtering resources
Maven -> Update Proje
- jdk常用故障排查命令
daysinsun
jvm
linux下常见定位命令:
1、jps 输出Java进程
-q 只输出进程ID的名称,省略主类的名称;
-m 输出进程启动时传递给main函数的参数;
&nb
- java 位移运算与乘法运算
周凡杨
java位移运算乘法
对于 JAVA 编程中,适当的采用位移运算,会减少代码的运行时间,提高项目的运行效率。这个可以从一道面试题说起:
问题:
用最有效率的方法算出2 乘以8 等於几?”
答案:2 << 3
由此就引发了我的思考,为什么位移运算会比乘法运算更快呢?其实简单的想想,计算机的内存是用由 0 和 1 组成的二
- java中的枚举(enmu)
g21121
java
从jdk1.5开始,java增加了enum(枚举)这个类型,但是大家在平时运用中还是比较少用到枚举的,而且很多人和我一样对枚举一知半解,下面就跟大家一起学习下enmu枚举。先看一个最简单的枚举类型,一个返回类型的枚举:
public enum ResultType {
/**
* 成功
*/
SUCCESS,
/**
* 失败
*/
FAIL,
- MQ初级学习
510888780
activemq
1.下载ActiveMQ
去官方网站下载:http://activemq.apache.org/
2.运行ActiveMQ
解压缩apache-activemq-5.9.0-bin.zip到C盘,然后双击apache-activemq-5.9.0-\bin\activemq-admin.bat运行ActiveMQ程序。
启动ActiveMQ以后,登陆:http://localhos
- Spring_Transactional_Propagation
布衣凌宇
springtransactional
//事务传播属性
@Transactional(propagation=Propagation.REQUIRED)//如果有事务,那么加入事务,没有的话新创建一个
@Transactional(propagation=Propagation.NOT_SUPPORTED)//这个方法不开启事务
@Transactional(propagation=Propagation.REQUIREDS_N
- 我的spring学习笔记12-idref与ref的区别
aijuans
spring
idref用来将容器内其他bean的id传给<constructor-arg>/<property>元素,同时提供错误验证功能。例如:
<bean id ="theTargetBean" class="..." />
<bean id ="theClientBean" class=&quo
- Jqplot之折线图
antlove
jsjqueryWebtimeseriesjqplot
timeseriesChart.html
<script type="text/javascript" src="jslib/jquery.min.js"></script>
<script type="text/javascript" src="jslib/excanvas.min.js&
- JDBC中事务处理应用
百合不是茶
javaJDBC编程事务控制语句
解释事务的概念; 事务控制是sql语句中的核心之一;事务控制的作用就是保证数据的正常执行与异常之后可以恢复
事务常用命令:
Commit提交
- [转]ConcurrentHashMap Collections.synchronizedMap和Hashtable讨论
bijian1013
java多线程线程安全HashMap
在Java类库中出现的第一个关联的集合类是Hashtable,它是JDK1.0的一部分。 Hashtable提供了一种易于使用的、线程安全的、关联的map功能,这当然也是方便的。然而,线程安全性是凭代价换来的――Hashtable的所有方法都是同步的。此时,无竞争的同步会导致可观的性能代价。Hashtable的后继者HashMap是作为JDK1.2中的集合框架的一部分出现的,它通过提供一个不同步的
- ng-if与ng-show、ng-hide指令的区别和注意事项
bijian1013
JavaScriptAngularJS
angularJS中的ng-show、ng-hide、ng-if指令都可以用来控制dom元素的显示或隐藏。ng-show和ng-hide根据所给表达式的值来显示或隐藏HTML元素。当赋值给ng-show指令的值为false时元素会被隐藏,值为true时元素会显示。ng-hide功能类似,使用方式相反。元素的显示或
- 【持久化框架MyBatis3七】MyBatis3定义typeHandler
bit1129
TypeHandler
什么是typeHandler?
typeHandler用于将某个类型的数据映射到表的某一列上,以完成MyBatis列跟某个属性的映射
内置typeHandler
MyBatis内置了很多typeHandler,这写typeHandler通过org.apache.ibatis.type.TypeHandlerRegistry进行注册,比如对于日期型数据的typeHandler,
- 上传下载文件rz,sz命令
bitcarter
linux命令rz
刚开始使用rz上传和sz下载命令:
因为我们是通过secureCRT终端工具进行使用的所以会有上传下载这样的需求:
我遇到的问题:
sz下载A文件10M左右,没有问题
但是将这个文件A再传到另一天服务器上时就出现传不上去,甚至出现乱码,死掉现象,具体问题
解决方法:
上传命令改为;rz -ybe
下载命令改为:sz -be filename
如果还是有问题:
那就是文
- 通过ngx-lua来统计nginx上的虚拟主机性能数据
ronin47
ngx-lua 统计 解禁ip
介绍
以前我们为nginx做统计,都是通过对日志的分析来完成.比较麻烦,现在基于ngx_lua插件,开发了实时统计站点状态的脚本,解放生产力.项目主页: https://github.com/skyeydemon/ngx-lua-stats 功能
支持分不同虚拟主机统计, 同一个虚拟主机下可以分不同的location统计.
可以统计与query-times request-time
- java-68-把数组排成最小的数。一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的。例如输入数组{32, 321},则输出32132
bylijinnan
java
import java.util.Arrays;
import java.util.Comparator;
public class MinNumFromIntArray {
/**
* Q68输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个。
* 例如输入数组{32, 321},则输出这两个能排成的最小数字32132。请给出解决问题
- Oracle基本操作
ccii
Oracle SQL总结Oracle SQL语法Oracle基本操作Oracle SQL
一、表操作
1. 常用数据类型
NUMBER(p,s):可变长度的数字。p表示整数加小数的最大位数,s为最大小数位数。支持最大精度为38位
NVARCHAR2(size):变长字符串,最大长度为4000字节(以字符数为单位)
VARCHAR2(size):变长字符串,最大长度为4000字节(以字节数为单位)
CHAR(size):定长字符串,最大长度为2000字节,最小为1字节,默认
- [强人工智能]实现强人工智能的路线图
comsci
人工智能
1:创建一个用于记录拓扑网络连接的矩阵数据表
2:自动构造或者人工复制一个包含10万个连接(1000*1000)的流程图
3:将这个流程图导入到矩阵数据表中
4:在矩阵的每个有意义的节点中嵌入一段简单的
- 给Tomcat,Apache配置gzip压缩(HTTP压缩)功能
cwqcwqmax9
apache
背景:
HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求网页后,从服务器端将网页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览。相对于普通的浏览过程HTML ,CSS,Javascript , Text ,它可以节省40%左右的流量。更为重要的是,它可以对动态生成的,包括CGI、PHP , JSP , ASP , Servlet,SHTML等输出的网页也能进行压缩,
- SpringMVC and Struts2
dashuaifu
struts2springMVC
SpringMVC VS Struts2
1:
spring3开发效率高于struts
2:
spring3 mvc可以认为已经100%零配置
3:
struts2是类级别的拦截, 一个类对应一个request上下文,
springmvc是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应
所以说从架构本身上 spring3 mvc就容易实现r
- windows常用命令行命令
dcj3sjt126com
windowscmdcommand
在windows系统中,点击开始-运行,可以直接输入命令行,快速打开一些原本需要多次点击图标才能打开的界面,如常用的输入cmd打开dos命令行,输入taskmgr打开任务管理器。此处列出了网上搜集到的一些常用命令。winver 检查windows版本 wmimgmt.msc 打开windows管理体系结构(wmi) wupdmgr windows更新程序 wscrip
- 再看知名应用背后的第三方开源项目
dcj3sjt126com
ios
知名应用程序的设计和技术一直都是开发者需要学习的,同样这些应用所使用的开源框架也是不可忽视的一部分。此前《
iOS第三方开源库的吐槽和备忘》中作者ibireme列举了国内多款知名应用所使用的开源框架,并对其中一些框架进行了分析,同样国外开发者
@iOSCowboy也在博客中给我们列出了国外多款知名应用使用的开源框架。另外txx's blog中详细介绍了
Facebook Paper使用的第三
- Objective-c单例模式的正确写法
jsntghf
单例iosiPhone
一般情况下,可能我们写的单例模式是这样的:
#import <Foundation/Foundation.h>
@interface Downloader : NSObject
+ (instancetype)sharedDownloader;
@end
#import "Downloader.h"
@implementation
- jquery easyui datagrid 加载成功,选中某一行
hae
jqueryeasyuidatagrid数据加载
1.首先你需要设置datagrid的onLoadSuccess
$(
'#dg'
).datagrid({onLoadSuccess :
function
(data){
$(
'#dg'
).datagrid(
'selectRow'
,3);
}});
2.onL
- jQuery用户数字打分评价效果
ini
JavaScripthtmljqueryWebcss
效果体验:http://hovertree.com/texiao/jquery/5.htmHTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>jQuery用户数字打分评分代码 - HoverTree</
- mybatis的paramType
kerryg
DAOsql
MyBatis传多个参数:
1、采用#{0},#{1}获得参数:
Dao层函数方法:
public User selectUser(String name,String area);
对应的Mapper.xml
<select id="selectUser" result
- centos 7安装mysql5.5
MrLee23
centos
首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安装mysql的步骤。
#列出所有被安装的rpm package rpm -qa | grep mariadb
#卸载
rpm -e mariadb-libs-5.
- 利用thrift来实现消息群发
qifeifei
thrift
Thrift项目一般用来做内部项目接偶用的,还有能跨不同语言的功能,非常方便,一般前端系统和后台server线上都是3个节点,然后前端通过获取client来访问后台server,那么如果是多太server,就是有一个负载均衡的方法,然后最后访问其中一个节点。那么换个思路,能不能发送给所有节点的server呢,如果能就
- 实现一个sizeof获取Java对象大小
teasp
javaHotSpot内存对象大小sizeof
由于Java的设计者不想让程序员管理和了解内存的使用,我们想要知道一个对象在内存中的大小变得比较困难了。本文提供了可以获取对象的大小的方法,但是由于各个虚拟机在内存使用上可能存在不同,因此该方法不能在各虚拟机上都适用,而是仅在hotspot 32位虚拟机上,或者其它内存管理方式与hotspot 32位虚拟机相同的虚拟机上 适用。
- SVN错误及处理
xiangqian0505
SVN提交文件时服务器强行关闭
在SVN服务控制台打开资源库“SVN无法读取current” ---摘自网络 写道 SVN无法读取current修复方法 Can't read file : End of file found
文件:repository/db/txn_current、repository/db/current
其中current记录当前最新版本号,txn_current记录版本库中版本