Xunsearch PHP-SDK v1.4.9 权威指南

# 关于 xunsearch

Xunsearch 是一个高性能、全功能的全文检索解决方案。

#### Xunsearch 旨在帮助一般开发者针对既有的海量数据，快速而方便地建立自己的全文搜索引擎。

Xunsearch 中文译名为“迅搜”，代码中的经常被缩写为 XS，既是英文名称的缩略也是中文声母缩写。 这儿的“迅”是快速的意思，至少包含了两层涵义：其一代表了搜索结果的响应能力，其二则为二次开发难度、速度。

Xunsearch 采用结构化分层设计，包含后端服务、前端开发包两大部分，层次清晰而不交叉。 其中后端是采用 C/C++ 编写的守护进程，而前端采用最为流行的脚本语言 PHP ，对于 web 搜索项目更为方便。 具体参见架构设计。

Xunsearch 极大程度降低的搜索开发的难度，除了常规的中文分词、字段检索、布尔语法等功能外， 还比其它免费的解决方案提供了用户急需的相关搜索、拼音搜索、结果高亮、搜索建议等等。 具体的清单请参见我们的功能列表。

Xunsearch 真正全面开源，并使用最流行的开源许可协议 GPL 发布。您可以免费获取本项目的全部源代码， 自由的使用它，并在许可条件下修改和再分发，具体参见授权声明文件。

## 1. 应用领域?

前提是要有一定的 PHP (或其它对应的 SDK 语言) 开发能力，并备有 Unix 类型操作系统的服务器至少一台。

Xunsearch 可以帮助您建立各种行业门户/垂直搜索、BBS 论坛搜索、CMS/Web站内搜索、文档/文献资料检索， 以及各种基于现有数据库系统的全文检索。

## 2. 历史渊源?

大约在 2006 年创始人 hightman 开始了全文检索的相关探索，先是发布了纯 PHP 实现的中文分词代码， 之后又推出了 MySQL/MyISAM 全文索引的中文分词补丁 MyFT。经过一系列不断完善和改进后，于 2007 年正式发布中文分词项目 scws 并一直维护至今。

起初开发分词的目的就是为了解决中文的全文检索，全文检索技术虽然已经趋于成熟，但多为商业产品。免费开源、 并且要好用的还真难找了，于是萌动了自己开发全文检索的念头。2008 年推出了比较粗糙的搜索解决方案 FTPHP， 之后于 2010 年又开启了 Xungle 项目，直接免去各种技术需求，为用户提供包含软硬环境在内的搜索服务。

在 Xungle 项目的运作过程中，我们发现还有大量的用户出于各种原因，不得不自行解决搜索技术。此外， 我们发现了国外一个优秀的开源搜索引擎基础库 Xapian，它采用 C/C++ 开发，并且性能卓越，久经考验。 但是并没有整合中文分词，并且开发难度、复杂度也较大。于是我们下决心整合 Xapian 和 Scws，并在此基础上 提供更多、更常用的搜索功能。这就是 `Xunsearch` ，目前版本发布正在准备中，代码也已托管到 github 中。

## 3. 开发团队?

本项目由杭州云圣网络科技公司创立并维护，同时也是唯一就 Xunsearch 提供相应的商业技术服务、支持的公司。

著作权登记证书

## 4. 致谢?

是大量 xungle 用户的提议促使我们开启 xunsearch 项目，Xunsearch 的往后发展将离不开广大用户的支持， 还要特别感谢在此其间义务参与 xunsearch 内测的一些朋友。

Xunsearch 底层采用 C/C++ 编写，其中用到了许多其它优秀项目，在线特别感谢它们的团队和作者。 主要有以下几个：

- xapian-core 这是 Xunsearch 的底层索引设计方案
- scws 默认内置的中文分词解决方案
- libevent 后端服务器的事件处理模型
- nginx 搜索服务器的设计借鉴了 nginx 的方式，采用多进程、多线程混合用于处理高并发请求
- Yii 非常优秀的 PHP 开发框架，xunsearch 官网采用该框架，文档组织形式也参考自 Yii

$Id$
Copyright © 2008-2011 by 杭州云圣网络科技有限公司
All Rights Reserved.