超详细Memcached+LAMP搭建详解操作命令

简介

Memcached是一套高性能内存对象缓存系统,用于一些高负载的Web网站,主要作用是通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的响应速度、提高可扩展性。Memcached是典型的C/S架构,因此需要安装服务器端与客户端。服务器端是用C语言编写的,客户端可用任何语言来编写,如PHP、 Python、Perl等。为了提高性能,Memcached中保存的数据都存储在memcached内置的内存存储空间中,读取速度快。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。另外,缓存的数据量达到指定值或者过期之后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存。memcached本身是为缓存而设计的服务器,因此并没有过多考虑数据的永久性问题

工作原理

首先,Web客户端发出获取数据的请求到Web服务器的应用程序,应用程序调用Memcache客户端程序库接口,连接Memcached服务器,分为两种情况:
1.如果此时Web客户端所请求的数据在Memcached中已经缓存,则Memcached将数据返回给Web客户端,步骤为:1->2->5->6->7->8
2.如果Memcached没有缓存Web客户端所请求的数据,则Memcache客户端程序将请求转发给数据库服务器,数据库服务器将数据返回给Memcache客户端程序,然后返回给Web客户端,同时Memcache客户端程序将数据缓存到Memcached服务器,以备下次有客户端请求同样的数据,步骤分别为:1->2->3->4->7->8及4->5

实验环境

主机名称 操作系统 IP地址 主要软件
memcached CentOS_7.4_x86_64 192.168.100.71 libevent-2.1.8-stable;memcached-1.5.6
client CentOS_7.4_x86_64 192.168.100.73 LAMP架构相关软件

搭建步骤

一、服务器端安装Memcache

1、安装libevent

[[email protected] ~]# tar xvfz libevent-2.1.8-stable.tar.gz
[[email protected] ~]# cd libevent-2.1.8-stable/
[[email protected] libevent-2.1.8-stable]# ./configure --prefix=/usr/local/libevent
[[email protected] libevent-2.1.8-stable]# make && make install

2、安装Memcache

[[email protected] ~]# tar xvfz memcached-1.5.6.tar.gz
[[email protected] ~]# cd memcached-1.5.6/
[[email protected] memcached-1.5.6]# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/
[[email protected] memcached-1.5.6]# make && make install

3、优化路径

[[email protected] ~]# ln -s /usr/local/memcached/bin/* /usr/local/bin/

4、启动服务

[[email protected] ~]# memcached -d -m 32M -p 11211 -u root

#解析:
-d: 以守护进程的方式运行memcache
-m: 定义memcache分配的存储空间
-p: 指定端口号
-u: 指定运行用户

[[email protected] ~]# netstat -anpt | grep ‘11211‘

5、使用telnet进行本地测试

[[email protected] ~]# yum -y install telnet #安装telnet服务
[[email protected] ~]# telnet localhost 11211 #连接memcache

二、Mencache相关命令

1、Mencache存储命令

1).add命令[ add命令用于将value(数据值)存储在指定的key(键)中 ]

add new_key 0 900 5     #添加值
hello
STORED    #保存成功,输出STORED ;ERROR,在保存失败后输出。

解析:
new_key   #键值 key-value 结构中的 key,用于查找缓存值
0         #可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息
900       #在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
5         #在缓存中存储的字节数
hello     #存储的值(始终位于第二行)
delete new_key  #删除相应的数据
DELETED

2).set命令[ set命令用于将value(数据值)存储在指定的key(键)中。注意如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用 ]

add new_key 0 900 5    #添加数据
hello
STORED
set new_key 0 900 5    #更新数据
word!
STORED  
get new_key            #查看键对应的值,数据已经更新
VALUE new_key 0 5
word!
END
delete new_key         #删除相应的数据
DELETED

3).replace命令[ replace命令用于替换已存在的key(键)的value(数据值)。如果key不存在,则替换失败 ]

