摘 要
网络中的资源非常丰富,但是如何有效的搜索信息却是一件困难的事情。建立搜索引擎就是解决这个问题的最好方法。本文首先详细介绍了基于英特网的搜索引擎的系统结构,然后从网络机器人、索引引擎、Web服务器三个方面进行详细的说明。为了更加深刻的理解这种技术,本人还亲自实现了一个自己的搜索引擎——基于搜索引擎。
搜索引擎是从指定的Web页面中按照超连接进行解析、搜索,并把搜索到的每条信息进行索引后加入数据库。然后通过Web服务器接受客户端请求后从索引数据库中搜索出所匹配的。
本人在介绍搜索引擎的章节中除了详细的阐述技术核心外还结合了搜索引擎的实现代码来说明,图文并茂、易于理解。
3.2.4如何提高程序性能
Internet中拥有海量的Web页面,如果开发出高效的Spider程序是非常重要的。下面就来介绍下几种提高性能的技术:
Java的多线程技术
线程是通过程序的一条执行路线。多线程是一个程序同时运行多个任务的能力。它是在一个程序的内部进行分工合作。
优化程序的通常方法是确定瓶颈并改进他。瓶颈是一个程序中最慢的部分,他限制了其他任务的运行。据个例子说明:一个Spider程序需要下载十个页面,要完成这一任务,程序必须向服务器发出请求然后接受这些网页。当程序等待响应的时候其他任务不能执行,这就影响了程序的效率。如果用多线程技术可以让这些网页的等待时间合在一起,不用互相影响,这就可以极大的改进程序性能。
数据库技术
当Spider程序访问一个大型Web站点时,必须使用一种有效的方法来存储站点队列。这些队列管理Spider程序必须维护大型网页的列表。如果把他们放在内存中将会是性能下降,所以我们可以把他们放在数据库中减少系统资源的消耗。
目录
目录 1
摘要 3
第一章 引言 4
第二章 搜索引擎的结构 5
2.1系统概述 5
2.2搜索引擎的构成 5
2.2.1网络机器人 5
2.2.2索引与搜索 5
2.2.3 Web服务器 6
2.3搜索引擎的主要指标及分析 6
2.4小节 6
第三章 网络机器人 7
3.1什么是网络机器人 7
3.2网络机器人的结构分析 7
3.2.1如何解析HTML 7
3.2.2 Spider程序结构 8
3.2.3如何构造Spider程序 9
3.2.4如何提高程序性能 11
3.2.5网络机器人的代码分析 12
3.3小节 14
第四章 基于LUCENE的索引与搜索 15
4.1什么是LUCENE全文检索 15
4.2 LUCENE的原理分析 15
4.2.1全文检索的实现机制 15
4.2.2 Lucene的索引效率 15
4.2.3 中文切分词机制 17
4.3 LUCENE与SPIDER的结合 18
4.4小节 21
第五章 基于TOMCAT的WEB服务器 22
5.1什么是基于TOMCAT的WEB服务器 22
5.2用户接口设计 22
5.3.1客户端设计 22
5.3.2服务端设计 23
5.3在TOMCAT上部署项目 25
5.4小节 25
第六章 搜索引擎策略 26
6.1简介 26
6.2面向主题的搜索策略 26
6.2.1导向词 26
6.2.3权威网页和中心网页 27
6.3小节 27
参考文献 28
相关热词:JSP 131 基于 JSP 产品 搜索引擎 设计