存储+调优:存储-memcached

存储+调优:存储-memcached

什么是memcached?
    高性能的分布式内存缓存服务器。通过缓存数据库的查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。

在memcached中存什么?
尽快被保存
访问频率高

1.数据保存方式 chunk
2.数据有效期
3.数据过期慵懒检查
4.数据的存取 set get
5。通过应用程序访问memcache


数据存储方式
chunk


数据过期方式
• Lazy Expiration
memcached内部不会监视记录是否过期,而是在get时查看记录的时间戳,检查记录是否过期。这种技术被称为lazy(惰性)expiration。因此,memcached不会在过期监视上耗费CPU时间。

• LRU
memcached会优先使用已超时的记录的空间,但即使如此,也会发生追加新记录时空间不足的情况,此时就要使用名为 Least Recently Used(LRU)机制来分配空间。顾名思义,这是删除“最近最少使用”的记录的机制。因此,当memcached的内存空间不足时(无法从slab class 获取到新的空间时),就从最近未被使用的记录中搜索,并将其空间分配给新的记录。从缓存的实用角度来看,该模型十分理想。

[root@localhost tmp]# tar xf libevent-2.0.15-stable.tar.gz 
[root@localhost tmp]# cd libevent-2.0.15-stable
[root@localhost libevent-2.0.15-stable]# ./configure && make && make install
[root@localhost tmp]# tar xf memcached-1.4.5.tar.gz 
[root@localhost tmp]# cd memcached-1.4.5
[root@localhost memcached-1.4.5]# ./configure && make && make install
[root@localhost memcached-1.4.5]# ./memcached -h
[root@localhost memcached-1.4.5]# ./memcached -p 11211 -l 172.16.1.6 -u root -m 64 -c 10 -vvv -f 1.2 -n 60
slab class   1: chunk size        96 perslab   10922
slab class   2: chunk size       120 perslab    8738
slab class   3: chunk size       144 perslab    7281
slab class   4: chunk size       176 perslab    5957
slab class   5: chunk size       216 perslab    4854
slab class   6: chunk size       264 perslab    3971
slab class   7: chunk size       320 perslab    3276
slab class   8: chunk size       384 perslab    2730
slab class   9: chunk size       464 perslab    2259
slab class  10: chunk size       560 perslab    1872
slab class  11: chunk size       672 perslab    1560
slab class  12: chunk size       808 perslab    1297
slab class  13: chunk size       976 perslab    1074
slab class  14: chunk size      1176 perslab     891
slab class  15: chunk size      1416 perslab     740
slab class  16: chunk size      1704 perslab     615
slab class  17: chunk size      2048 perslab     512
slab class  18: chunk size      2464 perslab     425
slab class  19: chunk size      2960 perslab     354
slab class  20: chunk size      3552 perslab     295
slab class  21: chunk size      4264 perslab     245
slab class  22: chunk size      5120 perslab     204
slab class  23: chunk size      6144 perslab     170
slab class  24: chunk size      7376 perslab     142
slab class  25: chunk size      8856 perslab     118
slab class  26: chunk size     10632 perslab      98
slab class  27: chunk size     12760 perslab      82
slab class  28: chunk size     15312 perslab      68
slab class  29: chunk size     18376 perslab      57
slab class  30: chunk size     22056 perslab      47
slab class  31: chunk size     26472 perslab      39
slab class  32: chunk size     31768 perslab      33
slab class  33: chunk size     38128 perslab      27
slab class  34: chunk size     45760 perslab      22
slab class  35: chunk size     54912 perslab      19
slab class  36: chunk size     65896 perslab      15
slab class  37: chunk size     79080 perslab      13
slab class  38: chunk size     94896 perslab      11
slab class  39: chunk size    113880 perslab       9
slab class  40: chunk size    136656 perslab       7
slab class  41: chunk size    163992 perslab       6
slab class  42: chunk size    196792 perslab       5
slab class  43: chunk size    236152 perslab       4
slab class  44: chunk size    283384 perslab       3
slab class  45: chunk size    340064 perslab       3
slab class  46: chunk size    408080 perslab       2
slab class  47: chunk size    489696 perslab       2
slab class  48: chunk size    587640 perslab       1
slab class  49: chunk size    705168 perslab       1
slab class  50: chunk size    846208 perslab       1
slab class  51: chunk size   1048576 perslab       1
<26 server listening (auto-negotiate)
<27 send buffer was 110592, now 268435456
<27 server listening (udp)
<27 server listening (udp)
<27 server listening (udp)
<27 server listening (udp)