replace username 0 900 3
tom
NOT_STORED  #执行替换失败后输出,原因key不存在
add new_key 0 900 16
some_other_value
NOT_STORED  #执行替换失败后输出,原因key不存在
STORED
replace new_key 0 900 10  #替换数据
data_value
STORED
get new_key               #查看键对应的值,数据已经替换,并且存储的字节数也已经更改
VALUE new_key 0 10
data_value
END
delete new_key            #删除相应的数据
DELETED

4).append命令[ append命令用于向已存在key(键)的value(数据值)后面追加数据 ]

set runoob 0 900 9      #添加一条数据
memcached
STORED
append runoob 0 900 6   #对于键"runoob"追加了6个字节格式,并且添加字符串"&redis"
&redis
STORED
get runoob              #查询此数据
memcached&redis
END
delete runoob           #删除相应的数据
DELETED

5).prepend命令[ prepend命令用于向已存在key(键)的value(数据值)前面追加数据 ]

set runoob 0 900 9        #添加数据
memcached
STORED
prepend runoob 0 900 6    #在"runoob "键对应的值前面追加"redis&"
redis&
STORED
get runoob                #查询数据
VALUE runoob 0 15
redis&memcached
delete runoob             #删除相应的数据
DELETED

6).CAS命令[ CAS命令用于执行一个"检查并设置"的操作,它仅在当前客户端最后一次取值后,该key 对应的值没有被其他客户端修改的情况下, 才能够将值写入。检查是通过cas_token参数进行的, 这个参数是Memcach指定给已经存在的元素的一个唯一的64位值 ]

cas tp 0 900 9
ERROR            #缺少token
cas tp 0 900 9 2
memcached
NOT_FOUND           #键tp不存在
set tp 0 900 9             #添加数据
memcached
STORED
gets tp             #获取唯一令×××信息
VALUE tp 0 9 12     #令×××值为12
memcached
END
cas tp 0 900 5 12   #检查令×××值为"12",设置值
redis
STORED
#注意输出信息
STORED:   保存成功后输出
ERROR:    保存出错或语法错误
EXISTS:   在最后一次取值后另外一个用户也在更新该数据
NOT_FOUND:服务上不存在该键值
get tp              #再次查询数据
VALUE tp 0 5
redis
END

2、Mencache查找命令

1).get命令[ get命令获取存储在key(键)中的value(数据值),如果key不存在,则返回空 ]

set runoob 0 900 9  #添加一条数据
memcached
STORED 
get runoob          #查找键对应的值
VALUE runoob 0 9
memcached
END
delete runoob       #删除相应的数据
DELETED

2). gets命令[ gets命令获取带有CAS令×××存的value(数据值),如果key不存在,则返回空 ]

set runoob 0 900 9      #添加第一条数据
memcached
STORED
set test 0 900 5        #添加第二条数据
redis
STORED
gets runoob test        #查询数据
VALUE runoob 0 9 15     #"15"代表"runoob"键对应唯一令×××值
memcached
VALUE test 0 5 16       #"16"代表"test"键对应唯一令×××值
redis
END
delete runoob       #删除相应的数据
delete test      

3).delete命令[ delete命令用于删除已存在的key(键) ]

之前操作已经演示,略……

4).incr与decr命令[ incr与decr命令用于对已存在的 key(键) 的数字值进行自增或自减操作;incr与decr命令操作的数据必须是十进制的32位无符号整数 ]

set visitors 0 900 2    #添加一条数据
10
STORED
decr visitors 6               #将"visitors"键对应的值减去6
4
get visitors                      #减去6之后查看,结果为4
VALUE visitors 0 2
4
END
delete visitors      #删除相应数据
DELETED

3、Mencache统计命令

1).stats命令[ stats命令用于返回统计信息例如 PID(进程号)、版本号、连接数等 ]

