经验教程 RabbitMQ 简介和安装以及使用详解 一、RabbitMQ 相关概念 RabbitMQ 整体上是一个生产者与消费者模型,主要负责接收、存储和转发消息。可以把消息传递的过程想象成:当你将一个包裹送到邮局,邮局会暂存并最终将邮件通过邮递员送到收件人的手上,RabbitMQ 就好比邮局、邮箱和邮递员组成的一个系统。从计算机术语层面来说,RabbitMQ 模型更像是一种交换机模型。 1 生产者和消费者 Producer:生产者,投递消息的一方...
程序开发 Java 包装类型的缓存机制 缓存机制介绍 Java 基本数据类型的包装类型的大部分都用到了缓存机制来提升性能。 Byte,Short,Integer,Long 这 4 种包装类默认创建了数值 [-128,127] 的相应类型的缓存数据,Character 创建了数值在 [0,127] 范围的缓存数据,Boolean 直接返回 True or False。 Integer 缓存源码: public static Integer...
运维开发 crontab定时任务实现开机自启程序 如果有这样一个脚本任务,仅仅需要开机后运行一次,那么,可以通过 @reboot 和 crontab 结合的方式实现。 如果是系统自带命令任务,@reboot不一定会执行,由于系统开机初始化,很有可能系统自带命令运行环境并不满足,但 crontab 已经开始执行@reboot,从而造成命令运行失败。 # 开机马上启动,如果依赖其他服务,可能导致脚本执行失败 @reboot /home/test.sh...
程序开发 遍历 Map 最常用的两种方式 使用 for-each 循环遍历 Map 中的键值对 Map<String, Integer> map = new HashMap<String, Integer>(); for (Map.Entry<String, Integer> entry : map.entrySet()) { String key = entry.getKey(); Integer v...
程序开发 Mybatis-plus 中 Java 的 Map 类型如何对应 Mysql 数据库中的 varchar 比如我现在有如下实体类,那么数据肯定是不能直接插入数据库的,因为 mysql 中 varchar 对应的 java 类型应该是 String,而不是 Map。 @Data @NoArgsConstructor @AllArgsConstructor @Accessors(chain = true) public class File { private Integer id; private Ma...
运维开发 详解 linux 路由 route 命令 route 命令用于查看和操作Linux操作系统中的路由表。它允许您添加,删除和修改路由表的条目,以确定数据包从一台计算机到另一台计算机的传输路径。 以下是一些 route 命令的常用选项: route -n:以数字格式显示路由表。这将以 IP 地址和网络掩码的数字形式而非主机名和网络掩码的形式来显示路由表的内容。 route add:添加新的路由表项。 route del:从路由表中删除一条路由...
运维开发 Docker 宿主机不能访问了?这篇文章帮你解决网卡与内网 ip 段的冲突问题 众所周知,docker 默认的网桥网卡地址是 172.17.0.1/16,如果新建网卡的话地址是 172.18.0.1/16。依此类推,再创建了多块网卡以后,总有一块网卡地址会变成 172.21.0.1/16。 不巧的是公司内网也是 172.21.0.1/16 网段,每次连接 docker 宿主机时都会死活连不上,猜测应该是这里的影响。 于是想办法修改 docker 的网络地址池,在 /etc/d...
运维开发 Linux 开启 ipv4 转发的几种方式 查看是否开启 ipv4 转发,结果为 1 则是已开启。 # 方式一 cat /proc/sys/net/ipv4/ip_forward # 方式二 sysctl net.ipv4.ip_forward 在 Linux 中,有多种方式可以开启 IPv4 转发。以下是其中的几种方式: 临时开启:可以使用以下命令临时开启 IPv4 转发: sysctl -w net.ipv4.ip_forward=1 ...
运维开发 Linux下磁盘分区、格式化、挂载以及开机自动挂载 一、磁盘分区 类型:MBR分区使用fdisk、GPT分区使用gdisk。区别在于MBR分区是比较老的分区格式,最多能识别2.2T,GPT理论可以识别到PB级别。 这里使用的是fdisk工具,建立逻辑分区。 fdisk /dev/sdb #设备名 # 建立扩展分区 # 1.输入p打印分区情况,n建立新的分区 Partition type: p primary (1 primary, 0 extend...
运维开发 Linux 更换163或阿里云 yum 源 一、阿里云源 1)备份当前yum源防止出现意外还可以还原回来 cd /etc/yum.repos.d/ && cp CentOS-Base.repo CentOS-Base-repo.bak 2)使用wget下载阿里yum源repo文件 wget http://mirrors.aliyun.com/repo/Centos-7.repo 3) 清理旧包 yum clean all 4...
运维开发 Docker 不常用但很实用的命令总结 1、查看容器 ip docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器名 2、查看 run 命令 docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike -p <...
经验教程 Mysql 忘记密码以及开启远程登录 在Linux环境下找到配置文件,位置:/etc/my.cnf 。 service mysqld xxx #第一种 mysqld xxx #第二种:在mysql的bin目录下执行 #停止 stop #启动 start #重启 restart 1、忘记密码 报错:Access denied for user 'root'@'localhost' (using password: YES) 首先修改配置...