在本章中,我们将讨论Apache Solr的体系结构.下图显示了Apache Solr的体系结构框图.
以下是Apache Solr的主要构建块(组件) :
请求处理程序 : 我们发送给Apache Solr的请求由这些请求处理程序处理.请求可能是查询请求或索引更新请求.根据我们的要求,我们需要选择请求处理程序.要将请求传递给Solr,我们通常会将处理程序映射到某个URI端点,并且指定的请求将由它提供.
搜索组件 : 搜索组件是Apache Solr中提供的搜索类型(特征).它可能是拼写检查,查询,分面,点击突出显示等.这些搜索组件被注册为搜索处理程序.可以将多个组件注册到搜索处理程序.
Query Parser : Apache Solr查询解析器解析我们传递给Solr的查询,并验证查询是否存在语法错误.解析查询后,它会将它们转换为Lucene理解的格式.
Response Writer : Apache Solr中的响应编写器是为用户查询生成格式化输出的组件. Solr支持XML,JSON,CSV等响应格式.对于每种类型的响应,我们都有不同的响应编写器.
Analyzer/tokenizer : Lucene以令牌的形式识别数据. Apache Solr分析内容,将其划分为令牌,并将这些令牌传递给Lucene. Apache Solr中的分析器检查字段文本并生成令牌流.标记生成器将分析器准备的标记流分解为标记.
更新请求处理器 : 每当我们向Apache Solr发送更新请求时,请求都通过一组插件(签名,日志记录,索引)运行,统称为更新请求处理器.此处理器负责修改,例如删除字段,添加字段等.