stats
STAT pid 17274                    #memcache服务器进程ID
STAT uptime 17517                 #服务器已运行秒数
STAT time 1537471499              #服务器当前时间戳
STAT version 1.5.6                #服务版本
STAT pointer_size 64              #操作系统指针大小
STAT rusage_user 2.775518         #进程累计用户时间
STAT rusage_system 1.189507       #进程累计系统时间
STAT max_connections 1024         #最大连接数
STAT curr_connections 2           #当前连接数量
STAT total_connections 14         #服务运行以来连接总数
STAT connection_structures 4      #服务分配的连接结构数量
STAT cmd_get 26                   #get命令请求次数
STAT cmd_set 27                   #set命令请求次数
STAT cmd_flush 0                  #flush命令请求次数
STAT get_hits 17                  #get命令命中次数
STAT get_misses 9                 #get命令未命中次数
STAT delete_misses 0              #delete命令未命中次数
STAT delete_hits 8                #delete命令命中次数
STAT incr_misses 0                #incr命令未命中次数
STAT incr_hits 0                  #incr命令命中次数
STAT decr_misses 0                #decr命令未命中次数
STAT decr_hits 1                  #decr命令命中次数
STAT cas_misses 1                 #cas命令未命中次数
STAT cas_hits 0                   #cas命令命中次数
STAT cas_badval 6                 #使用擦拭次数
STAT auth_cmds 0                  #认证命令处理的次数
STAT auth_errors 0                #认证失败数目
STAT bytes_read 1415              #读取总字节数
STAT bytes_written 1110           #发送总字节数
STAT limit_maxbytes 33554432      #分配的内存总大小(字节)
STAT accepting_conns 1            #服务器是否达到过最大连接(0/1)
STAT listen_disabled_num 0        #失效的监听数
STAT threads 4                    #当前线程数
STAT conn_yields 0                #连接操作主动放弃数目
STAT hash_power_level 16          #当前存储占用的字节数
STAT curr_items 0                 #当前存储的数据总数
STAT total_items 19               #启动以来存储的数据总数
STAT evictions 0                  #LRU释放的对象数目
STAT reclaimed 6                  #已过期的数据条目来存储新数据的数目

2).stats items命令[ stats items命令用于显示各个slab中item的数目和存储时长(最后一次访问距离现在的秒数) ]

set runoob 0 900 9      #添加一条数据
memcached
STORED
stats items             #查看
STAT items:1:number 1
STAT items:1:number_hot 0
STAT items:1:number_warm 0
STAT items:1:number_cold 1
STAT items:1:age_hot 0
STAT items:1:age_warm 0
STAT items:1:age 6
STAT items:1:evicted 0
STAT items:1:evicted_nonzero 0
……
delete runoob          #删除相应数据
DELETED

3).stats slabs命令[ stats slabs命令用于显示各个slab的信息,包括chunk的大小、数目、使用情况等 ]

stats slabs
STAT 1:chunk_size 96
STAT 1:chunks_per_page 10922
STAT 1:total_pages 1
STAT 1:total_chunks 10922
STAT 1:used_chunks 1
STAT 1:free_chunks 10921
STAT 1:free_chunks_end 0
STAT 1:mem_requested 74
STAT 1:get_hits 17
STAT 1:cmd_set 28
STAT 1:delete_hits 8
……

4).stats sizes命令[ stats sizes命令用于显示所有item的大小和个数 ]

stats sizes
STAT 96 1   #item大小及个数

5).flush_all命令[ flush_all命令用于清理缓存中的所有键值对。该命令提供了一个可选参数time,用于在制定的时间后执行清理缓存操作 ]

set runoob 0 900 9  #添加一条数据
memcached
STORED
get runoob          #查询数据
VALUE runoob 0 9
memcached
END
flush_all           #清除缓存中所有键值对
OK
get runoob          #查询为空直接
END

三、客户端安装LAMP架构

1、安装httpd

1).解压相关源码包

[[email protected] ~]# tar xvfz apr-1.6.2.tar.gz
[[email protected] ~]# tar xvfz apr-util-1.6.0.tar.gz
[[email protected] ~]# tar xvfj httpd-2.4.29.tar.bz2
[[email protected] ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[[email protected] ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util/

2).安装相关依赖包

[[email protected] ~]# yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

3).安装httpd服务

[[email protected] ~]# cd httpd-2.4.29/
[[email protected] httpd-2.4.29]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
[[email protected] httpd-2.4.29]# make && make install

4).编辑主配置文件

[[email protected] ~]# vim /usr/local/httpd/conf/httpd.conf

