企业级memcached部署(session共享)

FreeSWITCH实战:5分钟搞定阿里云SDM(MRCP-SERVER)语音机器人搭建(含Docker部署技巧) 本文详细介绍了如何利用FreeSWITCH与阿里云SDM(MRCP-SERVER)快速搭建高可用语音机器人,包括Docker部署技巧、系统调优及高可用架构设计。通过实战案例和优化建议,帮助开发者5分钟内完成部署,提升语音交互系统的性能和稳定性。 阅读详情

服务端部署

   第一个里程碑:安装依赖关系

      Memcache用到了libevent这个库用于Socket的处理。

1 [root@nfs01 ~]# yum install libevent libevent-devel nc -y

   第二个里程碑:安装memcache

1 [root@nfs01 ~]# yum install memcached -y
2 [root@nfs01 ~]# which memcached
3 /usr/bin/memcached

   第三个里程碑:启动memcached服务

 1 [root@nfs01 ~]# memcached -m 16m -p 11211 -d -u root -c 8192
 2 [root@nfs01 ~]# lsof -i :11211
 3 COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
 4 memcached 10796 root   26u  IPv4  85717      0t0  TCP *:memcache (LISTEN)
 5 memcached 10796 root   27u  IPv6  85718      0t0  TCP *:memcache (LISTEN)
 6 memcached 10796 root   28u  IPv4  85721      0t0  UDP *:memcache
 7 memcached 10796 root   29u  IPv6  85722      0t0  UDP *:memcache
 8 [root@nfs01 ~]# netstat -lntup |grep memca
 9 tcp        0      0 0.0.0.0:11211        0.0.0.0:*      LISTEN      10796/memcached    
10 tcp        0      0 :::11211               :::*           LISTEN      10796/memcached    
11 udp        0      0 0.0.0.0:11211      0.0.0.0:*                      10796/memcached    
12 udp        0      0 :::11211                    :::*                    10796/memcached  

注:memcached可以同时启动多个实例,端口不一致即可。

[root@nfs01 ~]# memcached -m 16m -p 11212 -d -u root -c 8192

    参数说明:

参数

参数说明

-m

max memory to use for items in megabytes (default: 64 MB)

-p

TCP port number to listen on (default: 11211)

-d

run as a daemon

-u

assume identity of <username> (only when run as root)

-c

max simultaneous connections (default: 1024)

   第四个里程碑:写入开机自启动

1 echo 'memcached -m 16m -p 11211 -d -u root -c 8192' >>/etc/rc.local

客户端部署(web服务器)

   第一个里程碑:安装PHP memcache 扩展插件

命令集如下:

1 cd /server/tools
2 wget http://pecl.php.net/get/memcache-2.2.7.tgz
3 tar xf memcache-2.2.7.tgz
4 cd memcache-2.2.7
5 /application/php/bin/phpize
6 ./configure -enable-memcache --with-php-config=/application/php/bin/php-config
7 make && make install

完整操作过程:

 1 [root@web01 ~]# cd /server/tools/
 2 [root@web01 tools]# wget http://pecl.php.net/get/memcache-2.2.7.tgz
 3 [root@web01 tools]# tar xf memcache-2.2.7.tgz
 4 [root@web01 tools]# cd memcache-2.2.7
 5 
 6 [root@web01 memcache-2.2.7]# /application/php/bin/phpize
 7 Configuring for:
 8 PHP Api Version:         20121113
 9 Zend Module Api No:      20121212
10 Zend Extension Api No:   220121212
11 [root@web01 memcache-2.2.7]# ./configure -enable-memcache --with-php-config=/application/php/bin/php-config
12 [root@web01 memcache-2.2.7]# make && make install

查看是否安装成功

1 [root@web01 memcache-2.2.7]# ls -l /application/php/lib/php/extensions/no-debug-non-zts-20121212/
2 total 252
3 
4 -rwxr-xr-x 1 root root 258048 Nov  7 10:03 memcache.so

   memcache.so表示插件安装成功。

   第二个里程碑:配置memcache客户端使其生效

1 [root@web01 memcache-2.2.7]# cd /application/php/lib/
2 [root@web01 lib]# vim php.ini
3 ……
4 [root@web01 lib]# tail -2 php.ini
5 extension_dir = "/application/php/lib/php/extensions/no-debug-non-zts-20121212/"
6 extension = memcache.so

   第三个里程碑:检测语法,重启服务

