HubbleDotNet 是一个开源项目,开源项目的特点就是反应迅速,功能推出会很快,版本会经常需要升级。本文将介绍如何进行版本升级。
在开始本文之前,先来看看 HubbleDotNet 包含的组件都有哪些。
这个程序是hubble.net 的windows 服务进程,这个经常只负责在服务启动时启动 hubbletask ,并在服务关闭时关闭 hubbletask。
这个程序是 hubble.net 的宿主进程,不运行 hubbleService ,直接运行这个程序,也可以运行hubble.net。这个程序启动后将侦听 TCP 端口,接受从 sqlclient 发来的查询请求,执行并返回结果给 sqlclient。
这个是Hubble.net 的核心算法库,所有的搜索和索引算法都由这个库提供
这是 hubble.net 的平台库,提供一些公用的类和方法。
这个库定义了分词器的接口,并提供几个默认的分词器。
这个库是 hubble.net 的SQL 访问客户端,其作用和System.Data.Sqlclient 类似。这个库可以由应用软件调用。
这个程序是Hubble.net 提供的查询分析器,它主要负责提供图形化的管理和查询功能。
代码位置 在 http://hubbledotnet.codeplex.com/ 这个主页的 Source Code Tab 中。下载最新的代码,打开 Hubble.Net.sln 这个解决方案,编译。
编译环境为 VS 2008
编译后将生成上述组件。
注意:为了保证执行效率,建议直接编译 release 版本,如果编译debug 版本,将会出现如下错误:
错误 3 不安全代码只会在使用 /unsafe 编译的情况下出现
这是我故意这样搞的,Debug 版本我没有将项目的 unsafe 选项选中。如果你一定要编译Debug 版本,请在项目属性中将unsafe 选项选中。
在服务管理中停止 Hubble.net 服务。
用除 HubbleService.exe 外的所有编译好的组件覆盖位于 Program Files/Hubble.net/Default 这个目录下的原组件。
如果应用程序,比如 Asp.net 的 Web site 调用了 Hubble.SqlClient.dll ,需要同时更新相应目录下的 Hubble.SqlClient.dll ,Hubble.Analyzer.dll,Hubble.Framework.dll
在服务管理中启动 Hubble.net 服务。
进入 QueryAnalyzer,在菜单中选 About,将显示目前客户端组件,服务器的版本号。