memcacheQ 配置
MySQL中的查询缓存使用方法
MySQL中的查询缓存使用方法MySQL是一种最常用的关系型数据库管理系统,广泛应用于各个领域。
在日常的开发中,查询是数据库的常见操作之一。
为了提高查询效率,MySQL引入了查询缓存(Query Cache)的概念。
本文将介绍MySQL中的查询缓存使用方法,帮助读者更好地利用这一特性。
一、什么是查询缓存查询缓存是MySQL中的一种缓存机制,用于缓存查询结果,以提高同样查询的响应速度。
当MySQL收到一个查询请求时,它会先检查查询缓存中是否已经有了相同的查询语句和参数。
如果存在,则直接从缓存中返回结果,而不需要实际执行查询操作。
如果不存在,则执行查询并将结果存入缓存,以备后续使用。
二、查询缓存的使用在MySQL中,查询缓存是默认开启的。
可以通过查看配置文件中的query_cache_type选项来确认查询缓存是否启用。
如果查询缓存未启用,可以在配置文件中进行设置。
1. 配置查询缓存查询缓存的相关配置项包括query_cache_type、query_cache_size和query_cache_limit。
其中,query_cache_type用于启用或禁用查询缓存的功能,具体取值为OFF、ON和DEMAND。
query_cache_size用于设置查询缓存的大小,表示缓存可用于存储查询结果的总内存大小。
query_cache_limit用于设置单个查询结果的最大缓存大小,超过这个值将不会被缓存。
例如,要启用查询缓存并设置缓存大小为100MB,可以在配置文件中添加如下配置:query_cache_type = ONquery_cache_size = 100Mquery_cache_limit = 1M2. 查询缓存的命中与失效当查询缓存启用时,MySQL在执行查询之前会先检查是否有相同的查询已经被缓存。
如果有,就直接返回缓存结果;如果没有,就执行查询并将结果存入缓存。
但是,并非所有的查询都适合使用查询缓存。
如何优化MySQL运行时的内存占用
如何优化MySQL运行时的内存占用在当今的互联网时代,MySQL作为一种使用广泛的关系型数据库管理系统,在各种应用场景中扮演着重要的角色。
然而,MySQL在处理大规模数据和高并发访问时,常常面临内存占用过高的问题,这会导致系统性能下降、响应时间延长等不良影响。
因此,对MySQL运行时的内存占用进行优化,对于提升数据库性能至关重要。
接下来,本文将从优化查询、调整缓冲池、优化索引等方面介绍如何有效减少MySQL的内存占用。
1. 优化查询查询是MySQL的核心操作,也是导致内存占用过高的一个常见原因。
在实际应用中,可以通过以下几种方式来优化查询操作,从而减少内存的使用量:1.1 控制返回结果集的大小:合理使用LIMIT和OFFSET关键字,减少一次查询返回的记录数量,从而减少内存的占用。
1.2 设置合适的索引:索引是提高查询效率的重要手段。
通过在适当的列上创建索引,可以减少MySQL扫描整个表的开销,从而减少内存占用。
1.3 避免频繁的子查询:子查询是耗费内存的操作,尽可能地避免在查询过程中频繁使用子查询。
2. 调整缓冲池MySQL的缓冲池是用于缓存数据库中的数据和索引的关键组件,对于减少I/O 操作、提高查询效率非常重要。
合理地调整缓冲池的大小,可以减少MySQL的内存占用。
2.1 InnoDB的缓冲池:对于使用InnoDB作为存储引擎的数据库,可以通过调整innodb_buffer_pool_size参数来控制缓冲池的大小。
一般来说,将缓冲池的大小设置为系统可用内存的70-80%是比较合理的选择。
2.2 MyISAM的缓冲池:对于使用MyISAM作为存储引擎的数据库,可以通过调整key_buffer_size参数来控制缓冲池的大小。
同样地,将缓冲池的大小设置为系统可用内存的70-80%是比较合理的选择。
3. 优化索引索引是提高查询性能的重要手段,同时也会占用一定的内存空间。
如果索引设计不合理或者过多,将导致内存占用过高。
memcached集成spring配置及使用
xmlns:context="/schema/context"
xmlns:jaxws="/jaxws"
</property>
<propertyname="nagle">
<value>${memcache.nagle}</value>源自</property>
<propertyname="socketTO">
<value>${memcache.socketTO}</value>
</property>
</bean>
this.memCachedClient = memCachedClient;
}
public String getMemCachedTest(String str) {
//从缓存中取数据
String value = (String) memCachedClient.get(str);
// memCachedClient.flushAll();
return string;
}
}
<constructor-arg>
<value>memCachedPool</value>
</constructor-arg>
<propertyname="servers">
<list>
<value>${memcache.server}</value>
memcached 手册
memcached 手册Memcached是一个高性能的开源内存对象缓存系统,被广泛地应用于提升网站和应用程序性能。
该手册将介绍Memcached的基本概念、安装配置、常用命令以及最佳实践等关键内容,旨在帮助读者快速了解和使用Memcached。
一、Memcached概述Memcached可以看作是一个分布式的缓存系统,它将数据缓存在内存中,并提供了简单的键值对存取接口。
相比于传统的关系型数据库,Memcached具有更快的读写速度和更高的并发能力,因为它直接操作内存而避免了磁盘I/O。
此外,Memcached采用了多台服务器的分布式架构,能够提供横向扩展的能力。
二、安装与配置1.下载和安装:Memcached可以从官方网站或其他镜像站点下载安装包,并根据相应平台的指引进行安装。
安装完成后,可以通过运行"memcached"命令来启动Memcached服务。
2.配置文件:Memcached的默认配置文件是"memcached.conf",可以通过修改该文件中的参数来调整Memcached的行为。
主要的配置项包括监听端口、最大连接数、内存容量等。
三、常用命令1.存储数据:用"set"命令可以将键值对存入Memcached中,例如:"set key 0 3600 5"表示存储一个key为"key",值为"0",并设置过期时间为3600秒。
如果要存储的值超出了内存容量限制,旧的数据将会被替换。
2.获取数据:用"get"命令可以从Memcached中获取指定键对应的值,例如:"get key"可以获取到之前存储的值。
如果该键不存在,返回结果将是"END"。
3.删除数据:用"delete"命令可以从Memcached中删除指定键对应的值,例如:"delete key"可以删除之前存储的值。
MQCache秒开缓存系统介绍V
一般只有统计数据,无法验证 有统计和文件记录,效果可验证
PK结果 秒开胜出 秒开胜出 秒开胜出 秒开胜出 秒开胜出 秒开胜出 秒开胜出 秒开胜出 秒开胜出 秒开胜出
目录
缓存产品概述 秒开缓存特色 版本功能介绍 产品选型及部署 适用用户及效果
专业版VS通用版
对比项目 缓存命中机制
典型产品 • 秒开缓存专业版 • Fikker缓存
缓存原理之二:重定向缓存
用户端
缓存服务器
用户向远端服务器发起请求包
WEB服务器
有数据 : 重定向命中 缓存记录链接
没数据 : 用户请求通过正常路由从远程获取
闲时根据链接下载资 源
优点
• 缓存对上网带宽无要求 • 可安排在非繁忙时段下载 • 缓存对现有网络影响小
教育行业
减少出口带宽,减轻骨干网压力
高校也是在线视频/下载/手机应用等大流量业务使用频 率较高的用户,如果部署秒开缓存系统,常用流量会引 导到本地,减少出口带宽,减轻骨干网压力。
访问加速 提高用户满意度
用户就相当于在本地看视频,本地下载,速度快,体 验好,用户自然满意。
图表分析 为科学管理网络提供依据
出。
用
• 三级缓存,全面加
户
速。
Internet
• 双重机制,命中率
高。
• 图表展缓示存,外可视管
理。 网资源
Cache 缓存系统
• 效果曲线,实时监 重测复。流量从缓存 系• 统效获果取明,显节,省性价比
外高网。流量,上网
加速。
缓存原理之一:HTTP代理缓存
用户端
缓存服务器
用户发起DNS请求
WEB服务器
memcached参数
memcached参数Memcached是一种高性能的分布式内存对象缓存系统,常用于提高Web应用程序的性能和扩展性。
Memcached的设计目标是提供一个简单、快速、可扩展的缓存解决方案,而其参数配置则对其性能和稳定性至关重要。
以下是一些常见的Memcached参数及其作用:2. -U,--udp:启用UDP监听功能。
默认情况下,Memcached使用TCP进行通信,但也可以选择启用UDP。
使用UDP可以提高性能,但同时也可能会导致数据丢失。
3. -l,--listen:指定绑定的IP地址。
默认情况下,Memcached会绑定到所有可用的IP地址上,但可以通过此参数来指定要绑定的特定IP地址。
4. -u,--user:指定运行Memcached进程的用户。
可以使用此参数来提高服务器的安全性,限制只有指定用户才能运行Memcached。
5. -m,--memory:指定Memcached使用的内存大小(以MB为单位)。
这个参数非常重要,它决定了可以缓存的对象数量和大小。
应根据预期的负载和可用内存来调整此参数。
6. -c,--connections:指定Memcached服务器能够处理的最大并发连接数。
默认情况下,这个值是1024,但在高并发情况下,可能需要增加这个值来处理更多的连接。
7. -t,--threads:指定Memcached使用的线程数量。
默认情况下,Memcached会根据可用的处理器核心数量来自动配置线程数,但也可以通过此参数来手动设置线程数量。
9. -R,--max-reqs-per-event:指定每个事件处理器循环中处理的最大请求数。
默认情况下,Memcached每次处理一个请求,但这个参数可以用来限制每个事件处理器循环中处理的请求数,以提高其他连接的响应速度。
以上是一些常用的Memcached参数,通过对这些参数的配置,可以根据实际需求来优化Memcached的性能和稳定性。
MySQL中的查询缓存和性能调优
MySQL中的查询缓存和性能调优导语:MySQL是一个开源的关系型数据库管理系统,其被广泛应用于各种应用程序中。
在实际应用中,如何优化MySQL的性能是一个非常重要的问题。
本文将重点探讨MySQL中的查询缓存以及如何进行性能调优。
一、查询缓存的原理和工作机制查询缓存是MySQL中的一个重要功能,它可以将查询结果缓存起来,以提高查询的执行效率。
当执行一个查询语句时,MySQL会先检查查询缓存,如果之前已经执行过相同的查询,并且结果没有改变,那么就直接返回缓存的结果,而不再执行实际的查询操作。
这种机制可以大大减少数据库的负载,提高系统的响应速度。
查询缓存的工作机制如下:当一个查询语句执行完毕后,MySQL会将查询语句作为key,查询结果作为value,存入查询缓存中。
当下次执行相同的查询语句时,MySQL会根据查询语句在缓存中查找对应的结果,并返回给用户。
但是需要注意的是,如果发生了对表的更新操作,那么与该表相关的所有查询缓存都会被清除,以保证查询结果的一致性。
然而,查询缓存也存在一些问题。
首先,查询缓存的粒度是基于语句的完整性的,也就是说,只有当两个查询语句完全一样才能共享查询缓存。
如果查询语句中有一些参数或者变量,那么即使查询语句相同,也无法使用查询缓存。
其次,当数据库中的数据发生变化时,查询缓存需要被更新,这会带来一定的性能开销。
因此,在实际应用中,我们需要根据具体情况来决定是否启用查询缓存,并进行适当的配置。
二、优化查询缓存的配置MySQL中的查询缓存是通过两个参数进行配置的:query_cache_type和query_cache_size。
前者用来控制是否启用查询缓存,后者用来指定查询缓存的大小。
首先,我们需要选择合适的query_cache_type。
MySQL提供了三种查询缓存的状态:OFF、ON和DEMAND。
OFF表示关闭查询缓存,ON表示始终开启查询缓存,DEMAND表示根据查询语句的特性自动选择是否开启查询缓存。
MySQL中的内存优化和缓存配置技巧
MySQL中的内存优化和缓存配置技巧MySQL是一种常用的关系型数据库管理系统,被广泛应用于各种网站和应用程序中。
MySQL的性能对于网站和应用程序的响应速度和用户体验至关重要,而内存优化和缓存配置则是提升MySQL性能的关键因素之一。
本文将介绍MySQL 中的内存优化和缓存配置技巧,帮助读者更好地理解和应用这些技术。
一、MySQL内存优化技巧MySQL中的内存优化可以通过调整和配置不同的内存参数来实现。
以下是一些常用的内存优化技巧:1. 增加innodb_buffer_pool_size: InnoDB存储引擎是MySQL中最常用的存储引擎之一,它通过使用内存缓存数据来提高性能。
通过增加innodb_buffer_pool_size参数的值可以提高InnoDB的内存缓存空间,从而加快查询速度。
但需要注意的是,设置过大的值可能导致系统内存不足,反而降低性能。
2. 控制sort_buffer_size和join_buffer_size:sort_buffer_size和join_buffer_size 参数用于控制排序和连接时的内存缓冲区大小。
合理设置这两个参数的值可以提升排序和连接操作的性能,避免使用临时文件进行排序和连接,从而提高查询效率。
3. 调整max_connections:max_connections参数用于控制数据库同时连接的最大数量。
合理设置此参数的值可以避免因过多的连接而导致内存消耗过大,从而提高数据库性能。
但是需要权衡系统资源和并发连接数的需求,避免设置过大导致系统资源不足。
4. 配置tmp_table_size和max_heap_table_size:tmp_table_size和max_heap_table_size参数用于控制临时表的内存缓存大小。
临时表在排序和分组操作中经常被使用,通过增加这两个参数的值可以减少使用磁盘临时表的频率,提高性能。
二、MySQL缓存配置技巧MySQL提供了多种缓存机制来提升查询效率和性能。
memcache 用法
memcache 用法摘要:1.简介2.Memcache的安装与配置3.Memcache的使用方法4.Memcache的数据类型5.Memcache的应用场景6.Memcache的优缺点7.总结正文:Memcache是一款高性能的分布式内存对象缓存系统,主要用于提高网站访问速度和减轻服务器负载。
它通过将热点数据存储在内存中,以减少对数据库的访问次数,从而提高网站性能。
1.简介Memcache是一个高性能的分布式内存对象缓存系统,主要用于提高网站访问速度和减轻服务器负载。
它通过将热点数据存储在内存中,以减少对数据库的访问次数,从而提高网站性能。
Memcache支持多种数据类型,包括字符串、整数、浮点数等。
2.Memcache的安装与配置要使用Memcache,首先需要在服务器上安装Memcache服务端。
安装完成后,需要对Memcache进行配置,包括设置内存大小、连接数等参数。
配置完成后,启动Memcache服务。
3.Memcache的使用方法Memcache的使用方法主要包括以下几个步骤:(1)连接Memcache服务器:使用PHP的Memcache扩展库,通过`memcache_connect()`函数连接到Memcache服务器。
(2)设置缓存数据:使用`memcache_set()`函数将数据存储到Memcache中。
(3)获取缓存数据:使用`memcache_get()`函数从Memcache中获取数据。
(4)删除缓存数据:使用`memcache_delete()`函数从Memcache中删除数据。
(5)清空缓存:使用`memcache_clear_cache()`函数清空Memcache 中的所有数据。
4.Memcache的数据类型Memcache支持多种数据类型,包括字符串、整数、浮点数等。
此外,Memcache还支持数据结构,如数组、链表等。
5.Memcache的应用场景Memcache主要应用于以下场景:(1)缓存数据库查询结果:将经常访问的数据从数据库中取出,存储到Memcache中,以减少对数据库的访问次数。
Windows下的Memcache安装与配置
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
Windows下的Memcache安装与配置
1.
很多phper不知道如何在Windows下搭建Memcache的开发调试环境,最近个人也在研究Memcache,记录下自己安装搭建的过程。
其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家。
Win32版的memcached是系统服务,要双开就必须安装两个服务了
改文件名的方法没用,只好暴力地改注册表了,步骤如下
1、在CMD里运行 C:\Memcached\Memcached.exe -d install
2、打开注册表编辑器,定位到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server
把目录名字(memcached Server)改成“Memcached Session Service"。
键DisplayName的值也改成 “Memcached Session Service"。
键ImagePath 的值改成 "C:\memcached\memcached.exe" -p 11211 -m 8 -d runservice
memcached 参数
Memcached 是一个高性能的分布式内存对象缓存系统,它可以用于加速Web 应用程序。
下面是一些常见的Memcached 参数:
1. -m <num>:所有slab 类可用内存的上限,以MB 为单位。
默认值为64MB。
2. -M:内存用光时报错。
3. -p <num>:指定Memcached 监听的TCP 端口号。
默认值为11211。
4. -U <num>:指定Memcached 监听的UDP 端口号。
默认值为0,表示关闭UDP 监听。
5. -s <file>:指定Memcached 监听的UNIX 套接字文件名。
禁用网络支持。
6. -a <num>:UNIX 套接字访问掩码,以八进制表示。
默认值为700。
7. -A:启用ASCII 格式的"shutdown" 命令。
8. -l <ip_addr>:指定Memcached 监听的IP 地址。
默认值为INADDR_ANY,表示绑定所有可用IP 地址。
9. -D <dir>:指定Memcached 的数据目录。
10. -q:关闭日志输出。
这些是Memcached 的一些常见参数,您可以根据需要进行配置。
请注意,Memcached 还提供了许多其他选项和功能,您可以通过运行man memcached 命令查看完整的命令行手册来了解更多信息。
如何优化MySQL的内存配置
如何优化MySQL的内存配置优化MySQL的内存配置是提高数据库性能的关键步骤之一。
MySQL作为最受欢迎的关系型数据库管理系统之一,广泛应用于各种规模的应用程序中,因此,对其进行合理配置,可以大大提升数据库的性能和稳定性。
MySQL的内存配置主要包括缓存管理和内存参数调整两个方面。
下面,将分别从这两个方面来探讨如何优化MySQL的内存配置。
一、缓存管理1. 缓冲池(Buffer Pool)缓冲池是MySQL中最重要的缓存部分,主要负责存储数据库中的索引和数据页。
优化缓冲池的配置可以显著提升数据库的读取性能。
以下是几个优化建议:- 根据可用内存的大小来配置缓冲池的大小。
通常情况下,建议将缓冲池设置为可用内存的70-80%。
这可以通过修改f文件中的innodb_buffer_pool_size 参数来实现。
- 如果系统中存在大量的写操作并且内存有限,可以适当减小缓冲池的大小,以腾出更多内存给其他需要的操作。
2. 查询缓存(Query Cache)查询缓存可以缓存查询结果,以减少重复查询的开销。
然而,如果大量的更新操作,会导致查询缓存的失效率较高,因此在某些情况下,禁用查询缓存可以提高性能。
以下是几个优化建议:- 根据应用程序的特性来决定是否启用查询缓存。
如果应用程序中大部分查询是静态的,可以考虑启用查询缓存,否则,禁用查询缓存。
- 涉及到更新操作的表,应该禁用查询缓存。
可以使用SQL语句"SET GLOBAL query_cache_size = 0;"来禁用查询缓存。
此外,在f文件中设置query_cache_type参数为0。
3. 表缓存(Table Cache)表缓存用于存储MySQL中打开的表的定义信息。
优化表缓存的配置可以提升一些查询的性能。
以下是几个优化建议:- 根据系统中同时打开的表的数量来决定表缓存的大小。
可以通过修改f文件中的table_open_cache参数来设置表缓存的大小。
Memcached 基础
memcdump --servers=IP地址 memccat --servers=IP地址 key
libmemcached-tools上传文件
memccp --servers=IP地址 filename memcat --servers= IP地址 filename
Memcached监控
使用telnet连接memcached后 ,使用watch fetchers启动监控。
libmemcached-tools介绍
libmemcached-tools是一款用来自动化测试Memcached服务的工具套件。
安装:apt install libmemcached-tools
libmemcached-tools获取stat信息
memcstat --servers=IP地址
libmemcached-tools榨取数据
Memcached探测
启动memcached服务之后,系统中分配的11211处于监听等待连接状态。可以使用telnet、 nmap等工具对其进行探测。 telnet IP地址 11211
nmap -p 11211 -sV IP地址
Memcached数据榨取的基础
memcached缺乏认证以及安全管制,这代表应该将memcached服务器放置在防火墙后。因为 没有身份认证,所以可以直接连接并执行命令。
nc 连接memcached(11211端口) nc IP地址 11211
nc榨取 Memcached数据
连接之后,可以使用memcached中的命令(https:///memcached/memcached/wiki)。
例如: version 获取版本信息 stats 返回统计信息例如 PID(进程号)、版本号、连接数 stats slabs 返回各个slab的信息,包括chunk的大小、数目、使用情况等。 stats items 返回各个 slab 中 item 的数目和存储时长(最后一次访问距离现在的秒数)。 stats cachedump 1 0 提取slab 1所有的key
Linuxnginxphpmysqlmemcache效劳器安装,配置与优化
Linux wap game效劳器安装与配置(author: yubingxing)一、预备安装一、下载软件:以上是需要下载并安装的软件,最新版本请自行从Google搜索下载。
二、解紧缩有紧缩包利用tar zxvf 和tar jxvf 来解紧缩。
二、安装步骤1、检查网络配置:更改/etc/sysconfig/network-script/ifcfg-eth0文件来实现更改网卡工作参数。
其中eth0代表要更改的是系统的第一块网卡,假设是更改的是系统的其他网卡请自行选择要更改的文件。
例如:# Broadcom Corporation NetXtreme II BCM5709 Gigabit EthernetDEVICE=eth0BOOTPROTO=noneHWADDR=00:24:E8:60:47:67ONBOOT=yesNETMASK=修改完毕保留后利用# ifconfig eth0 down 或ifdown eth0,停止eth0接口# ifconfig eth0 up 或ifup eth0,开启eth0接口来从头更新网络配置。
更改主机名需要修改以下两个文件,别离是/etc/sysconfig/network和/etc/hosts,利用vi/etc/sysconfig/network打开network文件,将HOSTNAME一项的值改成你想要更改成的主机名,保留退出后利用vi /etc/hosts打开hosts文件,在文件末尾添加<你的Linux主机IP> 你想要更改成的主机名,注意IP地址和主机名之间必需用空格隔开,而且在原文件中localhost一行的一行前面添加你想要修改成的主机名。
注意:你想要修改成的主机名和之间必需有至少一个空格。
完成编辑后保留退出。
注意这两个文件中的三处的主机名必需一致。
2、检查防火墙配置:设置防火墙vim /etc/sysconfig/iptables重启防火墙/etc/iptables restart查看防火墙/etc/iptables status配置例如:# Firewall configuration written by system-config-securitylevel# Manual customization of this file is not recommended.*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]:RH-Firewall-1-INPUT - [0:0]-A INPUT -j RH-Firewall-1-INPUT-A FORWARD -j RH-Firewall-1-INPUT-A RH-Firewall-1-INPUT -i lo -j ACCEPT-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT-A RH-Firewall-1-INPUT -p udp --dport 5353 -d -j ACCEPT-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3389 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibitedCOMMIT3、设置时刻:tzselect选择Asia/Shanghaicp /usr/share/zoneinfo/Asia/Shanghai /etc/localtimevim /etc/sysconfig/clock 修改ZONE="Asia/Shanghai" UTC=false ARC=falsentpdate --systohc4、设置默许字符集:修改/etc/sysconfig/i18n:LANG=""SUPPORTED="en_US:en:"SYSFONT="latarcyrheb-sun16"修改/etc/:加入export LANG=uc_EN5、安装MySQL:成立用户:groupadd mysqluseradd –g mysql mysql安装:cd mysql-5.4.3-beta./configure --prefix=/usr/local/mysql –with-extra-charsets=utf8 –with-plugins=all makemake install配置:cp support-files/ /etc/scripts/mysql_install_dbcp support-files/ /etc/mysqldchmod 750 /etc/mysqldchmod –R 750 /usr/local/mysqlchgrp –R mysql /usr/local/mysql/varcp /usr/local/mysql/libexec/mysqld /usr/local/mysql/libexec/启动效劳:/etc/mysqld start设置root密码:mysqladmin –uroot password “root147258369”cp /usr/local/mysql/include/mysql/ /usr/local/mysql/设置开机自启动:vim /etc/在最后面加上/etc/mysqld start1、安装libevent:cd libevent-1.4.12-stable./configure –prefix=/usr/ && make && make install2、安装memcached:cd memcached-1.4.2./configure –prefix=/usr/local/memcached –with-libevent=/usr/ && make && make install启动效劳:/usr/local/memcached/bin/memcached –l –d –p 10000 –u root –m 256设置开机启动,在/etc/中加入上面这行编写/etc/脚本:vim /etc/memcached内容如下:#!/bin/bashMEMCACHED=/usr/local/memcached/bin/memcacheRETVAL=0case AVG"$1" inAVGstart)echo "Starting memcached ..."$ MEMCACHED–l –d –p 10000 –u root –m 256RETVAL=$?;;AVGstop)echo "Stopping memcached ..."killall -QUIT memcachedRETVAL=$?;;AVGrestart)echo "Restarting memcached ..."killall -HUP memcachedRETVAL=$?;;AVG)$ MEMCACHEDRETVAL=$?;;*)echo "Usage: memcache {start|stop|restart}"exit 1;;esac保留退出chmod 700 /etc/memcache6、安装zlibcd zlib-1.2.3./configure && make && make install7、安装jpeg6成立目录:mkdir -p /usr/local/jpeg6mkdir -p /usr/local/jpeg6/binmkdir -p /usr/local/jpeg6/libmkdir -p /usr/local/jpeg6/includemkdir -p /usr/local/jpeg6/manmkdir -p /usr/local/jpeg6/man1mkdir -p /usr/local/jpeg6/man/man1cd jpeg-7/./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static make && make install8、安装libpngcd libpng-1.2.41beta04cp scripts/ makefilemake && make install9、安装freetypecd freetype-2.1.10./configure –prefix=/usr/local/freetype && make && make install 10、安装gettextcd./configure –prefix=/usrcp /usr/lib/libattr.* /lib/makemake install11、安装gd2cd gd-2.0.36RC1./configure –prefix=/usr/local/gd –with-jpeg=/usr/local/jpeg6/ --with-png –with-zlib –with-freetype=/usr/local/freetypemake && make install12、安装libiconvcd libiconv-1.13.1./configure –prefix=/usr/local/iconv && make && make install13、安装libmcryptcd libmcrypt-2.5.7./configure && make && make install/sbin/ldconfigcd libltdl/./configure –enable-ltdl-installmakemake install14、ln -s /usr/local/lib/ /usr/lib/15、ln -s /usr/local/lib/ /usr/lib/16、ln -s /usr/local/lib/ /usr/lib/17、ln -s /usr/local/lib/.4.4.8 /usr/lib/18、ln -s /usr/local/lib/ /usr/lib/19、ln -s /usr/local/lib/ /usr/lib/20、ln-s /usr/local/lib/ /usr/lib/ln -s /usr/local/lib/ /usr/lib/ln -s /usr/local/lib/ /usr/lib/安装mhashcd mhash./configure && make && make install21、安装mcryptcd mcrypt-2.6.8/sbin/ldconfig./configure && make && make install22、安装libexpatcd expat-2.0.1./configure --prefix=/usr/local/expatmake && make install23、安装libxml2cd libxml2-2.7.6./configure --prefix=/usr/local/libxml2 && make && make install24、安装libxslt(没必要安装该扩展库)cd libxslt-1.1.26./configure --prefix=/usr/local/libxslt –with-libxml-prefix=/usr/local/libxml2 make && make install25、安装php添加php-fpm补丁,使支持php-fastcgi和fpm创建cgi进程。
centos7下memcached做tomcat集群配置
1.yum 安装memcachedyum clean allyum -y updateyum -y install memcached2.Memcached 运行memcached -h//查看考号修改配置vim /etc/sysconfig/memcached内容如下:PORT=”11211″USER=”memcached”MAXCONN=”1024″CACHESIZE=”64″OPTIONS=”"可以修改端口,用户和最大内存,缓存大小//重启,启动,开机启动,状态,关闭systemctl restart memcachedsystemctl start memcachedsystemctl enable memcachedsystemctl status memcachedsystemctl stop memcached下载memcached所需的依赖包(由于每人环境版本可能不同,所以这里给出大部分环境通用的包,在网上搜索均有下载地址)asm-3.2.jarjavolution-5.4.3.1.jarkryo-1.04.jarkryo-serializers-0.8.jarmemcached-session-manager-1.6.3.jarmemcached-session-manager-tc7-1.6.3.jarminlog-1.2.jarmsm-javolution-serializer-1.6.3.jarmsm-kryo-serializer-1.6.3.jarmsm-xstream-serializer-1.6.3.jarreflectasm-0.9.jarspymemcached-2.8.4.jar将memcached依赖包放在tomcat的lib文件夹下在tomcat中的context.xml里,在<Context>标签内填写<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"memcachedNodes="n1:127.0.0.1:11211 n2:127.0.0.1:11311"lockingMode="auto"sticky="false"requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"sessionBackupAsync= "false"sessionBackupTimeout= "100"transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"/>。
在Windows平台下安装与配置Memcached的方法分享
在Windows平台下安装与配置Memcached的⽅法分享1、解压到指定⽬录,如:C:\Memcached\memcached-win32-1.4.4-14。
2、⽤cmd打开命令窗⼝,转到解压的⽬录,输⼊ “memcached.exe -d install”。
3、打开控制⾯板,打开服务,可以看到memcached已经在上⾯可,如果没有启动,则⼿动启动⼀下。
4、使⽤telnet命令验证缓存服务器是否可⽤。
开始什么都不显⽰,回车后输⼊命令 stats 查看统计信息,如下图,说明服务器运作正常。
1、以上的安装和启动都是在默认环境下进⾏的,在安装时可设置如下参数:-p 监听的端⼝-l 连接的IP地址, 默认是本机-d start 启动memcached服务-d restart 重起memcached服务-d stop|shutdown 关闭正在运⾏的memcached服务-d install 安装memcached服务-d uninstall 卸载memcached服务-u 以的⾝份运⾏ (仅在以root运⾏的时候有效)-m 最⼤内存使⽤,单位MB。
默认64MB-M 内存耗尽时返回错误,⽽不是删除项-c 最⼤同时连接数,默认是1024-f 块⼤⼩增长因⼦,默认是1.25-n 最⼩分配空间,key+value+flags默认是48-h 显⽰帮助如:“memcached -d install -l 127.0.0.1 -m 1024 -c2048”。
2、如果在安装时没有添加参数,可通过修改注册表信息进⾏设置,打开注册表,找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached在其中有⼀个“ImagePath”项,值为:"C:\Memcached\memcached-win32-1.4.4-14\memcached.exe" -d runservice在后⾯加上“-m 1024 -c2048”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
memcacheQ 配置
什么是memcacheQ ?
memcacheQ是一个基于memcache协议、BDB持久数据存储、高性能轻量级队列服务程序。
特点是:
1.简单高效,基于memcache协议,这意味着只要客户端支持memcache协议即可使用。
2.队列数据存储于BDB,持久保存。
3.并发性能好。
4.支持多条队列。
并发量较的web环境,特别是数据库写入操作过多的情景,使用队列可大大缓解因并发问题造成的数据库锁死问题。
生产环境中使用效果非常好。
先决条件:
memcacheQ依赖于libevent,libevent-devel和BDB (BerkleyDB)
1.先检查libevent, libevent-devel是否已经安装:
rpm -qa|grep libevent
输出中必须包含libevent, libevent-deve, 如果缺失,使用以下命令安装:
yum install libevent
yum install libevent-devel
安装完毕再复查之:rpm -qa|grep libevent, 确保安装正确。
注意事项:libevent, libevent-devel优先使用yum安装源,光盘镜像中的rpm包安装,这样稳定性和兼容性可得到保证,网上流传的使用源码安装libevent的方法会有问题,因为很可能系统已经安装libevent, 再使用源码安装,必然导致冲突,造成意外问题,所以一定要使用上述命令检查系统是否已经安装相应的库。
2.安装BerkleyDB
cd /usr/local/src
wget http://219.239.89.57/deploy/db-5.2.28.tar.gz
tar zxvf db-5.2.28.tar.gz
cd db-5.2.28
cd build_unix
../dist/configure
make
make install
3.准备安装memcacheQ
cd /usr/local/src
wget http://219.239.89.57/deploy/memcacheq-0.2.0.tar.gz
tar zxvf memcacheq-0.2.0.tar.gz
cd memcacheq-0.2.0
修改configure文件,找到bdbdir="/usr/local/BerkeleyDB.4.7",修改为
bdbdir="/usr/local/BerkeleyDB.5.2", 否则执行configure时会产生找不到BDB的错误。
./configure --prefix=/usr/local/memcacheq
make
make install
至此,memcacheq安装成功
4.启动说明
/usr/local/memcacheq/bin/memcacheq -h,报错:
error while loading shared libraries: libdb-5.2.so: cannot open shared object file: No such file or directory
这是因为memcacheq无法找到bdb的共享库文件,按以下方法解决这个问题:
updatedb
locate libdb-5.2.so, 输出:
/usr/local/BerkeleyDB.5.2/lib/libdb-5.2.so
/usr/local/src/db-5.2.28/build_unix/.libs/libdb-5.2.so
再看看memcacheQ是从哪里寻找libbdb-5.2.so文件的:
ldd /usr/local/memcacheq/bin/memcacheq
linux-vdso.so.1 => (0x00007fff0ff1a000)
libm.so.6 => /lib64/libm.so.6 (0x000000398ec00000)
libdb-5.2.so => not found
libevent-1.4.so.2 => /usr/lib64/libevent-1.4.so.2
libc.so.6 => /lib64/libc.so.6 (0x000000398e000000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x000000398e800000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x0000003991800000)
librt.so.1 => /lib64/librt.so.1 (0x000000398f400000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x0000003992800000)
/lib64/ld-linux-x86-64.so.2 (0x000000398dc00000)
我们发现memcacheq所有库的加载路径均为/lib64, 但libbdb-5.2.so状态为not found, 知道这个信息后,我们为libdb-5.2.so建立相应符号链接即可:
ln -s /usr/local/BerkeleyDB.5.2/lib/libdb-5.2.so /lib64/libdb-5.2.so
再运行/usr/local/memcacheq/bin/memcacheq -h, 一切正常。
建立数据目录,用于memcacheQ保存数据:
mkdir /data/memcacheq
启动之
/usr/local/memcacheq/bin/memcacheq -d -l 127.0.0.1 -A 8192 -H /data/memcacheq -B 65535 -N -R -u root
参数说明:
-d : 以后台服务方式运行
-l : 设置监听地址及端口(默认端口是22201)
-A : 数据页大小
-H : 数据保存目录
-B : 队列中每条数据的最大长度(字节)
-N : 使用内存缓冲方式保存数据至磁盘,从而获得极高性能。
若无此参数,性能会很差-R : 自动清理过期的日志
-u : 设置memcacheq进程账号
测试
telnet 127.0.0.1 22201
stats
stats queue
quit
若测试没有问题,将memcacheQ的启动命令加入到/etc/rc.local中。