[root@node1 ~]# telnet 172.16.1.6 11211
Trying 172.16.1.6...
Connected to 172.16.1.6 (172.16.1.6).
Escape character is '^]'.

<27 server listening (udp)
<27 server listening (udp)
<27 server listening (udp)
<27 server listening (udp)
<28 new auto-negotiating client connection


[root@node1 ~]# telnet 172.16.1.6 11211
Trying 172.16.1.6...
Connected to 172.16.1.6 (172.16.1.6).
Escape character is '^]'.
set nothing 0 180 10   ----- 0:标识  180:过期时间 10:多少字节
1234567890
STORED
get nothing
VALUE nothing 0 10
1234567890
END


[root@node1 ~]# yum install httpd php
[root@node1 ~]# rpm -ivh php-pecl-memcache-2.1.2-1.el5.rf.i386.rpm 
[root@node1 ~]# cp test.php /var/www/html/
[root@node1 ~]# vim /var/www/html/test.php 
<?php
$memcache = new Memcache;
$memcache->connect('172.16.1.6',11211) or die ("Could not connect");
$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;

$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";
$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";

var_dump($get_result);
?>

[root@node1 ~]# service httpd start

[root@localhost ~]# elinks --dump http://172.16.1.1/test.php
   Server's version: 1.4.5
   Store data in the cache (data will expire in 10 seconds)
   Data from the cache:
   object(stdClass)#3 (2) { ["str_attr"]=> string(4) "test" ["int_attr"]=>
   int(123) }


apache + tomcat + memcached

apache 作为分发器
tomcat 提供web服务
mc     保证session同步


ip  192.168.1.106
apache:
    
    yum install httpd httpd-devel gcc -y
    