ServerName www.bt.com:80      #编辑完全主机名
Listen 192.168.100.73:80             #编辑监听地址

5).添加系统服务

[[email protected] ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #新建启动脚本
[[email protected] ~]# vim /etc/init.d/httpd #编辑启动脚本

#  在第2行开始插入以下两行
# chkconfig: 35 85 21                   #35级别自动运行  第85个启动 第21个关闭
# description: Apache is a World Wide Web server        #描述信息    

[[email protected] ~]# chkconfig --add httpd #添加系统服务

6).优化路径

[[email protected] ~]# ln -s /usr/local/httpd/conf/httpd.conf /etc/ #优化配置文件路径
[[email protected] ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin/ #优化执行可执行命令路径

7).启动服务

[[email protected] ~]# systemctl daemon-reload #当添加新服务使用
[[email protected] ~]# systemctl start httpd.service
[[email protected] ~]# netstat -anpt | grep ‘:80‘

2、安装Mysql

1).安装相关工具包

[[email protected] ~]# yum -y install ncurses-devel autoconf cmake

2).安装mysql

[[email protected] ~]# tar xzvf mysql-5.6.26.tar.gz #解压
[[email protected] ~]# cd mysql-5.6.26
[[email protected] mysql-5.6.26]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DSYSCONFIDIR=/etc \
-DMYSQL_DATADIR=/home/mysql/

解析:
DCMAKE_INSTALL_PREFIX:mysql软件安装位置
DDEFAULT_CHARSET:默认字符集
DDEFAULT_COLLATION:默认字符校验
DWITH_EXTRA_CHARSETS:额外的编码,请使用ALL来编译
DMYSQL_DATADIR:数据目录
DMYSQL_DATADIR:配置文件路径

[[email protected] mysql-5.6.26]# make && make install #编译及编译安装

3).新建配置文件

[[email protected] ~]# cd /usr/local/mysql/
[[email protected] mysql]# cp support-files/my-default.cnf /etc/my.cnf

4).添加系统服务

[[email protected] mysql]# cp support-files/mysql.server /etc/init.d/mysqld #新建启动脚本
[[email protected] ~]# chmod 755 /etc/init.d/mysqld #修改文件权限
[[email protected] ~]# chkconfig --add /etc/init.d/mysqld #添加系统服务
[[email protected] ~]# chkconfig mysqld on #设置开机自启动

5).编辑系统环境变量

[[email protected] ~]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile #编辑系统环境变量
[[email protected] ~]# source /etc/profile #重新读取系统环境变量配置文件
[[email protected] ~]# echo $PATH

6).添加mysql进程用户

[[email protected] ~]# useradd -s /sbin/nologin mysql
[[email protected] ~]# chown -R mysql:mysql /usr/local/mysql/

7).初始化服务

[[email protected] ~]# /usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql

解析:
user:指定数据库管理员
basedir:指定mysql软件安装位置
datadir:指定mysql数据安装位置

8).编辑启动脚本

[[email protected] ~]# vim /etc/init.d/mysqld

basedir=/usr/local/mysql     #约第46行,指定数据库安装目录
datadir=/home/mysql          #约第47行,指定数据存放目录

9).启动服务

[[email protected] ~]# systemctl daemon-reload
[[email protected] ~]# systemctl start httpd.service
[[email protected] ~]# netstat -anpt | grep ‘:3306‘

10).初始化密码

[[email protected] ~]# mysqladmin -u root password "123"

3、安装php

1).安装相关依赖包

[[email protected] ~]# yum -y install \
gd \
libpng \
libpng-devel \
pcre \
pcre-devel \
libxml2-devel \
libjpeg-devel

2).安装php

[[email protected] ~]# tar xjvf php-5.6.11.tar.bz2
[[email protected] ~]# cd php-5.6.11
[[email protected] php-5.6.11]# ./configure \
--prefix=/usr/local/php5 \
--with-gd \
--with-zlib \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-config-file-path=/usr/local/php5 \
--enable-mbstring

[[email protected] php-5.6.11]# make && make install

3).新建配置文件

[[email protected] php-5.6.11]# cp php.ini-development /usr/local/php5/php.ini

