SpringBoot 项目优雅实现读写分离
一、读写分离介绍当使用Spring Boot开发数据库应用时,读写分离是一种常见的优化策略。读写分离将读操作和写操作分别分配给不同的数据库实例,以提高系统的吞吐量和性能。 读写分离实现主要是通过动态数据源功能实现的,动态数据源是一种通过在运行时动态切换数据库连接的机制。它允许应用程序根据不同的条件或配置选择不同的数据源,以实现更灵活和可扩展的数据库访问。 二、实现读写分离-基础1. 配置主数据库和从数据库的连接信息123456789101112# 主库配置spring.datasource.master.jdbc-url=jdbc:mysql://ip:port/master?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=falsespring.datasource.master.username=masterspring.datasource.master.password=123456spring.datasource.master.driver-...
git-移除某文件夹的版本控制
git-移除某文件夹的版本控制git-移除某文件夹的版本控制,如我们把.idea目录误提达到远端。 有时候我们一开始在上传项目的时候把某些不必要的文件也添加进了git的版本控制。此时 gitignore 对这些文件就不起作用了。因此我们要先从 git 里面把这些文件 untracked ,然后修改 gitignore ,最后提交。 核心,使用git rm命令,添加参数 –cached–cached 的意思是只去除版本控制而不删除本地文件,如果不写的话会把本地文件也删掉。所以要不要加 –cached 参数就看自己需要了。 具体步骤如下: 1234$ git rm -r -n --cached ".idea" //-n:加上这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。$ git rm -r --cached ".idea" //最终执行命令. $ git commit -m" remove .idea folder all file out of control" //提交...
什么是.bashrc,以及其使用方法
什么是.bashrc经常在配置linux各种环境的时候,遇到对bashrc的配置。当时也只是机械地跟着教程,一步步输入指令;遇到的次数多了,想知道.bashrc究竟是何方神圣。于是整理了下其主要功能以及使用方法。 如果你运行一个基于 Unix 或者类 Unix 的操作系统,bash 很有可能是作为默认终端被安装的。虽然存在很多不同的 shell,bash 却是最常见或许也是最主流的。如果你不明白那意味着什么,bash 是一个能解释你输入进终端程序的东西,并且基于你的输入来运行命令。它在一定程度上支持使用脚本来定制功能,这时候就要用到 .bashrc 了。 为了加载你的配置,bash 在每次启动时都会加载 .bashrc 文件的内容。每个用户的 home 目录都有这个 shell 脚本。它用来存储并加载你的终端配置和环境变量。 终端配置可以包含很多不同的东西。最常见的,.bashrc 文件包含用户想要用的别名。别名允许用户通过更短的名字或替代的名字来指向命令,对于经常在终端下工作的人来说这可是一个省时利器。 二、编辑.bashrc配置内容中,最常见的就是配置别名、配置环境变量(包括...
在 Linux 上手动安装 VMware Tools
可以使用命令行在 Linux 虚拟机上手动安装 VMware Tools。对于版本较高的 Linux 发行版,请使用集成的 open-vm-tools 版本。在版本 10.3.10 中停止提供适用于 Linux 虚拟机的 VMware Tar 工具的功能,因此 Workstation Player 中包含的 tar 工具 (linux.iso) 是 10.3.10,且不会进行更新。由于此更改, 安装/更新/重新安装 VMware Tools 菜单不可用于以下 Linux 虚拟机: tar 工具尚未正式支持现代的 Linux 发行版。 Red Hat Enterprise Linux 8 及更高版本。 CentOS 8 及更高版本。 Oracle Linux 8 及更高版本。 SUSE Linux Enterprise 15 及更高版本。 Linux 内核版本为 4.0 或更高版本,并且安装的 Open VM Tools 版本为 10.0.0 或更高版本。 Linux 内核版本为 3.10 或更高版本,并且安装的 Open VM Tools 版本为 10....
在 Debian 系统中安装 V2Ray 客户端
在 Debian 系统中安装 V2Ray 客户端的步骤如下: 1. 更新系统首先,确保你的系统软件包是最新的: 12sudo apt updatesudo apt upgrade 2. 下载并安装 V2Ray你可以使用 V2Ray 的官方安装脚本来安装 V2Ray 客户端。 使用官方安装脚本 下载安装脚本: 1wget https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh 赋予脚本执行权限: 1chmod +x install-release.sh 运行安装脚本: 1sudo ./install-release.sh 3. 配置 V2Ray安装完成后,你需要配置 V2Ray。V2Ray 的配置文件通常位于 /usr/local/etc/v2ray/config.json。 编辑配置文件: 1sudo nano /usr/local/etc/v2ray/config.json 配置文件示例: 123456789101112131415161718...
Linux新建用户并分配相关权限
1. 新增用户在Linux系统中,我们可以使用useradd命令来新增用户。useradd命令的基本语法如下: 1useradd [选项] 用户名 下面是一些常用的选项: -d:指定用户的主目录; -m:在指定目录下创建用户的主目录; -s:指定用户的默认shell; -g:指定用户所属的初始组; -G:指定用户所属的其他附加组。 例如,我们要新增一个名为testuser的用户,并将其主目录设置为/home/testuser,可以执行以下命令: 1sudo useradd -m -d /home/testuser testuser 执行以上命令后,系统会自动在/home目录下创建一个testuser文件夹作为testuser用户的主目录。 2. 设置密码为了保证用户登录的安全性,我们还需要为新增的用户设置密码。在Linux系统中,可以使用passwd命令来设置用户密码。passwd命令的基本语法如下: 1passwd [选项] 用户名 以下是一些常用的选项: -l:锁定用户账户; -u:解锁用户账户; -d:删除用户密码; -e:强制用户下次登录时修改密码。 例如,我...
关于使用dynamic+druid的配置说明
2025年2月5日安全智能应用发生服务器不可用情况,初步分析为数据库连接池过少,访问量过大导致的线程等待。经查看安全智能应用的配置文件的Druid的数据库连接池参数未生效,经分析是由于配置不规范导致的。下面针对问题进行了说明,并给出了配置规范。 以安全智能应用原有的配置示例(错误的):1234567891011121314151617181920spring: datasource: dynamic: primary: master strict: true datasource: master: url: jdbc:mysql://xxxxxxx driver-class-name: com.mysql.cj.jdbc.Driver username: xxxxx password: xxxx slave: url: jdbc:mysql://XXXXXX driver-class-name: com.my...
常用的各大厂商监控摄像头的rtsp的流地址以及获取方法
监控摄像头的视频转码推流,经常要获取rtsp的流地址,下面是收集的常用的各大厂商监控摄像头的rtsp的流地址以及获取方法 九安监控摄像头默认的rtsp流地址12RTSP地址:rtsp://IP:port(website port)/ch0_0.264(主码流)rtsp://IP:port(website port)/ch0_1.264(子码流) 技威/YOOSEE 监控摄像头默认的rtsp流地址12345默认IP地址:DHCP 用户名admin 密码123RTSP地址:主码流:rtsp://IPadr:554/onvif1次码流:rtsp://IPadr:554/onvif2onvif端口是5000设备发现的端口是3702 华为V380 监控摄像头默认的rtsp流地址123456默认IP地址:DHCP 用户名admin 密码空/adminonvif端口8899RTSP地址:主码流rtsp://ip//live/ch00_1子码流rtsp://ip//live/ch00_0 海康威视监控摄像头默认的rtsp流地址123456789101112131415161718...
通过RTSP协议方式获取天视通摄像机码流的方式
获取设备实时视频码流格式如下: 取主码流地址:rtsp://username:password@ip:port/mpeg4 取子码流地址:rtsp://username:password@ip:port/mpeg4cif 格式说明:1、username: 设备登录用户名。例如admin。2、password: 设备登录密码。例如admin1234。3、ip: 设备IP地址。例如192.168.1.1084、port: 端口号默认为554。5、mpeg4表示为主码流,mpeg4cif表示为子码流 如: 12rtsp://admin:123456@192.168.0.123:554/mpeg4rtsp://admin:123456@192.168.0.123:554/mpeg4cif
HandlerInterceptor的执行顺序的完整配置
在 Spring MVC 中,HandlerInterceptor 是一种常用的拦截器,用于在处理请求的不同阶段插入逻辑(如认证、日志记录等)。多个拦截器的执行顺序由它们的配置顺序决定。以下是配置和执行顺序的完整指南。 拦截器的执行阶段 preHandle: 在请求被处理之前调用。 返回 true 表示继续执行,返回 false 表示中断请求。 postHandle: 在请求处理之后,但在生成视图之前调用。 可以修改返回的数据。 afterCompletion: 在整个请求完成后调用(包括视图渲染)。 拦截器的执行顺序 preHandle: 按照拦截器的添加顺序执行。 postHandle 和 afterCompletion: 按照拦截器的添加顺序 倒序 执行。 完整配置步骤1. 创建拦截器类实现 HandlerInterceptor 接口或继承 HandlerInterceptorAdapter(已过时,推荐直接实现接口)。 123456789101112131415161718192021222324import org.springframew...