ajp1.3:
    tar zxvf tomcat-connectors-1.2.32-src.tar.gz  -C /tmp
    cat /tmp/tomcat-connectors-1.2.32-src/BUILD.txt 
    cd native
     ./configure --with-apxs=/usr/sbin/apxs 
    make && make install
    cp  ../conf/httpd-jk.conf /etc/httpd/conf.d/jk.conf
    vim /etc/httpd/conf.d/jk.conf
    JkMount   /*.jsp     wlb            
    JkMount   /manager/*     wlb
    
    cp  ../conf/workers.properties /etc/httpd/conf
    vim /etc/httpd/conf/workers.properties
    worker.list=wlb,jkstatus
    worker.wlb.type=lb
    worker.wlb.balance_workers=tomcat1,tomcat2
    worker.tomcat1.type=ajp13
    worker.tomcat1.host=192.168.1.111
    worker.tomcat1.port=8009
    worker.tomcat1.lbfactor=1
    worker.tomcat2.type=ajp13
    worker.tomcat2.host=192.168.1.112
    worker.tomcat2.port=8009
    worker.tomcat2.lbfactor=1

    /etc/init.d/httpd  restart

ip  192.168.1.111 192.168.1.112
jdk:
    service httpd stop
    chmod +x jdk-6u27-linux-i586.bin 
    ./jdk-6u27-linux-i586.bin 
    mv jdk1.6.0_27/ /usr/local/jdk
    vim /etc/bashrc
        export JAVA_HOME=/usr/local/jdk
        export JAVA_BIN=/usr/local/jdk/bin/
        export PATH=$JAVA_HOME/bin:$PATH
        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
        export JAVA_HOME JAVA_BIN PATH CLASSPATH
    source /etc/bashrc 
    java -version
    mv apache-tomcat-6.0.32 /usr/local/tomcat

tomcat:
    tar zxf apache-tomcat-6.0.32.tar.gz 
    mv apache-tomcat-6.0.32 /usr/local/tomcat
    cd /usr/local/tomcat/bin 
    ./startup.sh 

cat >/usr/local/tomcat/webapps/ROOT/index.jsp <<EOF
<html>
<body bgcolor="red">
<center>
<%= request.getSession().getId() %>
<h1>Tomcat 1</h1>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/18000.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

unity回到低版本报错解决

用高版本2022打开过后的再回到2020就报了一个错。 报错如下&#xff1a; Library\PackageCache\com.unity.ai.navigation1.1.5\Runtime\NavMeshSurface.cs 看了一下是Library&#xff0c;然后我删除了整个Library文件夹&#xff0c;重启启动生成Library&#xff0c;然后还是…

IT人的拖延——渴望成功与害怕成功的矛盾

很多人都以为&#xff0c;害怕失败是拖延的主要诱因&#xff0c;但其实“害怕成功”也是拖延的主要诱因之一。要说这个原因&#xff0c;我们不得不提起Bible中的一个人“约拿”&#xff0c;让我们先来看看他的故事带给我们什么启示。 约拿情结简介 约拿是Bible中的一名先知&a…

二十九、openlayers官网示例DeclutterGroup解析——避免矢量图层的文字重叠

官网demo地址&#xff1a; Declutter Group 这篇说的是如何设置矢量图层上多数据点文字不重叠。 主要是属性declutter &#xff0c;用于处理矢量图层上重叠的标注和符号&#xff0c;为true时启用去重叠功能。所有矢量特征的标注和符号都会被处理以避免重叠。false则与之相反。…

es安装错误Exception in thread “main“ java.nio.file.NoSuchFileException解决方案

docker 启动es出现一下错误的解决方案 Exception in thread “main” java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config/jvm.options Exception in thread "main" java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config/jvm.op…

香橙派OrangePi AIpro,助力国产AIoT迈向新的台阶!

前言&#xff1a;很高兴受邀CSDN与OrangePi官方组织的测评活动&#xff0c;本次测评是一块基于AI边缘计算的香橙派开发板OrangePi AIpro。这是 香橙派 联合 华为昇腾 合作精心打造的新一代边缘AI计算产品&#xff0c;于2023年12月初发布&#xff0c;提供 8/20TOPS澎湃算力[1]&a…

Java | Leetcode Java题解之第102题二叉树的层序遍历

题目&#xff1a; 题解&#xff1a; class Solution {public List<List<Integer>> levelOrder(TreeNode root) {Queue<TreeNode> queue new LinkedList<>();List<List<Integer>> res new ArrayList<>();if (root ! null) queue.a…

Git和plink

安装git的话首先进入到git官网进行下载Git - Downloading Package (git-scm.com) &#xff0c;点击便会自动进行下载。 安装plink时也是根据自己电脑的版本号选择进行安装&#xff0c;我的是windows的64位&#xff0c;由此选择以上版本进行安装&#xff0c;这一个下载完成之后不…

python lxml安装失败怎么解决

通过pip install lxml 安装lxml多次失败&#xff0c;失败原因总结如下&#xff1a; 1、pip版本未更新 解决方法&#xff1a;通过pip安装时&#xff0c;需保证pip的版本没有问题。 更新方法&#xff1a;在系统框输入&#xff1a;python -m pip install --upgrade pip 2、下载…

好消息!DolphinScheduler官网集成LLM模型问答AI kapa.ai

不少小伙伴可能发现了&#xff0c;Apache DolphinScheduler官网最近默默上线了kapa.ai作为LLM的问答AI。 集成kapa.ai之后&#xff0c;社区用户可以点击Apache DolphinScheduler官网首页右下角的「Ask AI」模块&#xff0c;在接下来弹出的问答框输入自己的问题&#xff0c;即可…

python uiautomator2 常用操作

uiautomator2 安装 python uiautomator2 安装及使用-CSDN博客 一&#xff0c; 通过包名可以打开app d.app_start(com.gacne.www) 打开app运行后执行代码&#xff0c;查看app具体信息获取包名 d.info二&#xff0c;执行等待点击 # 160秒内等待xpath定位的出现执行点击 d.xpat…

mysql中单表查询的成本

大家好。我们知道MySQL在执行一个查询时&#xff0c;经常会有多个执行方案&#xff0c;然后从中选取成本最低或者说代价最低的方案去真正的执行查询。今天我们来聊一聊单表查询的成本。 那么到底什么是成本呢&#xff1f;这里我们说的成本或者代价是由两方面组成的&#xff1a…

【踩坑】编译opencv将python (for build) python2.7改为python3

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你&#xff0c;欢迎[点赞、收藏、关注]哦~ 出现问题 默认是2.7 解决方案 cmake时候添加&#xff1a; -D PYTHON_DEFAULT_EXECUTABLE$(which python3)

02 Prometheus入门安装教程

02 Prometheus入门安装教程 大家好&#xff0c;我是秋意零。今天分享一篇入门级Prometheus安装教程。 环境准备 三台Linux虚拟机&#xff08;一台也可以&#xff09; 准备Prometheus、相关组件安装包 Prometheus官网下载安装包比较慢&#xff0c;如果没有魔法。可关注公众号…

【UnityUI程序框架】The PureMVC Framework核心你会用吗

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;Uni…

Python | Leetcode Python题解之第105题从前序与中序遍历序列构造二叉树

题目&#xff1a; 题解&#xff1a; class Solution:def buildTree(self, preorder: List[int], inorder: List[int]) -> TreeNode:if not preorder:return Noneroot TreeNode(preorder[0])stack [root]inorderIndex 0for i in range(1, len(preorder)):preorderVal pr…

计算机毕业设计python+spark天气预测 天气可视化 天气大数据 空气质量检测 空气质量分析 气象大数据 气象分析 大数据毕业设计 大数据毕设

摘 要 近些年大数据人工智能等技术发展迅速&#xff0c;我国工业正努力从“制造”迈向“智造”实现新跨越。神经网络(NeuronNetwork)是一种计算模型&#xff0c;通过大量数据的学习&#xff0c;来发现数据之间的模式和规律&#xff0c;模仿人脑神经元的工作方式。随着算力的提…

音视频集市应用融合平台方案

音视频应用即有深度又有广度&#xff0c;如何让一个平台拥有更多功能更灵活的拓展能力&#xff0c;从单体模块化&#xff0c;多插件到微服务都有大量的实践。 笔者在实际开发过程也同样面对这些纷繁复杂而又必须共容共通需求的挑战。 在实战开发了大量从服务端到设备端再到浏览…

vos3000外呼系统如何查询授权信息和系统并发

要查询VOS3000外呼系统的授权信息和系统并发情况&#xff0c;您可以按照以下步骤进行&#xff1a; 登录系统管理界面&#xff1a; 使用管理员账号登录VOS3000外呼系统的管理界面。 查找系统信息&#xff1a; 寻找系统信息或授权管理的相关选项或标签。 查询授权信息&#xff…

Linux:IPC - System V

Linux&#xff1a;IPC - System V 共享内存 shm创建共享内存shmgetshmctlftok 挂接共享内存shmatshmdt shm特性 消息队列 msgmsggetmsgctlmsgsndmsgrcv 信号量 semSystem V 管理机制 System V IPC 是Linux系统中一种重要的进程间通信机制&#xff0c;它主要包括共享内存 shm&am…

⌈ 传知代码 ⌋ 高速公路车辆速度检测软件

&#x1f49b;前情提要&#x1f49b; 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间&#xff0c;对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…