1 [root@web01 lib]# /application/php/sbin/php-fpm  -t
2 [07-Nov-2017 10:20:44] NOTICE: configuration file /application/php-5.5.32/etc/php-fpm.conf test is successful

#重启服务 

1 killall php-fpm
2 killall php-fpm
3 /application/php/sbin/php-fpm

   浏览器访问phpinfo页面出现memcache信息表示配置成功。

 

   第四个里程碑:编写测试memcache文件

1 [root@web01 blog]# cat  test_memcache.php
2 <?php
3      $memcache = new Memcache;
4      $memcache->connect('172.16.1.31', 11211) or die ("Could not connect NFS server");
5      $memcache->set('key', 'Memcache connect OK');
6      $get = $memcache->get('key');
7      echo $get;
8 ?>

   测试出现Memcache connect OK 表示连接成功

1 [root@web01 blog]# /application/php/bin/php   test_memcache.php 
2 Memcache connect OK

   第五个里程碑:修改php配置(设置session共享)

1 [root@web01 ~]# vim /application/php/lib/php.ini

原配置

1 session.save_handler = files
2 session.save_path = "/tmp"

修改为:

1 session.save_handler = memcache
2 session.save_path = "tcp://172.16.1.31:11211"

⚠修改完成之后要重启php服务

1 killall php-fpm
2 killall php-fpm
3 /application/php/sbin/php-fpm

修改之前phpinfo信息

修改之后phpinfo信息

 

到此企业级memcache(session共享)部署完毕

1.1.1 Memcached在集群中session共享存储的优缺点

优点:

    1)读写速度上会比普通文件files速度快很多。

     2)可以解决多个服务器共用session的难题。

缺点:

     1)session数据都保存在memory中,持久化方面有所欠缺,但对session数据来说不是问题。

     2)一般是单台,如果部署多台,多台之间数据无法同步。通过hash算法分配依然有session丢失的问题。

替代方案:

     1)可以用其他的持久化系统存储session,例如redis,ttserver来替代memcached.

     2)高性能并发场景,cookies效率比session要好很多,因此,大网站都会用cookies解决会话共享的问题.

     3)一些不好的方法:lvs-p,nginx  ip_hash,不推荐使用.

 DedeCMS使用memcache问题

问题:
    上述文件进行修改后,DedeCMS发现无法访问后台 http://www.etiantia.org/dede

解决办法:

   修改文件一:

1 [root@web01 include]# pwd
2 /application/nginx/html/www/include
3 
4 [root@web01 include]# vim common.inc.php
5 135 //Session保存路径
6 136 $enkey = substr(md5(substr($cfg_cookie_encode,0,5)),0,10);
7 137 //$sessSavePath = DEDEDATA."/sessions_{$enkey}";
8 138 $sessSavePath = "tcp://172.16.1.31:11211";
9 139 if ( !is_dir($sessSavePath) ) mkdir($sessSavePath);

   修改文件二:

1 [root@web01 include]# vim vdimgck.php
2 24 $enkey = substr(md5(substr($cfg_cookie_encode,0,5)),0,10);
3 25 //$sessSavePath = DEDEDATA."/sessions_{$enkey}";
4 26 $sessSavePath = "tcp://172.16.1.31:11211";
5 27 if ( !is_dir($sessSavePath) ) mkdir($sessSavePath);

   让DedeCMS直接使用memcache的共享.解决问题.

特别感谢:元芳

此文章出自惨绿少年,转载请注明 
某智能物流无人值守系统 ExportReport SQL注入漏洞复现 某智能物流无人值守系统 ExportReport存在SQL注入漏洞,未经身份验证的远程攻击者除了可以利用 SQL 注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。 阅读详情

相关推荐

kaggle——信用卡欺诈检测项目实战

笔记第一步:了解题目,确定任务第二步:场景分析第三步:数据预处理看是否有缺失值查看样本类别分布数据不均衡解决办法数据值标准化/归一化第四步:特征工程1)查看特征分布情况,把不同类别下特征分布相差不大的特征删除掉2)特征缩放第五步:模型训练处理不平衡样本交叉验证求取最好的模型参数第六步:模型评估使用下采样数据训练与测试使用下采样数据训练与测试(不同的阈值对结果的影响)使用下采样数据训练,原始数据进行测试原始数据进行K折交叉验证使用原始数据进行训练和测试查看ROC曲线逻辑回归阈值选择过采样总结 第一步:了解题目

weixin_45942265的博客 1万+

MemCached部署和操作

