君子博学而日参省乎己 则知明而行无过矣

博客园 首页 新随笔 联系 订阅 管理
上一页 1 ··· 26 27 28 29 30 31 32 33 34 ··· 107 下一页

2013年6月24日 #

摘要: 本文转载自http://blog.csdn.net/cutesource/article/details/6192016如何正确使用NIO来构架网络服务器一直是最近思考的一个问题,于是乎分析了一下Jetty、Tomcat和Mina有关NIO的源码,发现大伙都基于类似的方式,我感觉这应该算是NIO构架网络服务器的经典模式,并基于这种模式写了个小小网络服务器,压力测试了一下,效果还不错。废话不多说,先看看三者是如何使用NIO的。Jetty Connector的实现先看看有关类图:其中:SelectChannelConnector负责组装各组件SelectSet负责侦听客户端请求SelectChan 阅读全文
posted @ 2013-06-24 06:26 刺猬的温驯 阅读(343) 评论(0) 推荐(0)

2013年6月22日 #

摘要: 目录信息检索的概念信息检索技术的分类全文检索与数据库查询对比全文检索工具一般由三部分构成全文检索中建立索引和进行检索的流程索引里面究竟存什么如何创建索引如何对索引进行检索Lucene系统结构与源码组织图Lucene索引文件的概念组成和结构组成1、信息检索的概念信息检索就是从信息集合中找出与用户需求相关的信息。被检索出的信息除了文本外,还有图像、音频、视频等多媒体信息。2、信息检索技术的分类目前信息检索技术可分为3类:全文检索:把用户的查询请求和全文中的每一个词进行比较,不考虑查询请求与文本语义上的匹配。在信息检索工具中,全文检索是最具通用性和实用性的。数据检索:查询要求和信息系统中数据都遵循一 阅读全文
posted @ 2013-06-22 05:36 刺猬的温驯 阅读(1468) 评论(0) 推荐(0)

摘要: Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做其他事情,那么改进做法就是开设线程,让线程去等待,但是这样做也是相当耗费资源的。Java NIO非堵塞技术实际是采取Reactor模式,或者说是Observer模式为我们监察I/O端口,如果有内容进来,会自动通知我们,这样,我们就不必开启多个线程死等,从外界看,实现了流畅的I/O读写,不堵塞了。Java NIO出现不只是一个技术 阅读全文
posted @ 2013-06-22 05:07 刺猬的温驯 阅读(367) 评论(0) 推荐(0)

摘要: 五、迷惑不解:为什么要自己消耗资源?令人不解的是为什么我们的Java的New I/O要设计成这个样子?如果说老的I/O不能多路复用,如下图所示,要开N多的线程去挨个侦听每一个Channel (文件描述符),如果这样做很费资源,且效率不高的话。那为什么在新的I/O机制依然需要自己连接自己,而且,还是重复连接,消耗双倍的资源?通过WEB搜索引擎没有找到为什么。只看到N多的人在报BUG,但SUN却没有任何解释。下面一个图展示了,老的IO和新IO的在网络编程方面的差别。看起来NIO的确很好很强大。但似乎比起C/C++来说,Java的这种实现会有一些不必要的开销。六、它山之石:从Apache的Mina框 阅读全文
posted @ 2013-06-22 04:54 刺猬的温驯 阅读(354) 评论(0) 推荐(0)

摘要: 一、前言自从J2SE 1.4版本以来,JDK发布了全新的I/O类库,简称NIO,其不但引入了全新的高效的I/O机制,同时,也引入了多路复用的异步模式。NIO的包中主要包含了这样几种抽象数据类型:Buffer:包含数据且用于读写的线形表结构。其中还提供了一个特殊类用于内存映射文件的I/O操作。Charset:它提供Unicode字符串影射到字节序列以及逆映射的操作。Channels:包含socket,file和pipe三种管道,都是全双工的通道。Selector:多个异步I/O操作集中到一个或多个线程中(可以被看成是Unix中select()函数的面向对象版本)。我的大学同学赵锟在使用NIO类库 阅读全文
posted @ 2013-06-22 04:38 刺猬的温驯 阅读(469) 评论(0) 推荐(0)

2013年6月21日 #

摘要: linux 下 shell命令 ,制作md5码 也用于软件的md5校验 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改。MD5全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度为128位(十六进制长度就是32位)的“指纹”(或称“报文摘要”),不同的文件产生相同的报文摘要的可能性是非常非常之小的。 在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。 1、使用md5sum来产生指纹(报... 阅读全文
posted @ 2013-06-21 01:12 刺猬的温驯 阅读(1265) 评论(0) 推荐(0)

2013年6月20日 #

摘要: Solr是一个使用开源的搜索服务器,它采用Lucene Core的索引和搜索功能构建,它可以用于几乎所有的编程语言实现可扩展的搜索引擎。Solr的虽然有很多优点,建立开发环境是不是其中之一。此博客条目​​介绍了我们如何通过使用使用Maven运行Solr,并确保每个开发人员使用相同的configuration, schema 和 Solr版本。我们的Maven构建的要求如下:The properties of our Maven build must be read from an external property file. The only exception to this rule i 阅读全文
posted @ 2013-06-20 00:44 刺猬的温驯 阅读(3495) 评论(0) 推荐(0)

摘要: 大多数应用都必须具有某种搜索功能,问题是搜索功能往往是巨大的资源消耗并且它们由于沉重的数据库加载而拖垮你的应用的性能这就是为什么转移负载到一个外部的搜索服务器是一个不错的主意,Apache Solr是一个流行的开源搜索服务器,它通过使用类似REST的HTTP API,这就确保你能从几乎任何编程语言来... 阅读全文
posted @ 2013-06-20 00:41 刺猬的温驯 阅读(7323) 评论(8) 推荐(4)

2013年6月19日 #

摘要: Solris an open source search server which is built by using the indexing and search capabilities ofLucene Core, and it can be used for implementing scalable search engines with almost any programming language.Even though Solr has many advantages, setting up a a development environment is not one of 阅读全文
posted @ 2013-06-19 12:29 刺猬的温驯 阅读(2786) 评论(0) 推荐(0)

摘要: This is the ninth and the last part of mySpring Data JPA tutorial. Now it is time to take a look of what we have learned, and how we should use it to build better software.Table of ContentsThe contents of my Spring Data JPA tutorial is given in following:Part One: ConfigurationPart Two: CRUDPart Thr 阅读全文
posted @ 2013-06-19 11:55 刺猬的温驯 阅读(1100) 评论(0) 推荐(0)

上一页 1 ··· 26 27 28 29 30 31 32 33 34 ··· 107 下一页