未整理
今天在安装 APP 进行调试的时候,发现一直安装不上,显示:
Too many active sessions for UID xxx,一开始还以为是调试的 APP 的问题,但是试了其他 APP 也不行。
从往上搜索了很多的方法都不行,估计都是复制粘贴的答案,不得已只能自己去源码中寻找答案。
今天在安装 APP 进行调试的时候,发现一直安装不上,显示:
Too many active sessions for UID xxx,一开始还以为是调试的 APP 的问题,但是试了其他 APP 也不行。
从往上搜索了很多的方法都不行,估计都是复制粘贴的答案,不得已只能自己去源码中寻找答案。
示例:统计 2022/08/12 日凌晨3点的API量并根据请求量进行排序
grep "12/Aug/2022:03" access.log | awk '{print $7}' | awk -F\? '{print $1}' | sort | uniq -c | sort -nr
示例:统计 2022/08/12 日凌晨3点的接口 status 中根据 m 值参数去重统计
顾名思义,执行很慢的查询,那很慢的标准是什么?
我们可以通过查询 long_query_time 变量查看当前数据库慢查询的阀值是多少;
show variables like 'long_query_time';

但是数据库默认是把慢查询日志给关闭的,那怎么知道现在数据库慢查询是开还是关呢?
示例
docker pull python:3.7
docker images ps
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
常见示例:
docker run -itd --name aminglinux -v /data:/data -p 5000:5000 centos
docker run 参数说明:
-i # 以交互模式运行容器,通常与-t同时使用
-t # 为容器分配一个终端(tty),通常与-i同时使用
-d # 以守护进程(daemon)的方式运行容器并打印容器ID
-p # 用于把容器的端口映射到宿主机上,用法如:docker run -d -p 5000:5000 centos 表示把容器的5000端口映射到宿主机的5000端口,左边是宿主机监听端口,右边是容器监听端口
-v # 用于把容器的数据卷映射到宿主机上,用法如:docker run -itd -v /data:/data centos bash 表示把容器的/data目录映射到宿主机的/data目录,左边是宿主机的目录,右边是容器里的目录,详细用法
--name # 自定义容器名
方式一:
Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker
uname -r
输出类似: 3.10.0-957.1.3.el7.x86_64
sudo yum update
# 卸载旧版本,如果之前安装过的话
sudo yum remove docker docker-common docker-selinux docker-engine
# 安装需要的软件包, yum-util 提供 yum-config-manager 功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 设置yum源
# 国外镜像
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 阿里镜像
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
# 安装 docker
# sudo yum install docker-ce
# 由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0
sudo yum install docker-ce-17.12.0.ce
# 启动并加入开机启动
sudo systemctl start docker
sudo systemctl enable docker
# 验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
docker version
# 输出如下表示成功
Client:
Version: 17.12.0-ce
API version: 1.35
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:10:14 2017
OS/Arch: linux/amd64
Server:
Engine:
Version: 17.12.0-ce
API version: 1.35 (minimum version 1.12)
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:12:46 2017
OS/Arch: linux/amd64
Experimental: false
启动 docker 时如出现 Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: xxxx 错误,那可能是 /var/run/docker.sock 无权限,修改权限即可
非常简洁的说明了安装步骤:
git clone https://github.com/emqx/emqtt-bench
cd emqtt-bench
make
当然,如果想直接使用已经编译好的二进制文件,官方也有提供:
如果是自己编译时,需要安装 erlang 环境。
安装包下载地址:http://erlang.org/download/
https://pip.pypa.io/en/stable/installation/
python -m ensurepip --upgrade
# get-pip.py
wget https://bootstrap.pypa.io/get-pip.py
# 如果是 2.7 版本的 python,下载地址为
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
# 执行安装
python get-pip.py
pip -V
https://docs.aws.amazon.com/cli/latest/reference/
Linux 下安装:
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
官方详细参考:
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
通过命令确认是否安装成功:
aws --version
执行:
aws configure
AWS Access Key ID [None]: xxxxxxx AWS Secret Access Key [None]: xxxxxxx Default region name [None]: xxxx Default output format [None]: json
做过 aiot 的同学,必然对 mqtt 协议不陌生,那如何基于 mqtt 有一套自己的通信服务,但是对于大多数的公司来说,自己开发一套这样的服务,太费人力资源,时间上也拖的太长,那有没有什么现成的方案?
从 Log4j 爆出漏洞以来,我们的日志框架就切换到了 Logback,毕竟出自同一个创始人之手,大部分的配置很相似,那么下面简单介绍下 Logback 和 Spring 进行集成时的配置;