当前位置: 首页 > news >正文

湖南微信网站公司电话企业文化建设网站建设

湖南微信网站公司电话,企业文化建设网站建设,江苏网站备案需要多久,猎头公司是做什么的1. 为什么要使用Sphinx假设你现在运营着一个论坛#xff0c;论坛数据已经超过100W#xff0c;很多用户都反映论坛搜索的速度非常慢#xff0c;那么这时你就可以考虑使用Sphinx了#xff08;当然其他的全文检索程序或方法也行#xff09;。 2. Sphinx是什么Sphinx由俄…1.    为什么要使用Sphinx  假设你现在运营着一个论坛论坛数据已经超过100W很多用户都反映论坛搜索的速度非常慢那么这时你就可以考虑使用Sphinx了当然其他的全文检索程序或方法也行。   2.    Sphinx是什么  Sphinx由俄罗斯人Andrew Aksyonoff 开发的高性能全文搜索软件包在GPL与商业协议双许可协议下发行。 全文检索是指以文档的全部文本信息作为检索对象的一种信息检索技术。检索的对象有可能是文章的标题也有可能是文章的作者也有可能是文章摘要或内容。   3.    Sphinx的特性  l  高速索引 (在新款CPU上,近10 MB/秒); l  高速搜索 (2-4G的文本量中平均查询速度不到0.1秒); l  高可用性 (单CPU上最大可支持100 GB的文本,100M文档); l  提供良好的相关性排名 l  支持分布式搜索; l  提供文档摘要生成; l  提供从MySQL内部的插件式存储引擎上搜索 l  支持布尔,短语, 和近义词查询; l  支持每个文档多个全文检索域(默认最大32个); l  支持每个文档多属性; l  支持断词; l  支持单字节编码与UTF-8编码;   4.    下载并安装Sphinx  打开网址http://www.coreseek.cn/news/7/52/ 找到适合自己的操作系统的版本比如我是Windows那么我就可以下载Coreseek Win32通用版本Linux下可以下载源码包自己编译安装。这里解释下为什么我们下载的程序叫CoreseekCoreseek是基于Sphinx开发的一款软件对Sphinx做了一些改动在中文方面支持得比Sphinx好所以我们使用之。 下载完成后将程序解压到你想解压的地方比如我就想解压到E盘根目录之后修改目录名为Coreseek大功告成Coreseek安装完成了安装的目录是在E:\coreseek\。   5.    使用Sphinx  我要使用Sphinx需要做以下几件事 1)        首先得有数据 2)        建立Sphinx配置文件 3)        生成索引 4)        启动Sphinx 5)        使用之调用api或search.exe程序进行查询   第1件导入数据 我们建立测试所需要用到得数据库、表以及数据篇幅有限这些在附件中都有下载后导入MySQL即可。   第2件建立配置文件 接下来我们需要建立一个Sphinx的配置文件 E:\coreseek\etc\mysql.conf将其内容改为下面这些 source mysql {        type                                         mysql        sql_host                                    localhost         sql_user                                    root                  sql_pass                                                             sql_db                                      test                   sql_port                                    3306                 sql_query_pre                         SET NAMES utf8        sql_query                                 SELECT id,addtime,title,content FROM post        sql_attr_timestamp                 addtime }   index mysql {        source                                      mysql        path                                         E:/coreseek/var/data/mysql        charset_dictpath                   E:/coreseek/etc/        charset_type                           zh_cn.utf-8 }   searchd {        listen                                         9312        max_matches                         1000        pid_file                                     E:/coreseek/var/log/searchd_mysql.pid        log                                            E:/coreseek/var/log/searchd_mysql.log        query_log                                E:/coreseek/var/log/query_mysql.log }   先讲下这个配置文件中每项的含义。 source mysql{} 定义源名称为mysql也可以叫其他的比如source xxx{} type  数据源类型 sql_* 数据相关的配置比如sql_host,sql_pass什么的这些不解释鸟 sql_query 建立索引时的查询命令在这里尽可能不使用where或group by将where与groupby的内容交给sphinx由sphinx进行条件过滤与groupby效率会更高注意select 的字段必须包括一个唯一主键以及要全文检索的字段where中要用到的字段也要select出来 sql_query_pre 在执行sql_query前执行的sql命令, 可以有多条 sql_attr 以这个开头的配置项表示属性字段在where,orderby,groupby中出现的字段要分别定义一个属性定义不同类型的字段要用不同的属性名,比如上面的sql_attr_timestamp就是时间戳类型。   index mysql{} 定义索引名称为mysql也可以叫其他的比如index xxx{} source 关联源就是source xxx定义的。 path 索引文件存放路径比如E:/coreseek/var/data/mysql 实际存放在E:/coreseek/var/data/目录然后创建多个名称为mysql后缀却不同的索引文件 charset_dictpath  指明分词法读取词典文件的位置当启用分词法时为必填项。在使用LibMMSeg作为分词 库时需要确保词典文件uni.lib在指定的目录下 charset_type 字符集比如charset_type zh_cn.gbk   searchd{} sphinx守护进程配置 listen 监听端口 max_matches最大匹配数也就是查找的数据再多也只返回这里设置的1000条 pid_file pid文件路径 log全文检索日志 query_log查询日志   好了配置文件就这样配置的参数还有很多大家可以自己查文档。   第3件生成索引 开始 - 运行 - 输入cmd回车打开命令行工具 e:\coreseek\bin\indexer --config e:\coreseek\etc\mysql.conf --all 这一串东西其实就是调用indexer程序来生成所有索引   如果只想对某个数据源进行索引则可以这样e:\coreseek\bin\indexer --config e:\coreseek\etc\mysql.conf 索引名称索引名称指配置文件中所定义的 --config,--all这些都是indexer程序的参数想了解更多参数的朋友可以查看文档 运行命令后如果你没看到FATAL,ERROR这些东西那么索引文件就算生成成功了比如我看到得就是 ………省略……… using config file e:\coreseek\etc\mysql.conf... indexing index mysql... collected 4 docs, 0.0 MB ………省略………   第4件启动Sphinx 同样命令行下 e:\coreseek\bin\searchd --config e:\coreseek\etc\mysql.conf 运行后提示了一大堆东西 using config file e:\coreseek\etc\mysql.conf... listening on all interfaces, port9312 accepting connections 不用管这些鸟文是啥意思反正Sphinx是启动好了。 现在有一串鸟文的这个命令行是不能关的因为关了Sphinx也就关了如果觉得这样不爽可以将Sphinx安装成系统服务在后台运行。 安装系统服务只需在命令行中输入以下命令 e:\coreseek\bin\searchd --config e:\coreseek\etc\mysql.conf --install 安装之后记得启动这个服务不会启动那我没法自己google。   第5步使用Sphinx 在web根目录下建立一个search目录当然不在根目录也行同样目录名也可以随取复制E:\coreseek\api\ sphinxapi.php文件到search目录sphinxapi.php这个是sphinx官方提供的api开始php程序的编写。 在search目录建立一个文件名字叫啥都行我管它叫index.php其内容如下 ?php   include sphinxapi.php;  // 加载Sphinx API   $sc new SphinxClient(); // 实例化Api $sc-setServer(localhost, 9312); // 设置服务端第一个参数sphinx服务器地址第二个sphinx监听端口 $res $sc-query(sphinx, mysql); // 执行查询第一个参数查询的关键字第二个查询的索引名称mysql索引名称这个也是在配置文件中定义的多个索引名称以,分开也可以用*表示所有索引。 print_r($res);   打印结果 Array (    ………省略………     [matches] Array         (             [2] Array                 (                     [weight] 2                     [attrs] Array                         (                             [addtime] 1282622004                         )                 )             [4] Array                 (                     [weight] 2                     [attrs] Array                         (                             [addtime] 1282622079                         )                 )         )   ………省略……… ) Matches中就是查询的结果了但是仿佛不是我们想要的数据比如titilecontent字段的内容就没有查询出来根据官方的说明是Sphinx并没有连接到MySQL去取数据只是根据它自己的索引内容进行计算因此如果想用Sphinx提供的API去取得我们想要的数据还必须以查询的结果为依据再次查询MySQL从而得到我们想要的数据。   查询结果中键值分别表示   2唯一主键   weight权重 attrs sql_attr_*中配置 至此搜索引擎算是完成一大半了剩下的大家可以自行完成。   比如   ?php $ids     array_keys($res[matches]); // 获取主键 $ids join(,, $ids); $query  mysql_query(SELECT * FROM post WHERE id IN ({$ids})); while($row mysql_fetch_assoc($query)) {     ..... }   Sphinx的更多配置程序的参数等大家可以查看Sphinx的文档。转载于:https://www.cnblogs.com/M-D-Luffy/p/4713165.html
http://www.pierceye.com/news/478025/

