网页报错有哪些错误?比如说400错误、500错误、404错误
1xx(临时响应)
表示临时响应并需要请求者继续执行操作的状态码。
100(继续)请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。
101(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换。
2xx (成功)
表示成功处理了请求的状态码。
200(成功)服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。如果是对您的 robotstxt 文件显示此状态码,则表示 Googlebot 已成功检索到该文件。
201(已创建)请求成功并且服务器创建了新的资源。
202(已接受)服务器已接受请求,但尚未处理。
203(非授权信息)服务器已成功处理了请求,但返回的信息可能来自另一来源。
204(无内容)服务器成功处理了请求,但没有返回任何内容。
205(重置内容)服务器成功处理了请求,但没有返回任何内容。与 204 响应不同,此响应要求请求者重置文档视图(例如,清除表单内容以输入新内容)。
206(部分内容)服务器成功处理了部分 GET 请求。
3xx (重定向)
要完成请求,需要进一步操作。通常,这些状态码用来重定向。Google 建议您在每次请求中使用重定向不要超过 5 次。您可以使用网站管理员工具查看一下 Googlebot 在抓取重定向网页时是否遇到问题。诊断下的网络抓取页列出了由于重定向错误导致 Googlebot 无法抓取的网址。
300(多种选择)针对请求,服务器可执行多种操作。服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择。
301(永久移动)请求的网页已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。您应使用此代码告诉 Googlebot 某个网页或网站已永久移动到新位置。
302(临时移动)服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来响应以后的请求。此代码与响应 GET 和 HEAD 请求的 301 代码类似,会自动将请求者转到不同的位置,但您不应使用此代码来告诉 Googlebot 某个网页或网站已经移动,因为 Googlebot 会继续抓取原有位置并编制索引。
303(查看其他位置)请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。对于除 HEAD 之外的所有请求,服务器会自动转到其他位置。
304(未修改)自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。
如果网页自请求者上次请求后再也没有更改过,您应将服务器配置为返回此响应(称为 If-Modified-Since HTTP 标头)。服务器可以告诉搜索引擎的蜘蛛/机器人 自从上次抓取后网页没有变更,进而节省带宽和开销。
305(使用代理)请求者只能使用代理访问请求的网页。如果服务器返回此响应,还表示请求者应使用代理。
307(临时重定向)服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来响应以后的请求。此代码与响应 GET 和 HEAD 请求的 301 代码类似,会自动将请求者转到不同的位置,但您不应使用此代码来告诉 Googlebot 某个页面或网站已经移动,因为 Googlebot 会继续抓取原有位置并编制索引。
4xx(请求错误)
这些状态码表示请求可能出错,妨碍了服务器的处理。
400(错误请求)服务器不理解请求的语法。
401(未授权)请求要求身份验证。对于登录后请求的网页,服务器可能返回此响应。
403(禁止)服务器拒绝请求。如果您在 Googlebot 尝试抓取您网站上的有效网页时看到此状态码(您可以在 Google 网站管理员工具诊断下的网络抓取页面上看到此信息),可能是您的服务器或主机拒绝了 Googlebot 访问。
404(未找到)服务器找不到请求的网页。例如,对于服务器上不存在的网页经常会返回此代码。
如果您的网站上没有 robotstxt 文件,而您在 Google 网站管理员工具"诊断"标签的 robotstxt 页上看到此状态码,则这是正确的状态码。但是,如果您有 robotstxt 文件而又看到此状态码,则说明您的 robotstxt 文件可能命名错误或位于错误的位置(该文件应当位于顶级域,名为 robotstxt)。
如果对于 Googlebot 抓取的网址看到此状态码(在"诊断"标签的 HTTP 错误页面上),则表示 Googlebot 跟随的可能是另一个页面的无效链接(是旧链接或输入有误的链接)。
405(方法禁用)禁用请求中指定的方法。
406(不接受)无法使用请求的内容特性响应请求的网页。
407(需要代理授权)此状态码与 401(未授权)类似,但指定请求者应当授权使用代理。如果服务器返回此响应,还表示请求者应当使用代理。
408(请求超时)服务器等候请求时发生超时。
409(冲突)服务器在完成请求时发生冲突。服务器必须在响应中包含有关冲突的信息。服务器在响应与前一个请求相冲突的 PUT 请求时可能会返回此代码,以及两个请求的差异列表。
410(已删除)如果请求的资源已永久删除,服务器就会返回此响应。该代码与 404(未找到)代码类似,但在资源以前存在而现在不存在的情况下,有时会用来替代 404 代码。如果资源已永久移动,您应使用 301 指定资源的新位置。
411(需要有效长度)服务器不接受不含有效内容长度标头字段的请求。
412(未满足前提条件)服务器未满足请求者在请求中设置的其中一个前提条件。
413(请求实体过大)服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
414(请求的 URI 过长)请求的 URI(通常为网址)过长,服务器无法处理。
415(不支持的媒体类型)请求的格式不受请求页面的支持。
416(请求范围不符合要求)如果页面无法提供请求的范围,则服务器会返回此状态码。
417(未满足期望值)服务器未满足"期望"请求标头字段的要求。
5xx(服务器错误)
这些状态码表示服务器在处理请求时发生内部错误。这些错误可能是服务器本身的错误,而不是请求出错。
500(服务器内部错误)服务器遇到错误,无法完成请求。
501(尚未实施)服务器不具备完成请求的功能。例如,服务器无法识别请求方法时可能会返回此代码。
502(错误网关)服务器作为网关或代理,从上游服务器收到无效响应。
503(服务不可用)服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态。
504(网关超时)服务器作为网关或代理,但是没有及时从上游服务器收到请求。
505(HTTP 版本不受支持)服务器不支持请求中所用的 HTTP 协议版本。
invalid response
无效的响应
双语例句
1Connection timed out, or invalid response from the timestamp server
连接超时,或者时间戳服务器的响应无效。
2Bad Gateway The request was not completedThe server received an invalidresponse from the upstream server
请求未能完成。服务器从上游服务器中收到了一个无效回应。
3502: The server received an invalid response from the server from which it wastrying to retrieve information
此服务器试图从另一台服务器检索信息,但从该服务器收到的响应无效。
因为客户端和服务端的版本不匹配,浏览器输入vcenter地址,下载VMware-viclientexe,重新安装客户端。
Vcenter一般指 VMware vCenter™ Server。
2 VMware vCenterServer 提供了一个可伸缩、可扩展的平台,为 虚拟化管理奠定了基础。 VMware vCenter Server(以前称为 VMware VirtualCenter),可集中管理 VMware vSphere 环境,与其他管理平台相比,极大地提高了 IT 管理员对虚拟环境的控制。
3 VMware vCenter Server:提高在虚拟基础架构每个级别上的集中控制和可见性,通过主动管理发挥 vSphere 潜能,是一个具有广泛合作伙伴体系支持的可伸缩、可扩展平台。
4 借助 VMware vCenter Server,虚拟化环境变得更易于管理,一个管理员就能管理 100 个以上的工作负载,在管理物理基础架构方面的工作效率比通常情况提高了一倍。
现在我们知道了当内存中有所需程序页面的时候会使程序启动变得更快。而Windows 7中的Superfetch已经具有了学习的功能,自从第一次使用Windows 7时,Superfetch就开始记录我们的使用习惯,将我们经常使用的程序的页面在开机后进行提前加载,那么当我们第一次开启程序的时候便可以获得像第二次开启一样的速度了。所以这些预加载的页面就会使得我们的内存占用变多。简单地说就是让所有程序操作在内存中进行,避免使用硬盘硬调页空间,这也就是为何感觉Windows 7占用很大内存的原因。
而在XP时代,也许你也有过类似的经历:当开始使用一些程序后,由于有事便离开了。回来的时候却发现系统响应十分缓慢,特别糟糕。这是由于XP的内存管理模式效率非常低下。
当我们离开后,程序都处于不使用状态。这时系统的一些后台程序,如磁盘整理、杀毒软件等程序就会全速运行,导致我们使用的一些程序页面不得不被挤到了硬盘虚拟内存中。可是当这些后台程序完成任务后,XP系统并不会把之前被挤到虚拟内存的 页面导回内存里。于是在再次使用电脑时,系统才会手忙脚乱的进行临时调配,甚至是硬调页。导致程序响应极其迟缓。所以看上去XP的空闲内存很多,事实上都 没起什么太大的作用。
Windows 7使用建议
任何人都希望通过优化的手段让自己的电脑运行速度达到最理想的状态,而内存又是影响电脑运行速度非常重要的因素,我们在了解了Windows 7 的内存管理机制,再来介绍哪些方法可以给系统加速。
1、多使用休眠和睡眠
由于SuperFetch要在开机后进行预加载,所以建议大家不要关机。尽量使用休眠或睡眠,这样SuperFetch的预加载内容就会保留。从而提高速度和效率。
2、使用ReadyBoost
很多从XP升上来的用户由于系统的内存不够大,所以无法全面的发挥SuperFetch的功能。我们可以使用ReadyBoost功能来帮 我们解决这个难题。
只要符合条件的闪存都可以加速我们的系统。ReadyBoost功能是利用闪存的容量作为SuperFetch预加载页面的储存空间。但由于微 软采用了特殊的算法,所以并不会影响闪存的寿命。还有,用于ReadyBoost的闪存最好为物理内存大小1~25倍。如果系统物理内存足够大的话,就 没有必要使用ReadyBoost了。右键点击U盘盘 符选择属性,切换到readyboost一栏,速度达到标准的U盘都可以开启这个功能。
希望能帮到你,如果没问题的话,麻烦采纳一下,谢谢你!
Berkeley Internert Name Domain(BIND)是我们所熟知的域名软件,它具有广泛的使用基础,Internet上的绝大多数 Py`<W
DNS服务器都是基于这个软件的。BIND目前由ISC(Internet Software Consortium)负责维护,具体的开发由 7! J"|RRH
Nominum(wwwnominumcom)公司来完成。下面编译的这个常见问题集就是由该公司所发布的(同时也见于 @W(6pyQd
http://wwwiscorg/bind),可以说,它具有较强的针对性和实用性。 V;gkSh^i
1) 哪里可以找到BIND j 9|KD
BIND以源码的格式发布。当前的版本为BIND 9,不过BIND 822-P5仍然是广泛发布的版本。考虑到早期版本的安全问 FGX G7vl
题,如果您还在运行比822-P5更早的版本,那么我们强烈推荐您升级软件。 RB2/TwDZ%
以下的URL包括了源码和其他相关资源的链接,你可能会觉得很有用处: &]L~(kL
http://wwwiscorg/products/BIND/ I4o^<P+
源码也可以使用ftp从ftp://ftpiscorg/isc/bind/src/822-P5/bind-srctargz 获得。 'f Vw$0W
镜像BIND的ftp服务器列表和其它ISC维护的开发源码软件可以在ftp://ftpiscorg/isc/MIRRORS上找到。 `1N=W
2) 怎样安装BIND l%B,bUg
下载源码到一个空的目录。如果你需要的话,你也可以下载文档和捆绑的包。 OqOAAnNK[
接下来,你需要解压(unzip)和解包(untar)发布的包。 <n1],wY
gunzip < bind-srctargz | tar xf - w0_x\
然后,你需要编译和安装软件。常见src/INSTALL以获知指令。在安装之前请备份系统,因为安装可能会覆盖旧的二进制 a_$ Xi
代码;这是依赖于系统的。 W"$w57
如果你是从BIND 4转过来的,那么你需要将配置文件namedboot转成新的语法。这里包含了一个转换程序。 Q-! |C
named-bootconf }(y
< /etc/namedboot w1'SM}J%
> /etc/namedconf 9JEC+]6
同时,如果你正从BIND 4转换而来,那么系统启动脚本需要进行修改,以使之查找/etc/namedconf,而不是 z$Tk0a
/etc/namedboot。 f o+-<s
接着,你需要终止老的named并启动新的。 TD:^&o+
kill -TERM tF /[A-
ndc start [#yE)| Q
检查系统日志(在大多数Unix系统上,错误都存放在/var/adm/messages中),因为当前的版本比先前的版本容错性会差 g^|3;F2j
一些。 cw%V0r
3) 哪里有基于NT的BIND {}xlWT-
最新的基于NT的BIND可以从ftp://ftpiscorg/isc/bind/src/822-P5/bind-srctargz上的822p5源码中找 R zsW2&
到。你应该能够使用WinZip来解压/解包822p5文件。一旦解压了源码,你会在src/port/winnt目录下找到NT的移植程 ]NcAW6"
序。你需要Visual C++ 60来编译它。 lyh=!FX4
4) 哪里可以找到有关BIND的信息? l;,wcUi
先从http://wwwiscorg/products/BIND/开始。 DA #S
对于BIND用户,有一个可用的邮件列表。使用http://wwwiscorg/services/public/lists/bind-listshtml上的表 swryaPHw
单订阅。在你提交你的问题到邮件列表之前,请检查邮件列表的档案以查看是否你的问题已经回答过了。可搜索的 gPoZfV
bind-users邮件列表档案位于http://wwwiscorg/ml-archives/bind-users/。 p6ba)>r
Bind-users邮件列表同时指向了中等的Usenet新闻组compprotocolsdnsbin你可以在http://wwwdejacom/上搜 <SjBK\>
索该新闻组。 )6=~|6c^
BIND的"圣经"是DNS and BIND,Third Edition,作者:Paul Albitz和Cricket Liu。 - ]R[}a8p
5) 为什么我应该升级BIND到最新的版本? b>NV)
最新的BIND版本解决了在以前版本中发现的bug和/或安全漏洞。 V)]OHyC6{
6) 我现在使用的是BIND的什么版本? ohF8Rfr/2
有几种方法可用来确定你正在使用什么版本的BIND。请注意有一些是针对于特定操作系统的,而其它一些不能在早于 b>\F K
495的BIND版本上工作。我们会在下面的描述中指明这些限制。 5pB5KCV
● 最简单的告知版本号的方法是查找named启动时写到系统日志文件中的消息。例如: #I Q1
Jul 14 12:54:21 ns named[15677]: starting named 822-P5 !\cM,+6R
Jul 14 12:54:21 hostmaster@ns1nominumcom:/usr/sbin/named C<ruBa9Z
● named带"-v"开关会显示版本: 0Hq N[ @
# named -v ''dfa<5%I
named 822-P5 Thu Jul 20 17:19:57 PDT 2000 g-qJi ~6#
hostmaster@ns1nominumcom:/usr/sbin/named ;lM _
● 当使用更新版本的BIND时,BIND的name后台守护程序的控制接口程序可以提供版本信息: ${\w`H
ndc status (+-S_A(o
● 源代码控制系统(SCSS)的"what"命令提供了文件的标示信息。 Bh(iA\/
what /named e5r8_50ut|
以下命令当在运行BIND 495及以上版本的服务器上检查时会起作用。这两个程序都包括在BIND的发布版本中。 "$CYOoa
●nslookup _|h1
# nslookup h;Hd>W>_
Default Server: nsyourcobogus (j47Ts
Address: 333333333333 _K)pf
> set class=chaos ve;qLn/o
> set type=txt ;["u S
> versionbind @crC090
Server: nsyourcobogus "^L%]
Address: 333333333333 i3ovFUs(
VERSIONBIND text = "822-P5" x]OiQL%jz
〉 cf1V^v3
●dig :hnR&>r;
dig versionbind txt chaos @ server name z$X1,h\U
或者 W187<'r
dig @ server name txt chaos versionbind ^f$7t
7) 我得到一个错误提示:No default TTL set using SOA minimum instead为什么会这样?怎么办? D3rJ0m7[
从BIND 82开始,你需要一条$TTL指示来设置域的默认TTL。可在域的SOA记录之前添加一条'$TTL XXXXXX'指示。 X Xv2R
(XXXXXX表示计算到秒的默认TTL) s6$i#@
8) 主机名可使用哪些有效字符? IG/CJ}@
主机名可以包括字母,数字以及连字符,但不能以连字符开头。下划线(_)在主机名中不是有效的字符。尽管有一些DNS ^b{
服务软件包可以允许下划线在主机名中出现,但大多数是不行的。使用一个带有下划线的域或者主机名会导致大多数 @em=gla
Internet上的名字服务器不能识别相关的主机/IP地址。 s5Av"Jy:k
9) 为什么当我在本域中的一台主机上使用nslookup时会得到non-authoritative的答复? Qz"m |
这通常发生在域(zone)文件中有错误出现的时候。检查系统日志文件'messages'以查证错误。 GtZ(rVA0F/
10) 我已经修改了自己的域,但是在Internet上的其它地方看不到这种改变,为什么? nE8IaTpT
每当你修改了你的域文件,例如当你添加或者修改了主机记录的时候,你也必须更新域的SOA记录的文件版本,或者是 ]Blm:vMc
"serial number",因为名字服务器从你的服务器检索信息时需要知道发生了修改。如果从上次查询之后版本号没有修 q6BW<
改,就不会执行更新。举例如下: Dl6]iB
; foocom DuB;X\E`{
$TTL 14400 |6p ^GzH,
@ IN SOA o8J#XJP
someplacefoocom adminfoocom ( K$i<D) c
1 ; this file's version -- change I2NfG ~9 J
43200 ; refresh twice a day yj~cD9:(e
1800 ; retry refresh every 15 minutes yj->X7}+'
604800 ; expire after 1000 hours (over week) Ve\2#Yh
259200 ) ; minimum TTL of 3 day t~^o!Q
显而易见,带'file's version'的行是我们想要修改的。版本序号可以为任何数字;1,2,3,4或者2001,2002, ngx6}[tgV
2003,等等。唯一的限制是版本号不能多于10位。在这个示例中,如果你对域文件作了修改,你需要将版本序号改为 TSBSfc4zu
'2'。 $g_TCdN%
11) 为什么没有IP地址? ((${Ea1
在/etc/resolvconf中没有名字服务器记录。 4o _G ,/G_
12) 在我的日志文件中出现的"lame server"错误是什么? Aa]0IY'7jp
"lame server"指的是不能确信其是否具有域的授权的服务器。如果你有lame server,或者是授权给了lame server的 I<zvq!Z)
域,那么"lame server"消息很有用。如果你宁愿不看到"lame server"消息,你可以使用logging语句丢弃它们: YbA ]9uB
logging { X TDb R]
category lame-servers{ null; }; $=:-f5
}; LOFv5H4I
13) Microsoft Windows 2000和BIND的关系怎样? MFY813 `
BIND默认会检查所有记录以确保只在需要主机名的地方使用了主机名,这能够防止意外的一致性问题。 <;+\&u7x
Microsoft Windows 2000使用一个称为"_msdcs"来存放动态目录数据。尽管这种子域不会与合法的主机名产生不一致, p\9x[9:iR1
但是也使得在子域中存放非法的主机名成为可能。这种主机名的使用默认是被BIND拒绝的。 @YS osEk}
动态目录希望在_msdcs中有"全局目录(global catalog)"(例如,gc_msdcsexamplecom),这默认是拒绝的。为了解 Q/&"5rvC
决此问题,我们推荐动态目录设为独立的域(例如,"_msdcsexamplecom")并配置成不检查非法的主机名。这应该是合理 -'Z ~(su
的,因为Window 2000服务器创建这些数据,而且不应该会与其它希望访问这些数据的Windows 2000机器产生不一致问 iIaj )ihQI
题。 })7p M`a
例如, WI:kRt1
zone "_msdcsexamplecom" { >x=UPe8
type master; }26- @:
file "_msdcsexampledb"; JCbt$6Tv
check-names ignore; @eaD5'$bt)
allow-update { localnets; }; ecmz
}; sU QfN{:
14) 什么是TSIG key (+5m(CvN
TSIG key提供了一种鉴别和验证交换的DNS数据有效性的方法,它在解析器和服务器之间或者两台服务器之间使用一个密 cy_
钥。 Z lY<!
15) 我怎样使用TSIG key来动态更新我的DNS 1vB(T!9%
首先你需要使用以下命令生成一个TSIG密钥(我们将使用tsig-key作为密钥文件名): (+zhM'Z
dnskeygen -H 128 -h -n tsig-key。 Vh#X8 S 4
这会生成一对密钥文件: AvU =D$a
'Ktsig-key+157+00000key',这是一个ASCII文件,它包括以下行: YML|F;
tsig-key IN KEY 513 3 157 <$u32YI H
awwLOtRfpGE+rRKF2+DEiw== t 9 O;rv
和 rmbW3!bh
'Kvip-key+157+00000private' ,这包括: N&-tX$iLa5
Private-key-format: v12 Algorithm: 157 (HMAC) bkk{&{
Key: awwLOtRfpGE+rRKF2+DEiw== i5:W'g1b
你将需要获取base64编码的密钥awwLOtRfpGE+rRKF2+DEiw== 并在配置你的服务器命名设置中使用它。例如: J,6Ir/f"b
key tsig-key { algorithm hmac-md5; secret "awwLOtRfpGE+rRKF2+DEiw=="; }; rkn#b:Dxq
zone "ddnsdregiscom" { 3K|Bd()t
0z]o0= {
l40iikt
allow-update { key tsig-key ; }; ImBFtHXYo
} kJVcF)
记得在这之后重启named。 UEPu;#=Q
然后,你需要复制这两个密钥文件到客户系统的某个位置(例如使用/var/named/tsig)。最后,你需要运行以下命令: dC\GwP
nsupdate -k /var/named/tsig:tsig-key。 FCr\
16) 在namedconf中的'forwarder'选项有何作用? EKH!_!
forwarder行告诉服务器转发所有查询,因为它对另一个域名服务器没有授权或缓冲的数据。
问题一:信息检索的基本原理 10、文献检索的基本原理 2004-9-15
信息检索的基本原理是:通过对大量的、分散无序的文献信息进行搜集、加工、组织、存储,建立各种各样的检索系统,并通过一定的方法和手段使存储与检索这两个过程所采用的特征标识达到一致,以便有效地获得和利用信息源。其中存储是为了检索,而检索又必须先进行存储。 详细内容 相关文献
chinalibs/zhaiyaoasptitleid=46093
问题二:简述信息检索的基本原理 信息检索(信息检索),是指按照一定的方式组织信息,并确定根据用户的工艺和技术的信息需求的相关信息。信息检索是信息检索过程的后半部分窄,即找到处理从收集的信息所需的信息,也就是我们常说的信息检索(信息检索信息或寻求)。
问题三:文献信息检索的原理是什么 信息检索是指将信息按一定方式组织和储存起来,并针对信息用户的特定需求查找出所需信息内容的过程。
计算机信息检索是指利用一定的检索算法, 借助于特定的检索工具, 并针对用户的检索需求, 从非结构处的数据中获取有用信息的过程
信息检索原理示意图:如图
信息检索的实质是信息用户的需求和一定的信息 的比较和选择的过程,即匹配的过程。
信息检索步骤
分析检索课题,明确检索要求
选择检索工具,选择检索途径
确定检索标识,确定检索运算
构筑检索提问,实施检索操作
获取初步信息,调整检索策略
获得满意结果
问题四:文献检索的基本原理 文献检索的全过程由文献存储与文献检索构成。文献存贮是文献管理者把一定数量提示文献特征的信息或从文献中桥出的知识信息加以组织,编制成为检索工具或组织成检索系统,即编制检索工具和建立检索系统的过程。存贮是进行检索的前提,也是检索的基础。文献检索是检索者根据需要,从某―检索工具或检索系统中把相关的文献线索或知识信息查找出来。即利用检索工具和检索系统检索所需文献的过程。
问题五:文献信息检索的原理是什么 文献检索的基本原理信息检索的基本原理是:通过对大量的、分散无序的文献信息进行搜集、加工、组织、存储,建立各种各样的检索系统,并通过一定的方法和手段使存储与检索这两个过程所采用的特征标识达到一致,以便有效地获得和利用信息源。其中存储是为了检索,而检索又必须先进行存储
问题六:简述计算机检索的基本原理 从硬盘中读取你电脑启动需要的基本参数主要起自检的作用现在很多笔记本电脑取消了自检
希望采纳
问题七:全文搜索引擎一般采用什么原理来采集信息 搜索引擎工作原理:发现网页-蜘蛛捉爬取-建立数据库-展现等循环工作
问题八:搜索引擎的工作原理是什么? 搜索引擎的工作原理包括如下三个过程:首先在互联中发现、搜集网页信息;同时对信息进行提取和组织建立索引库;再由检索器根郸用户输入的查询关键字,在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并将查询结果返回给用户。
1、抓取网页。每个独立的搜索引擎都有自己的网页抓取程序(spider)。Spider顺着网页中的超链接,连续地抓取网页。被抓取的网页被称之为网页快照。由于互联网中超链接的应用很普遍,理论上,从一定范围的网页出发,就能搜集到绝大多数的网页。
发现、抓取网页信息需要有高性能的“网络蜘蛛”程序(Spider)去自动地在互联网中搜索信息。一个典型的网络蜘蛛工作的方式,是查看一个页面,并从中找到相关信息,然后它再从该页面的所有链接中出发,继续寻找相关的信息,以此类推,直至穷尽。网络蜘蛛要求能够快速、全面。网络蜘蛛为实现其快速地浏览整个互联网,通常在技术上采用抢先式多线程技术实现在网上聚集信息。通过抢先式多线程的使用,你能索引一个基于URL链接的Web页面,启动一个新的线程跟随每个新的URL链接,索引一个新的URL起点。当然在服务器上所开的线程也不能无限膨胀,需要在服务器的正常运转和快速收集网页之间找一个平衡点。在算法上各个搜索引擎技术公司可能不尽相同,但目的都是快速浏览Web页和后续过程相配合。目前国内的搜索引擎技术公司中,比如百度公司的网络蜘蛛采用了可定制、高扩展性的调度算法使得搜索器能在极短的时间内收集到最大数量的互联网信息,并把所获得的信息保存下来以备建立索引库和用户检索。
2、处理网页。搜索引擎抓到网页后,还要做大量的预处理工作,才能提供检索服务。其中,最重要的就是提取关键词,建立索引库和索引。其他还包括去除重复网页、分词(中文)、判断网页类型、分析超链接、计算网页的重要度/丰富度等。
索引库的建立关系到用户能否最迅速地找到最准确、最广泛的信息,同时索引库的建立也必须迅速,对网络蜘蛛抓来的网页信息极快地建立索引,保证信息的及时性。对网页采用基于网页内容分析和基于超链分析相结合的方法进行相关度评价,能够客观地对网页进行排序,从而极大限度地保证搜索出的结果与用户的查询串相一致。新浪搜索引擎对网站数据建立索引的过程中采取了按照关键词在网站标题、网站描述、网站URL等不同位置的出现或网站的质量等级等建立索引库,从而保证搜索出的结果与用户的查询串相一致。新浪搜索引擎在索引库建立的过程中,对所有数据采用多进程并行的方式,对新的信息采取增量式的方法建立索引库,从而保证能够迅速建立索引,使数据能够得到及时的更新。
3、提供检索服务。用户输入关键词进行检索,搜索引擎从索引数据库中找到匹配该关键词的网页;为了用户便于判断,除了网页标题和URL外,还会提供一段来自网页的摘要以及其他信息。
用户检索的过程是对前两个过程的检验,检验该搜索引擎能否给出最准确、最广泛的信息,检验该搜索引擎能否迅速地给出用户最想得到的信息。对于网站数据的检索,新浪搜索引擎采用多进程的方式在索引库中检索,大大减少了用户的等待时间,并且在用户查询高峰时服务器的负担不会过高(平均的检索时间在03秒左右)。对于网页信息的检索,作为国内众多门户网站的网页检索技术提供商的百度公司其搜索引擎运用了先进的多线程技术,采用高效的搜索算法和稳定的UNIX平台,因此可大大缩短对用户搜索请求的响应时间。作为慧聪I系列应用软件产品之一的I-Search2000采用的超大规模动态缓存技术,使一级响应的覆盖率达到75%以上,独有的自学习能力可自动将二级响>>
0条评论