Session缓存:将用户的Session数据缓存到Memcached中,提高Web应用的并发处理能力。-l:用于设置Memcached监听的IP地址,默认为0.0.0.0,表示监听所有的IP地址。API结果缓存:将API的结果缓存到Memcached中,减少对API的请求次数。数据库查询缓存:将频繁查询的结果缓存到Memcached中,减轻数据库的负载。简单的键值对存储:数据以键值对的方式存储,可以根据键快速查询数据。是一种高性能的分布式内存对象缓存系统,通过缓存常用的数据,可以提升。

互联网知识分享 760

rv1106 模型部署

ONNX(Open Neural Network Exchange),开放神经网络交换,是一种模型IR,用于在各种深度学习训练和推理框架转换的一个中间表示格式,支持多种深度学习框架,包括 TensorFlow、PyTorch、Caffe 等。将模型转换为 ONNX 格式后,可以更容易地在不同的深度学习框架中进行部署和推理,而无需重新训练模型。

weixin_50993868的博客 1286

高性能内存对象缓存Memcached原理与部署

一套开源的高性能的分布式内存对象缓存系统所有的数据都存储在内存中支持任意存储类型的数据提高网站的访问速度。

qq_51678989的博客 1703

本地部署 pyvideotrans(视频翻译配音工具)

语音识别选择faster-whisper(本地),模型选择预先下载并保存的medium,然后选择好要处理的视频以及保存到的位置,这里我选择了一个名为why not的英文演讲视频,保存在桌面_vedio_out文件下。将附件中faster-medium.7z 和 faster-small.7z解压到项目中的models目录下, 解压后,目录中应该存在 models--Systran--faster-whisper-small。en.m4a|.wav = 原始视频中的音频文件(包含所有背景音和人声)

西唯兵欧泡的博客 2342

卷积码和Turbo码

通信原理相关博文目录:目录我们常在移动通信中遇到的卷积码就是一种非分组码,卷积码和信号处理中的卷积运算有关系吗?是不是就是信号处理中的卷积运算,先看看编码器的编码原理再说:下面是一个比较实用的卷积码编码器:它有三个移位寄存器D0,D1,D2和三个模2加法器,以及一个旋转开关组成,编码前,先将各级移位寄存器清零:现在假设输入的信息码元是1101:当输入的第一个码元为1时,三个模2加法器计算的结果都为...

Reborn Lee 2万+

Memcached 介绍及部署

目录Memcached 简介MC介绍MC特性MC企业应用场景MC数据存储机制MC内存管理机制MC过期机制Memcached 部署MC安装MC服务基本管理MC基本操作memcached 是一个自由开源,高性能,分布式内存对象存储系统基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)它是一个简洁的key-value存储系统f分为服务端和客户端两部分1.服务端:memcached2.客户端:memcache。

w2304948626的博客 1344

VulnHub系列之BadStore_123渗透测试

BADSTORE: 1.2.3 早期网商系统漏洞鉴赏(2004)

Flynn的博客 1630

Memcached的使用

一.简介 Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。 Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。   Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。它的API兼容大部分流行的开发语言。 本质上,它...

tangruyi1992的博客 481

VSS shielding线可以floating吗?

shielding vss不打孔,就相当于dummy metal,如果周围有其他干扰线,他们影响了这段dummy metal,这段dummy metal仍然会对目标线产生干扰,bug的是,工具知道这段dummy是vss,那么计算寄生的时候仍然把它当vss,就有可能噪声没有完全消除,而用户又看不见。而真正接地的线,相当于一直是0,就不会对目标线产生干扰,一般加shield是在route之前,这时候shield能尽量覆盖目标线,等到绕线后再加就会出现shield只覆盖到一部分目标线的情况。

m0_61544122的博客 6636

海思3403烧结、复用及mic输入

3403调试的第一步是版本烧结,版本烧结经常遇到问题,本文记录总结遇到的各种问题。

平面到立体 1355

memcached介绍及实例部署

文章目录1. memcached概述1.1 memcached简介1.2 memcached工作原理1.2.1 服务端缓存的实现 1. memcached概述 1.1 memcached简介 memcached:一个自由开源的,高性能高,分布式内存对象缓存系统。 Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩

chunlin 1079

利用XGBoost实现短期电力负荷预测

本数据集为某地区2009年-2015年的用电负荷,时间片为每分钟这里我们定义了XGB模型作为实例,来进行模型训练,之后我们会对其使用网格搜索找到最优的参数。

优快云 精品推荐 4495

