
宝塔微擎开启redis缓存实战教程
各位看官大家牛年大吉,继上年做了一期微擎开启redis缓存实战教程,有小伙伴们私信或者发帖说能不能提供一篇基于端口多实例的教程,满足! 开门见山,风生水起 基于多端口实现redis多实例: 1、打开面板安装redis,并配置好使用的最大内存...
各位看官大家牛年大吉,继上年做了一期微擎开启redis缓存实战教程,有小伙伴们私信或者发帖说能不能提供一篇基于端口多实例的教程,满足! 开门见山,风生水起 基于多端口实现redis多实例: 1、打开面板安装redis,并配置好使用的最大内存...
现在有很多网友都在使用宝塔主机管理系统、对一些不懂linux操作的朋友来说,是一个很好的管理系统、 但是有些朋友重启服务器以后,有可能造成一些服务无法重启。今天我们搜集下关于宝塔面板的命令集锦 [v_notice]安装宝塔[/v_notic...
本地访问云服务器,或者在云服务器上访问其他网络资源时,发现网络卡顿。使用 ping
命令,发现网络存在丢包或时延较高的情况。
丢包或时延较高可能是骨干链路拥塞、链路节点故障、服务器负载高、系统设置问题等原因引起。在排除云服务器自身原因后,您可以使用 MTR 进行进一步诊断。 MTR 是一款网络诊断工具,其工具诊断出的报告可以帮助您确认网络问题的症结所在。
本文档以 Linux 和 Windows 云服务器为例,介绍如何使用 MTR 以及如何对 MTR 的报告结果进行分析。
说明
如果本地或云服务器禁用 Ping,则 MTR 将无结果。
请根据运行 MTR 的主机操作系统的不同,查看 MTR 的介绍和使用方法。
MTR:Linux 平台上诊断网络状态的工具,继承了 Ping、traceroute、nslookup 的功能,默认使用 ICMP 包测试两个节点之间的网络连接情况。
目前现有的 Linux 发行版本都预装了 MTR,如果您的 Linux 云服务器没有安装 MTR,则可以执行以下命令进行安装:
CentOS 操作系统:
yum install mtr
Ubuntu 操作系统:
sudo apt-get install mtr
-h/--help:显示帮助菜单。
-v/--version:显示 MTR 版本信息。
-r/--report:结果以报告形式输出。
-p/--split:与 --report 相对,分别列出每次跟踪的结果。
-c/--report-cycles:设置每秒发送的数据包数量,默认是10。
-s/--psize:设置数据包的大小。
-n/--no-dns:不对 IP 地址做域名解析。
-a/--address:用户设置发送数据包的 IP 地址,主要用户单一主机多个 IP 地址的场景。
-4:IPv4
-6:IPv6
以本机到 IP 为119.28.98.39的服务器为例。 执行以下命令,以报告形式输出 MTR 的诊断报告。
mtr 119.28.98.39 --report
返回类似如下信息:
主要输出的信息如下:
HOST:节点的 IP 地址或域名。
Loss%:丢包率。
Snt:每秒发送的数据包的数量。
Last:最近一次的响应时间。
Avg:平均响应时间。
Best:最短的响应时间。
Wrst:最长的响应时间。
StDev:标准偏差,偏差值越高,说明各个数据包在该节点的响应时间相差越大。
说明
由于网络状况的非对称性,遇到本地到服务器的网络问题时,建议您收集双向的 MTR 数据(从本地到云服务器以及云服务器到本地)。
根据报告结果,查看目的服务器 IP 是否丢包。
如果目的地没有丢包,则表示网络正常。
如果目的地发生丢包,则执行 步骤2。
往上查看报告结果,定位第一次丢包的节点。
如果丢包发生在目的服务器,则可能是目的服务器的网络配置不当引起,请检查目的服务器的防火墙配置。
如果丢包开始于前三跳,一般为本地运营商网络问题,建议检查访问其他网址是否存在相同情况。如果存在相同情况,请反馈给您的运营商进行处理。如果有频繁丢包的情况,确实为网络不稳定的场景,则请 提交工单 进行咨询,并附上测试截图,以便工程师进行定位
Linux 云服务器在内存使用率未占满的情况下触发了 OOM(Out Of Memory)。如下图所示:
可能原因 | 处理措施 |
内存使用率过高 | 检查内存使用率是否过高 |
进程数超限 | 检查进程数是否超限 |
系统可用内存低于 min_free_kbytes 值 | 检查系统可用内存是否低于 min_free_kbytes 值 |
参见 内存使用率过高问题处理 ,查看实例是否内存使用率过高。若实例内存使用率正常,请 检查进程数是否超限。
参见 日志报错 fork:Cannot allocate memory,核实进程数是否超限。若总进程数未超限,则执行下一步。
登录云服务器,执行以下命令查看 min_free_kbytes
值。
sysctl -a | grep min_free
min_free_kbytes
值单位为 kbytes,下图所示 min_free_kbytes = 1024000
即为1GB。
执行以下命令,使用 VIM 编辑器打开 /etc/sysctl.conf
配置文件。
vim /etc/sysctl.conf
按 i 进入编辑模式,修改 vm.min_free_kbytes
配置项。若该配置项不存在,则直接在配置文件中增加即可。
说明
建议修改 vm.min_free_kbytes
值为不超过总内存的1%即可。
按 Esc 并输入 :wq 后,按 Enter 保存并退出 VIM 编辑器。
执行以下命令,使配置生效即可。
sysctl -p
可能是由系统可用内存低于 min_free_kbytes
值导致。
min_free_kbytes
值表示强制 Linux 系统最低保留的空闲内存(Kbytes),
如果系统可用内存低于设定的 min_free_kbytes
值,
则默认系统启动 oom-killer 或强制重启。具体行为由内核参数 vm.panic_on_oom
值决定:
若 vm.panic_on_oom=0
,则系统会提示 OOM,并启动 oom-killer 杀掉占用最高内存的进程。
若 vm.panic_on_oom =1
,则系统会自动重启。
每天两场(上午10:00,下午15:00),上云首选云服务器限量抢购,助力低成本上云
阿里云200+款云产品折上再折,满足多样场景的上云需求 活动规则
解决方法:将这个路径下的文件删除后再重启 /tmp/php-cgi-56.sock
进入ssh 执行以下命令再重启php
rm -f /tmp/php-cgi-56.sock
具体不同的php版本,需要将以上命令的56更换为具体报错的php版本号,不能生搬硬套哦
解决方法:进入ssh 执行这条命令 再尝试启动
yum install libsodium-devel sqlite-devel oniguruma-devel libwebp-devel libvpx-devel -y
解决方法:
/etc/init.d/php-fpm-72 stop
/etc/init.d/php-fpm-72 start
然后再启动试试
注意:以上的72,为php版本号,哪个版本的php启动不了,就将以上命令的72改为对应版本号
阿里云上云优惠聚集地,新人专享优惠价格,可叠加专享代金券购买价格更低。
折扣卷领取:https://www.aliyun.com/minisite/goods?userCode=fa2nbd3s
(1)折扣券不可用于购买产品提货券;
(2)99计划产品暂不支持折扣补贴券抵扣使用;
(3)折扣券必须先领取成功后方可使用;
(4)PC或者无线端订单最终是否支持折扣券请以下单页面实际情况为准;
(5)用户领取的折扣券有效期为15天,有效期内下单购买有效,15天后券自动失效作废。