千万级数据的分类搜索引擎(二)
来源:互联网 发布:php wget 下载文件 编辑:程序博客网 时间:2024/05/18 02:36
搜索系统前台组件-------轻量级的WebServer
轻量级的WebServer是我们自己开发的一个轻量级网页服务器,实现了WebServer的一些最基本的功能,采用epoll模型处理网络通信,将客户的URL请求直接通过消息队列传递给后台的业务逻辑处理进程,吞吐率非常高,性能大概是Apache+CGI方式的3,4倍。
整个流程如下:
(1)WebServer接受用户请求
(2)用URL做Key查询SHM中是否存在Cache记录,如果命中,则直接获取网页,返回。不命中则到(3)
(3)将请求的URL存放到MSG-Q中
(4)业务逻辑进程轮询MSG-Q,获取URL
(5)业务逻辑进程根据URL像后台发送搜索请求,获取返回结果,生成一个HTML页面,存放到MSG-Q中
(6)WebServer轮询MSG-Q,获取到网页内容后,返回给用户,同时存放在Cache中
(7)cache会根据业务逻辑进程设定的时间定期淘汰过期的网页
实际使用中,cache对于纯静态的页面命中率可以达到90%以上,由于整个网页cache,所以访问速度相当快。对于变动频繁的页面,比如搜索,命中率在30%左右
- 千万级数据的分类搜索引擎(二)
- 千万级数据的分类搜索引擎(一)
- 千万级数据的分类搜索引擎(三)
- 千万级数据的分类搜索引擎(四)
- 千万级数据的分类搜索引擎(五)
- 千万级数据的分类搜索引擎(六)
- 千万级数据的全文检索搜索引擎(二)
- 千万级数据的全文检索搜索引擎(一)
- 千万级数据的全文检索搜索引擎(三)
- 千万级数据的全文检索搜索引擎(四)
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计[转载]
- 基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计
- 实现千万级数据的分页显示!
- 图书管理系统数据库设计
- HTML复选框
- 规模较大的C++项目代码层次结构
- Microsoft .NET Pet Shop 4 架构与技术分析
- 使用资源文件
- 千万级数据的分类搜索引擎(二)
- 设计模式---封装变化
- 失败
- Java本机编译(转载)
- 将图片转换为Icon
- 李阳英语365句
- 工作中遇到的问题及解决办法18(hibernate)
- 如何编写控制面板程序?
- javascript:单击按钮显示/隐藏文本框