PJ85718DM+STM32F100ZE双通道测温在暖通控制中的应用

在暖通空调与工业控制中,温度采集的精度和可靠性直接影响系统性能。传统热敏电阻方案需要逐点标定,且长线传输易受线阻干扰。数字温度传感器通过I2C接口与MCU通信,具有免标定、抗干扰等优势。STM32F100ZE作为主流嵌入式控制芯片,配合PJ85718DM可实现本地与远程双通道测温,远程通道利用PN结特性,即使数十厘米走线也能保持精度。本文结合实际项目,介绍硬件设计、寄存器读取与温度换算、滤波算法以及HVAC联动控制策略,并总结了量产阶段的工程要点,为嵌入式温度监测提供一套可直接参考的落地方案。

weixin_34318272的博客 290

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

企业级WEB应用架构实战:Tomcat + Nginx + Memcached + MySQL 整合笔记

在当今的企业级应用开发中,**高性能、高可用、易扩展**的架构是永恒的主题。经典的 **LNMT**(Linux + Nginx + MySQL + Tomcat)组合,配合 **Memcached** 实现 Session 共享,能够很好地支撑中型 Web 应用的并发需求。本文将基于实际操作,记录从源码编译 MySQL、部署 Tomcat、整合 Nginx 反向代理与负载均衡,再到使用 Memcached 实现 Session 零丢失的完整过程。笔记内容结合了理论讲解和详细命令,希望能为正在学习或构建类似

2301_80268088的博客 588

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

企业级WEB应用服务器Tomcat

【代码】企业级WEB应用服务器Tomcat(一)

HuangzhenTu的博客 347

Memcached内存缓存技术

Memcached是什么,有什么作用? Memcached是一个开源的、高性能的内存缓存软件,从名称上看Mem就是内存的意思,而Cache就是缓存的意思。 Memcached通过在事先规划好的内存空间中临时缓存数据库中的各类数据,以减少业务直接对数据库的访问,从而减轻数据库的访问压力和网站集群的响应速度。 Memcached服务在企业集群架构中应用场景 1.作为数据库的前端缓存应用 完整...

weixin_30325487的博客 223

企业级WEB应用服务器TOMCAT

而微服务的设计思想对团队的 划分有着一定的影响,使得团队组织架构的划分更倾向于垂直架构,比如用户业务是一个团队来负 责,支付业务是一个团队来负责。如果某个功能模块出问题,有可能全站不可访问,修改Bug后、某模块功能修改或升级后,需要停 掉整个服务,重新整体重新打包、部署这个应用war包,功能模块相互之间耦合度高,相互影响,不适 合当今互联网业务功能的快速迭代。微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底去掉耦合,每一 个微服务提供单个业务功能,一个服务只做一件事。

2302_81705832的博客 625

企业级WEB应用服务器TOMCAT---相关部署

msm)提供将Tomcat的session保持到memcached可以实现高可用。项目早期托管在目前在Github。

2203_75363877的博客 1248

企业级WEB应用服务器TOMCAT — WEB技术详细部署

企业级WEB应用服务器TOMCAT — WEB技术详细部署

2303_80156525的博客 1073

企业级 Web 应用服务器 Tomcat

B/S 基于 HTTP 协议,通过浏览器访问,核心是动态网页技术(CGI、ASP、PHP、JSP),分前端(HTML/CSS/JS)和后端开发。前端三大核心:HTML(超文本标记语言,定义网页结构)、CSS(层叠样式表,控制网页样式)、JavaScript(动态脚本语言,支持前后端通用,V8 引擎提升执行效率)。微服务架构:拆分业务为独立服务,松耦合、独立部署,支持多语言开发,可单独扩展,但增加开发、测试、运维复杂度,需解决分布式事务和数据一致性问题,适合大型复杂系统。

nzxzn的博客 431

Tomcat涡轮:企业级WEB动力引擎全解析

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和 并发访问用户不是很多的场合下被普遍使用,Tomcat 具有处理HTML页面的功能,它还是一个Servlet和 JSP容器起始于SUN 公司的一个Servlet的参考实现项目 Java Web Server,开发者是 James Duncan Davidson, 在1999年,将项目贡献给了apache软件基金会(ASF),和ASF现有的项目 JServ 合并,并开源成为顶级项目。

2302_76908247的博客 1462
上一篇: 全站HTTPS简单实践
下一篇: Oracle Database 12c Release 2安装详解
惨绿少年
博客等级 码龄10年 173粉丝 236原创
评论 10
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值