4).优化路径

[[email protected] ~]# ln -s /usr/local/php5/bin/ /usr/local/bin/
[[email protected] ~]# ln -s /usr/local/php5/sbin/
/usr/local/sbin/

5).编辑httpd服务配置文件

[[email protected] ~]# vim /etc/httpd.conf

LoadModule php5_module        modules/libphp5.so   #约156行,检查此语句是否存在,如果不存在还需要重新安装mysql,如果还没有,直接重装apache

<IfModule dir_module>   #约255行
   DirectoryIndex index.php index.html   #添加index.php默认首页识别
</IfModule>

<IfModule mime_module>  #约370行标签内,添加以下两行,支持PHP后缀
   AddType application/x-httpd-php .php
   AddType application/x-httpd-php-source .phps
……

6).重启服务

[[email protected] ~]# systemctl restart httpd.service

4、测试

1).测试PHP网页能否正常显示

[[email protected] ~]# cd /usr/local/httpd/htdocs/ #进入站点
[[email protected] htdocs]# vim test1.php

<?php
phpinfo();
?>

2).测试PHP网页能访问MySQL服务器

[[email protected] ~]# mysql -u root -p123
[[email protected] ~]# cd /usr/local/httpd/htdocs/
[[email protected] htdocs]# vim test2.php

<?php
$link=mysql_connect(‘192.168.100.73‘,‘root‘,‘123‘);
if($link) echo "<h1>Welcome to MySQL</h1>";
else echo "Fail!!";
mysql_close();
?>

四、客户端安装Memcached

1、解压Memcache

[[email protected] ~]# tar xzvf memcache-2.2.7.tgz

2、用phpize命令将Memcache添加为PHP的一个模块

[[email protected] ~]# yum -y install autoconf #安装依赖包

[[email protected] ~]# cd memcache-2.2.7/
[[email protected] memcache-2.2.7]# /usr/local/php5/bin/phpize

3、安装Memcached

[[email protected] memcache-2.2.7]# ./configure --enable-memcache --with-php-config=/usr/local/php5/bin/php-config
[[email protected] memcache-2.2.7]# make && make install
Installing shared extensions: /usr/local/php5/lib/php/extensions/no-debug-zts-20131226/ #安装完成之后,会出现共享组件的位置

4、编辑php主配置文件

[[email protected] ~]# vim /usr/local/php5/php.ini

extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/" #734行,添加共享路径
extension = memcache.so                                                     #添加一行,将memcache模块添加进去

5、编写PHP测试代码调用Memcache程序接口来测试Memcached服务器与客户端协同工作是否正常

[[email protected] ~]# cd /usr/local/httpd/htdocs/ #进入站点
[[email protected] htdocs]# vim test3.php

<?php
$memcache = new Memcache();                      #创建memcache实例
$memcache->connect(‘192.168.100.71‘,11211);      #连接memcache服务器
$memcache->set(‘name‘,‘hello world‘,0,60);       #添加一条键值对数据
$result = $memcache->get(‘name‘);                #通过key获取相应的value值
unset($memcahe);                                 #销毁实例
echo $result;
?>

[[email protected] htdocs]# systemctl restart httpd.service #重启web服务

原文地址:http://blog.51cto.com/11905606/2280982

时间: 2024-11-08 22:35:56

超详细Memcached+LAMP搭建详解操作命令的相关文章

Lamp搭建详解