相关文章:

  • 网站架构设计师浙江省建设厅网站证件
  • 服务器和网站维护安康网站建设公司报价
  • 网站搭建课程标准asp.net做购物网站
  • 网站代码怎么放seo怎么做
  • 网站建设需求说明书怎么写新手php网站建设
  • 织梦做招聘网站中山那些网站公司
  • 网站开发工程师公司购物网站推广
  • 做的网站打不开产品网站建设必要性
  • 网站建设模板免费下载制作网站公司图片
  • 网站建设是一次性给钱还是什么pr模板免费下载网站
  • 大气物流公司网站源码建设家装网站
  • 网站后台关键词交流建设网站
  • 学院网站建设总结华北理工大学学科建设处网站
  • 简单的网站php开发教程用cms做的网站 的步骤
  • seo杭州seo快速排名利器
  • 谷歌不收录网站一个完整的短视频策划方案
  • 网页制作培训网站关于营销的最新的新闻
  • 免费查找资料的网站wordpress中文4.8
  • 凡科建设的网站如何中式建筑公司网站
  • 珠海网站建设品牌策划开发设计公司网站
  • 找别人做的网站怎样修改招聘app
  • 学校网站内容建设银行网站电脑上不去
  • 住建部工程建设标准网站上海室内设计事务所
  • 做外贸采购都是用什么网站网站重构方案
  • 企业网站做推广河南app开发
  • 海宁做网站的公司仿搜狐视频网站源码
  • 网站备案和不备案的上海制作网站公司网站
  • 网站建设专业介绍在线平面图设计
  • 临时工找工作网站做美缝手机网站不收录
  • 凡科建站怎么样网络推广网站培训班