随笔 - 8  文章 - 5  评论 - 10 
  2008年10月7日
     摘要: 托管函数是一个对类里面的某个函数的一个引用。它自己并没有具体的函数定义,只是指向某个函数实现。 由于托管函数是对类里面某个函数的一个引用。所以我们不必知道这个函数的具体名字是什么,而只需要调用托管函数,让托管函数去调用相应的函数就可以了。  阅读全文
posted @ 2008-10-07 18:24 Alic 阅读(795) | 评论 (0)编辑
  2008年9月27日
     摘要: 应用程序域 应用程序域(通常简称为AppDomain)可以视为一种轻量级进程。一个Windows进程内可以包含多个AppDomain。 AppDomain这个概念的提出是为了实现在一个物理服务器中承载多个应用程序,并且这些应用能够相互独立。ASP.NET中利用AppDomain在同一个进程内承载了多组Web应用程序就是一个例子。实际上微软曾进行过在单一进程内承载多达1000个简单Web应用程序的压力测试。   阅读全文
posted @ 2008-09-27 16:35 Alic 阅读(968) | 评论 (2)编辑
     摘要: 在上一篇文章我们已经介绍到通过在配置文件中指定自定义的ChannelSinkProvider,我们可以在Pipeline中加入自己的ChannelSink,此时我们就可以加入自己的信息处理模块,但是这里我们所能操作的对象是已经经过格式化的消息(即数据流),我们看不到原始的消息对象,这也势必影响了我们所能实现的扩展功能。而在上文的图1中,我们看到除了ChannelSink可以扩展之外,我们还可以加入自定义的MessageSink,而它是位于格式器之前的,也就是说在 MessageSink中我们可以直接操作尚未格式化的消息对象。此时,我们就获得一个功能更强大的扩展点。直接操作消息对象,这意味着什么呢?  阅读全文
posted @ 2008-09-27 16:33 Alic 阅读(1413) | 评论 (1)编辑
     摘要: .NET Remoting是.NET平台上允许存在于不同应用程序域中的对象相互知晓对方并进行通讯的基础设施。调用对象被称为客户端,而被调用对象则被称为服务器或者服务器对象。简而言之,它就是.NET平台上实现分布式对象系统的框架。 传统的方法调用是通过栈实现,调用方法前将this指针以及方法参数压入线程栈中,线程执行方法时将栈中的参数取出作为本地变量,经过一番计算后,将方法的返回结果压入栈中。这样我们就完成了一次方法调用。  阅读全文
posted @ 2008-09-27 16:23 Alic 阅读(1559) | 评论 (3)编辑
  2008年9月24日
     摘要: 在Lucene中score简单说是由 tf * idf * boost * lengthNorm计算得出的。 tf:是查询的词在文档中出现的次数的平方根 idf:表示反转文档频率,观察了一下所有的文档都一样,所以那就没什么用处,不会起什么决定作用。 boost:激励因子,可以通过setBoost方法设置,需要说明的通过field和doc都可以设置,所设置的值会同时起作用 lengthNorm:是由搜索的field的长度决定了,越长文档的分值越低。  阅读全文
posted @ 2008-09-24 10:34 Alic 阅读(34) | 评论 (0)编辑
  2008年9月4日
     摘要: Lucene是什么? Lucene是Apache组织的一个用JAVA实现全文搜索引擎的开源项目。后来有人将Lucene移植到。Net语言。 Lucene是一个信息检索的函数库(Library),利用它你可以为你的应用加上索引和搜索的功能。 Lucene的使用者不需要深入了解有关全文检索的知识,仅仅学会使用库中的一个类,你就为你的应用实现全文检索的功能。 不过千万别以为Lucene是一个象google那样的搜索引擎,Lucene甚至不是一个应用程序,它仅仅是一个工具,一个Library。你也可以把它理解为一个将索引、搜索功能封装的很好的一套简单易用的API。利用这套API你可以做很多有关搜索的事情,而且很方便。   阅读全文
posted @ 2008-09-04 18:29 Alic 阅读(92) | 评论 (0)编辑
  2008年6月6日
     摘要: 与基于理解的分词算法和基于统计的分词算法相比,基于文本匹配的算法更加通用。基于文本匹配的算法又称之为“机械分词算法”,他是它是按照一定的策略将待分析的汉字串与一个“充分大的”机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功,可识别出一个词。按照扫描方向的不同,文本匹配分词方法可以分为正向匹配和逆向匹配两种;按照不同长度优先匹配的情况,可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。  阅读全文
posted @ 2008-06-06 11:02 Alic 阅读(101) | 评论 (0)编辑
  2008年4月9日
     摘要: Mapbar坐标的加密与解密算法解密  阅读全文
posted @ 2008-04-09 11:46 Alic 阅读(462) | 评论 (1)编辑
  2008年4月7日
     摘要: Apache Lucene项目是一个完全用Java编写的高性能、全功能的文本搜索引擎库,今天它发布了2.3版。项目管理委员会(PMC)成员以及提交者Grant Ingersoll这样描述这次发布的版本以及Lucene未来的计划。 Ingersoll认为这次的版本中最大的变化是新的索引算法,它使用了新的in-memory模型来达到大幅的速度提升。据Ingersoll说,单单是把Lucene 2.2 JAR换成Lucene 2.3 JAR就能在某些测试中把索引性能提速500%。其他改变还包括:   阅读全文
posted @ 2008-04-07 09:36 Alic 阅读(254) | 评论 (3)编辑
  2008年3月31日
     摘要: 越来越多的人利用开源组件 Lucene来开发自己的搜索引擎。在数据量不大的情况下,我们不会太关注创建索引的效率;但是,但数据达到一定的数量是,我们就不得不考虑如何提高创建索引的性能,以缩短索引创建的时间。 我们是用Lucene中提供的类IndexWriter来创建索引的,所以我们不妨先看一看IndexWriter类中关系到索引创建效率的几个方法。 一、SetMergeFactor(合并因子) SetMergeFactor是控制segment合并频率的,其决定了一个索引块中包括多少个文档,当硬盘上的索引块达到多少时,将它们合并成一个较大的索引块。当MergeFactor值较大时,生成索引的速度较快。MergeFactor的默认值是10,建议在建立索引前将其设置的大一些。  阅读全文
posted @ 2008-03-31 16:54 Alic 阅读(289) | 评论 (0)编辑