介绍linux系统下yum安装Apache+PHP+MySQL的方法. 首先创建本地源 Cd /media/RHEL_后面是挂载镜像的版本号 Ls 会查看到Packages repodata 两个文件夹 Mkdir  /home/repo   创建一个你喜欢存放东西的路径下创建一个repo的文件夹 Cp –R –f Packages  /home/repo Cp –R –f repodata  /home/repo  将两个文件夹的内容复制到这个文件夹中(过程可能很慢,但是正常现象毕竟这个rpm

超详细的Hadoop2配置详解

1. 集群环境Master 192.168.2.100Slave1 192.168.2.101Slave2 192.168.2.102 2. 下载安装包#Masterwget http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-2.8.4/hadoop-2.8.4.tar.gztar zxvf hadoop-2.8.4.tar.gz 3. 修改Hadoop配置文件#Mastercd hadoop-2.8.4/etc/hadoopvim ha

LAMP平台搭建详解

准备工作 安装编译工具 # yum -y install gcc # yum -y install gcc-c++ 如果系统之前已经安装有rpm包的mysql和apache,那么可以: #service httpd stop #service mysqld stop 确定rpm包安装的httpd和mysqld不能开机启动 #chkconfig –level 2345 mysqld/httpd stop 关闭SELINUX和防火墙,或者允许防火墙开放相关端口,apache 80端口,mysql 3

Windows GTK+ 环境搭建(详解)

来源:http://blog.sina.com.cn/s/blog_a6fb6cc901017ygy.html Windows GTK+ 环境搭建 最近要做界面的一些东西,但是对微软提供的类库MFC不是很熟悉,里面封装了大量的Windows API比较麻烦,然后就想着其他方式吧!Qt.GTK+原本想学学Qt的,Qt跨平台.文档也多点,使用也更广泛.但是Qt的插件一直没有下载下来,然后就先学习学习GTK+吧! 在网上搜了好多关于Windows GTK+环境搭建的方法,但是很多说的都不是很清楚,所以

Spring4.X + spring MVC + Mybatis3 零配置应用开发框架搭建详解(1) - 基本介绍

Spring4.X + spring MVC + Mybatis3 零配置应用开发框架搭建详解(1) - 基本介绍 spring集成 mybatis Spring4.x零配置框架搭建 两年前一直在做后台的纯Java开发,很少涉及web开发这块,最近换了个纯的互联网公司,需要做Web后台管理系统,之前都是用xml配置的项目,接触了公司Spring4.x的零配置项目,觉得非常有感觉,不仅仅配置简单,而且条理清晰,所以,这里把学习的内容记录下来,一来加深对这块技术的印象,另外准备做个简单的教程,如果给

Apache服务环境在Linux中搭建详解

Apache服务环境搭建详解: 本篇文章我介绍的是phpstudy集成工具,它将php.mysql及apache集成在一起,可以很方便的在不同服务环境间进行切换,比如:apache+php5.4切换为nginx+php5.4,另外,这个集成工具(windows版)提供了可视化的图形界面,以及提供了配置文件的快捷查找和网站域名的设置等,具体可到http://www.phpstudy.net网址查看详情.在这里,我介绍的是在Linux环境中怎么安装和配置apache+php+mysql(phpstu

centos7 zabbix搭建详解

大家好!应朋友要求,今天为大家献上centos7 zabbix的搭建详解话不多收先把今天需要的安装包献上https://pan.baidu.com/s/1hIbJUTYnPSLlhGpEGCkWQA无需密码永久有效!! 为了方便我们今天就用一台虚机,用一台虚拟机充当监控服务器和被监控服务器 第一步!!!关闭并永久关闭防火墙和SELinux 第二步!!!部署LAMP环境 应为我们的haHP写运行在Linux环境下的Apache下,调用的是MySQL数据库所以必须先部署环境 yum -y insta

LAMP PHP 详解

目录 LAMP PHP 详解 LAMP 请求流程与原理 PHP 简介 PHP Zend Engine Opcode php 配置详解 php 加速器 部署LAMP 使用 php 连接 mysql 最基本的部署LAMP 部署PhpMyAdmin 部署wordpress 编译安装php-xcache访问加速器 LAMP PHP 详解 LAMP是一种生产环境中常用的web服务组合模型. LAM(M)P所表达的组成方式 L: linux A: apache (httpd) M: mysql, maria

lucene、lucene.NET详细使用与优化详解

lucene.lucene.NET详细使用与优化详解 2010-02-01 13:51:11 分类: Linux 1 lucene简介1.1 什么是luceneLucene是一个全文搜索框架,而不是应用产品.因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品. 1.2 lucene能做什么要 回答这个问题,先要了解lucene的本质.实际上lucene的功能很单一,说到底,就是你给它若干个字符串,然后它为你提供一个全文搜