`
zybing
  • 浏览: 465289 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
Mina Service:IoService   在 service side的实现是 : IoAcceptor client side 的实现是:  IoConnector       IoService:            IoAcceptor: NioSocketAcceptor : the non-blocking Socket transport Acceptor NioDatagramAcceptor : the non-blocking UDP transport Acceptor AprSocketAcceptor : t ...
Mina的第一个例子,就是时间服务器:   服务器接收客户端的连接,   只要客户发送不是“quit”,就把当前的时间返回给客户,   客户发送“quit”,就关闭客户连接;   服务器程序:MinaTimeServer.java import java.net.InetAddress; import java.net.InetSocketAddress; import java.nio.charset.Charset; import org.apache.mina.core.service.IoAcceptor; import org.apache.mina.c ...
A Bird's Eye View Lets take a deeper dive into the details   Broadly, MINA based applications are divided into 3 layers I/O Service - Performs actual I/O I/O Filter Chain - Filters/Transforms bytes into desired Data Structures and vice-versa I/O Handler - Here resides the actual bus ...

Nio几大元素

The java.nio.* package contains following key constructs Buffers - Data Containers Chartsets - Containers translators for bytes and Unicode Channels - represents connections to entities capable of I/O operations Selectors - provide selectable, multiplexed non-blocking IO
  PoolableObjectFactory、ObjectPool和ObjectPoolFactory 在Pool组件中,对象池化的工作被划分给了三类对象:   PoolableObjectFactory用于管理被池化的对象的产生、激活、挂起、校验和销毁; ObjectPool用于管理要被池化的对象的借出和归还,并通知PoolableObjectFactory完成相应的工作; ObjectPoolFactory则用于大量生成相同类型和设置的ObjectPool。   相应地,使用Pool组件的过程,也大体可以划分成“创立PoolableObjectFactory”、“使用O ...
一直以来,缓存只考虑缓存有用的数据,有用的对象,但是这篇文章给我我们一个很好的思路,创建对象也是消耗时间的,尤其是大对象。因此除了缓存有用的数据、有用的对象外,还可以考虑缓存大对象,节省系统创建大对象的消耗。   这是IBM 03年的一篇老文章了,“使用Jakarta Commons Pool处理对象池化”,非常不错;   -------------------------------------------------------------------------------------------------------------------------   使用 ...
在SockIOPool中,有一个类:MaintThread   是Pool的自我维护的线程类。   这个类的使用,看代码是要自己创建一个实例,输入SockIOPool对象进去进行运转;   ---------------------------------------------------------------------------------------------------------------------------   在最新的2.6.1版本中,没有看到有维护线程的启动,在2.0版本,在初始化的时候,维护线程就启动了: /** * Initia ...
版本:gwhalin-Memcached-Java-Client-release_2.6.1-0-gab2cc7e   在memcached使用中:   static { String[] serverlist = { "cache0.server.com:12345", "cache1.server.com:12345" }; SockIOPool pool = SockIOPool.getInstance(); pool.setServers(serverlist); pool.initialize(); }   最后需要 ...
在memcached的java客户端中,   SockIOPool是对外服务的class, SchoonerSockIOPool是真正保存缓存连接的class   对于这个2个对象,虽然构造函数都是protected的,但是使用方式却不同:   SockIOPool中: public static synchronized SockIOPool getInstance(String poolName) { SockIOPool whalinSockIOPool = new SockIOPool(); whalinSockIOPool.schoonerSockIOP ...
在memcached中的连接池,是com.schooner.MemCached.SchoonerSockIOPool   在SchoonerSockIOPool中,   // store instances of pools private static ConcurrentMap<String, SchoonerSockIOPool> pools = new ConcurrentHashMap<String, SchoonerSockIOPool>();     pools保存目 ...
memcached的JavaDoc中的说明:     This class is a connection pool for maintaning a pool of persistent connectionsto memcached servers. The pool must be initialized prior to use. This should typically be early onin the lifecycle of the JVM instance. An example of initializing using defaults: sta ...
文章来源:http://hi.baidu.com/lixiaoqing18/blog/item/fc9a66d30109b8dba9ec9a0a.html                 最近在开发中遇到一个问题,就是如何判断远端服务器是否已经断开连接,如果断开那么需要重新连接。       首先想到socket类的方法isClosed()、isConnected()、isInputStreamShutdown()、isOutputStreamShutdown()等,但经过试验并查看相关文档,这些方法都是本地端的状态,无法判断远端是否已经断开连接。       然后想到是否可以通过O ...
  Built-in datatypes : 见图;   Schema Components Diagram (non-normative) :见图
  通过Schema对xml文档进行验证:   http://msv.java.net/   The Oracle Multi-Schema XML Validator (MSV) is a Java technology tool to validate XML documents against several kinds of XML schemata. It supports RELAX NG, RELAX Namespace, RELAX Core, TREX, XML DTDs, and a subset of XML Schema    Part 1.   This la ...
用Dom4j解析xml文件,发生错误:    
Global site tag (gtag.js) - Google Analytics