摘要:什么是缓存穿透 缓存穿透是指查询一个缓存中和数据库中都不存在的数据,导致每次查询这条数据都会透过缓存,直接查库,最后返回空。当用户使用这条不存在的数据疯狂发起查询请求的时候,对数据库造成的压力就非常大,甚至可能直接挂掉。 缓存穿透解决方案 解决缓存穿透的方法一般有两种,第一种是缓存空对象,第二种是使
阅读全文
摘要:问题描述: 一段代码太长(貌似所有的代码感觉都长…),例如 main 函数,三行呢,能少写就少写,所以自定义代码块就非常有必要,这也是现在集成开发环境都有的功能(反正 IDEA 有),如果没有…就算了。 1.File -> Settings -> Editor -> Live Templates 进
阅读全文
摘要:https://www.lua.org 下载 压缩文件 上传到linux /opt/software 解压 到 /opt/module/ tar -zxvf xx -C /opt/module/ cd lua-5.4.4/ make make install done! 交互式 输出 hello w
阅读全文
摘要:在IDEA 右上角 打开编辑配置 屏幕右侧 增加 配置选项 运行多个实例时(比如端口不同),可以通过yml 配置文件修改 sever.port= 8080 也可以通过 VM参数设置达到效果 -Dserver.port=8080 这样就可以运行多个实例了,微服务开发测试很有用。。
阅读全文
摘要:SnowFlake Twitter的雪花算法SnowFlake,使用Java语言实现。 SnowFlake算法用来生成64位的ID,刚好可以用long整型存储,能够用于分布式系统中生产唯一的ID, 并且生成的ID有大致的顺序。 在这次实现中,生成的64位ID可以分成5个部分: 0 - 41位时间戳
阅读全文
摘要:什么是分布式系统唯一ID在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。 如在金融、电商、支付、等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID来标识一条数据或消息,数据库的自增ID显然不能满足需求,此时一个能够生成全局唯一ID的系统是非常必要的。 分布式系统唯一ID的特
阅读全文
摘要:搞明白监听器、过滤器、拦截器的作用和使用方式,首先需要了解spring对于这三个的加载时机是在怎么样的,如下图: spring对于这三者依次是先执行过滤器(多个过滤器采用责任链模式依次调用执行),紧接着是监听器,最后才是拦截器。 而这三者的作用: 过滤器(Filter):当你有一堆东西的时候,你只希
阅读全文
摘要:一、ThreadLocal简介ThreadLocal叫做线程变量,意思是ThreadLocal中填充的变量属于当前线程,该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。 ThreadL
阅读全文
摘要:windows 11 应用商店 搜索 PowerToys 选择 powerToys 安装 运行 设置自己喜欢的快捷键 关闭 x 当前窗口,程序 会自动进入到的后台运行 打开激活需要置顶的窗口,按下刚才设置的快捷键,完成置顶 ,需要取消时 再次按下快捷键就可以了。
阅读全文
摘要:Redis 官方管理工具 下载地址: https://redis.com/redis-enterprise/redis-insight/#insight-form 进入页面 点击download 输入email 选择版本 下载 下载到本地 双击安装,完毕后回到电脑桌面 出现图标 连接集群 选择手动添
阅读全文
摘要:环境: Linux 版本:CentOS 7集群部署之前先完成单机安装 stansalone准备echo 511 > /proc/sys/net/core/somaxconn下载Redis:redis-stack-server-6.2.6 https://redis.io/ 下载后上传到linux ,
阅读全文
摘要:在服务开发中,单机都会存在单点故障的问题,及服务部署在一台服务器上,一旦服务器宕机服务就不可用,所以为了让服务高可用,分布式服务就出现了,将同一服务部署到多台机器上,即使其中几台服务器宕机,只要有一台服务器可用服务就可用。 redis也是一样,为了解决单机故障引入了主从模式,但主从模式存在一个问题:
阅读全文
摘要:环境: IDEA 2022 NACOS:2.2 nginx :1.22 CentOS7 springCloud 2021.0.5 Springboot 2.6.13 Spring-cloud-alibaba 2021.0.4.0 实现效果: 微服务配置信息(主要是application中的内容)实现
阅读全文
摘要:新建模块 gateway port:8888 POM <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001
阅读全文
摘要:打开VScode 按下键盘组合键 Ctrl+Shift+P 搜索 configurelanguage 回车 选择对应的语言即可,提示重新打开 成功
阅读全文
摘要:goLang IDE 选择 VsCode SDK 下载 首页 - Go语言中文网 - Golang中文社区 (studygolang.com) 选择 64位 压缩包 下载后解压到磁盘目录 新建目录 C:\golang 最后的目录位 C:\golang\gosdk\go 注册环境变量 新建变量 增加p
阅读全文
摘要:package main import "fmt" type Student struct { name string id int age int sex string } func updateStu(stu *Student) { stu.age = 21 } func main() { va
阅读全文
摘要:环境: centOS7 nacos-server-2.2.0.zip keepalived-2.2.7.tar.gz nginx-1.22.1.tar.gz Nginx+keepalived搭建高可用集群Nacos 实现思路: 1、安装nacos集群环境(已经完成)见上文 nacos 2.2.0 实
阅读全文
摘要:nginx 注册Linux 开机启动 前提已经安装好了,nginx (查看之前的文章) cd /usr/lib/systemd/system/ [root@machine138 keepalived]# cd /usr/lib/systemd/system/ [root@machine138 sys
阅读全文
摘要:目标: 实现nginx 集群高可用,通过访问虚拟IP 地址完成nginx服务的请求,在 主nginx 服务器不能正常提供服务时,备份nginx服务器能自动完成服务接管。并邮件提醒管理员(此功能后续实现) 前提: 两台服务器IP 分别 为 192.168.1.137, 192.168.1.138,分别
阅读全文
摘要:安装 下载 官方网站 home (nacos.io) https://nacos.io/zh-cn/ 下载页 Nacos 快速开始 配置mysql数据库 1、创建mysql 数据库 登录mysql 控制台 mysql -u root -p 创建数据库 CREATE DATABASE IF NOT E
阅读全文
摘要:\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,n匹配字符n。\n匹配一个换行符。序列\\匹配\而\(则匹配(。 ^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配\n或\r之后的位置。 $ 匹配输入字符串的结束位
阅读全文
摘要:Nginx HTTP代理服务器 代理功能根据应用方式的不同可以分为正向代理和反向代理。正向代理是客户端设置代理地址后,以代理服务器的 IP 作为源 IP 访问互联网应用服务的代理方式;反向代理则是客户端直接访问代理服务器,代理服务器再根据客户端请求的主机名、端口号及 URI 路径等条件判断后,将客户
阅读全文
摘要:LVS(Linux虚拟服务器) LVS(Linux Virtual Server)是一个开源的负载均衡项目,是国内最早出现的开源项目之一,目前已被集成到 Linux 内核模块中。该项目在 Linux 内核中实现了基于 TCP 层的 IP 数据负载均衡分发,其工作在内核空间且仅做负载均衡分发处理,所以
阅读全文
摘要:2. nginx.conf配置文件 Nginx配置文件主要分成四部分:main(全局设置)、server(主机设置)、upstream(上游服务器设置,主要为反向代理、负载均衡相关配置)和 location(URL匹配特定位置后的设置),每部分包含若干个指令。main部分设置的指令将影响其它所有部分
阅读全文
摘要:nginx的请求处理阶段 接收请求流程 http请求格式简介 首先介绍一下rfc2616中定义的http请求基本格式: Request = Request-Line * (( general-header | request-header | entity-header ) CRLF) CRLF [
阅读全文
摘要:nginx的源码目录结构(100%) nginx的优秀除了体现在程序结构以及代码风格上,nginx的源码组织也同样简洁明了,目录结构层次结构清晰,值得我们去学习。nginx的源码目录与nginx的模块化以及功能的划分是紧密结合,这也使得我们可以很方便地找到相关功能的代码。这节先介绍nginx源码的目
阅读全文
摘要:core模块 Nginx的模块除了HTTP模块,还有一些核心模块和mail系列模块。核心模块主要是做一些基础功能,比如Nginx的启动初始化,event处理机制,错误日志的初始化,ssl的初始化,正则处理初始化。 mail模块可以对imap,pop3,smtp等协议进行反向代理,这些模块本身不对邮件
阅读全文
摘要:负载均衡模块 负载均衡模块用于从”upstream”指令定义的后端主机列表中选取一台主机。nginx先使用负载均衡模块找到一台主机,再使用upstream模块实现与这台主机的交互。为了方便介绍负载均衡模块,做到言之有物,以下选取nginx内置的ip hash模块作为实际例子进行分析。 配置 要了解负
阅读全文
摘要:handler模块的基本结构 handler模块必须提供一个真正的处理函数,这个函数负责对来自客户端请求的真正处理。这个函数的处理,既可以选择自己直接生成内容,也可以选择拒绝处理,由后续的handler去进行处理,或者是选择丢给后续的filter进行处理。来看一下这个函数的原型申明。 typedef
阅读全文
摘要:以下为网络资源摘抄,只为记录 nginx的配置系统 nginx的配置系统由一个主配置文件和其他一些辅助的配置文件构成。这些配置文件均是纯文本文件,全部位于nginx安装目录下的conf目录下。 配置文件中以#开始的行,或者是前面有若干空格或者TAB,然后再跟#的行,都被认为是注释,也就是只对编辑查看
阅读全文
摘要:Linux 下安装 命令: 1、下载 2、解压压缩包 tar -zxvf xxx.tar.gz 3. 开始操作 sudo ./configure sudo make sudo make install 准备 1、安装 pcre https://sourceforge.net/projects/pcr
阅读全文
摘要:与 aliBaBa 2021.0.4.0 相近的spring cloud 稳定版本是 2021.0.5 相应的boot 版本是 2.6.13 首先确定AliBaba的版本 根据版本分支说明 版本说明 · alibaba/spring-cloud-alibaba Wiki (github.com) 2
阅读全文
摘要:准备 安装mysql (192.168.1.101) 建库 nacos_config 集群部署方案 三台Linux服务器 nacos-server-01 192.168.1.136 nacos-server-02 192.168.1.137 nacos-server-03 192.168.1.138
阅读全文
摘要:安装准备 ** 确保已经安装了docker server (yum install docker) 并启动 systemctl start docker 已经有可用的mysql 创建数据库 nacos_config 建库脚本在安装包中 安装nacos docker 查询nacos镜像 docker
阅读全文
摘要:打开IDEA 依此 点击 文件--》设置--插件(plugin) 在中间区域上面输入 chatgpt 找到如下所示的 ChatGPT-CN 是一款为中国用户定制化的!!! 这款插件的官方网址: https://plugins.jetbrains.com/plugin/20603-chatgpt 介绍
阅读全文
摘要:注意: 2023年2月 spring cloud 最新版本不支持nacos 2.2 和hystrix,测试发现以下这个版本还支持 <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</a
阅读全文
摘要:介绍OpenFeign openFeign 是工作在客户端 可与其他注册发现管理服务器整合(eureka,zookeeper,consul,nacos等)功能上替代了restTemplate,本身集成Ribbon有负载均衡功能,在形式上比restTemplate更简单,风格上更好的面向接口编程。 在
阅读全文
摘要:consul 运行原理 集群模式中加入 Consul Client模式,Client因为加入了LAN gossip协议组成网络中(高速局域网),可以识别故障的Server节点并找到可用的Server节点继续工作,其实Server模式负责的是用WAN gossip协议组成的网络进行跨广域网的数据同步(
阅读全文
摘要:原理就是把项目中application.yml中的配置移到consul中进行远程管理 当项目启动的时候,去远程读取配置文件的内容,并加载。 项目中resource下面的application.yml删除 新建bootstrap.yml文件 spring: application: name: con
阅读全文
摘要:服务提供者应用 两个模块 (prot:8021,8021) pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.
阅读全文
摘要:[root@machine136 nacos]# docker search consul NAME DESCRIPTION STARS OFFICIAL AUTOMATED consul Consul is a datacenter runtime that provides… 1372 [OK]
阅读全文
摘要:准备 检测系统版本和内核版本 安装 自动安装脚本 curl -sSL https://get.daocloud.io/docker | sh 启动docker 搜索docker可用资源 docker search mysql 登录hubdocker查看 可用版本 https://hub.docker
阅读全文
摘要:官网: https://spring.io/ 更多spring cloud zookeeper 参考 https://docs.spring.io/spring-cloud-zookeeper/docs/current/reference/html 左侧菜单 向下找到 spring Cloud Zo
阅读全文
摘要:解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题 需要检查的步骤: 1.是否mapper.java文件上使用了注解@Mapper 或者 在启动类上扫描了Mapper类 @Mapper
阅读全文
摘要:官网: https://zookeeper.apache.org/ download 下载完成后 赋值文件到centos /opt/software 单机部署 解压到/opt/module tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz -C /opt/mod
阅读全文
摘要:功能:在主机上分发文件到其他机器 在主机machine136上进行如下操作(master) 1、安装 rsync yum install -y rsync 2、bin下创建 xsync 转自:(82条消息) Linux xsync命令脚本_hunheidaode的博客-CSDN博客_linux xs
阅读全文
摘要:SpringCloud 消费请求Eureka调用服务提供者报错 springCloud 2022.0.1 springboot 3.0.2 消费程序 通过eureka集群查询服务,根据eureka中注册的服务名称请求最终的服务, //eureka 注册的服务名称, public static fin
阅读全文
摘要:@EnableDiscoveryClient和@EnableEurekaClient 将一个微服务注册到Eureka Server(或其他服务发现组件,例如Zookeeper、Consul等)的步骤 1、添加客户端依赖 2、写注解 注意 现在可省略了 :在启动类上添加注解@EnableDiscove
阅读全文
摘要:RestTemplate的超全讲解(全)转 https://blog.csdn.net/weixin_47872288/article/details/121842374 (81条消息) RestTemplate的超全讲解(全)_码农研究僧的博客-CSDN博客_resttemplate 视频地址:
阅读全文
摘要:@RequestMapping @RequestParam @RequestBody @PathVariable与@RequestParam的区别 1) 相同点A. 作用位置相同:都是直接修饰方法参数变量;B. 功能相似:都是将URL中的变量值映射到方法参数上;C. 都具有value属性:将URL变
阅读全文
摘要:druid启动错误解决方法: Druid连接池 :严重: testWhileIdle is true, validationQuery not set 增中配置 在 application.yml 增加如下 : druid: validationQuery: SELECT 1
阅读全文
摘要:POM.XML <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</
阅读全文
摘要:spring boot 3.0 已经自己集成了日志功能 logback SpringBoot 启动时自动加载配置文件,配置文件的默认名称为: logback.xml 或 logback-test.xml 其它的文件需要配置yal logging: config: classpath:logback-
阅读全文
摘要:Spring6基于XML实现Bean 管理(属性赋值) IOC和DI有什么区别:DI是IOC中的具体实现,DI表示依赖注入或注入属性,注入属性要在创建对象的基础之上完成 依赖注入方法 bean属性赋值方法只有一种:构造器注入(之所以这么说是为了便于记忆),我们知道构造器有两种: 无参构造,有参构造。
阅读全文
摘要:https://blog.csdn.net/qq_40625778/article/details/125229241 (78条消息) Maven安装与配置教程_mvn配置_IT学长的博客-CSDN博客
阅读全文
摘要:下载视频的工具推荐: 开源!!!! 源码 https://github.com/leiurayer/downkyi 发布版本 https://github.com/leiurayer/downkyi/releases/tag/v1.5.6
阅读全文
摘要:登录到控制台, ping 不通网络 解决方法 通过命令找到网卡的配置文件见 ll /etc/sysconfig/network-scripts/ | grep ifcfg-en 编辑配置文件 vi ifcfg-ens33 修改noboot 为 yes 保存 esc + :wq systemctl r
阅读全文
摘要:1、Linux 安装JDK(略)参考之前的文章 2、创建springboot 程序 项目文件结构 注意 controller包要与Application 同一级 设置tomcat 端口 运行本机测试 package 发布 双击 package 将打包出来的jar 上传到Linux 服务器 /home
阅读全文
摘要:1、下载jdk rpm Java Downloads | Oracle 中国 https://www.oracle.com/cn/java/technologies/downloads/#jdk19-linux xftp工具登录CENTos7 上传文件 rmp -ivh jdk-19_linux-x
阅读全文
摘要:1、找到网卡配置文件 ll /etc/sysconfig/network-scripts/ | grep ifcfg-en 2、编辑配置文件开启系统启动时自动启动网络,并保存文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33 3、重启网络服务 syste
阅读全文
摘要:在安装的时候,选择了图形界面安装,一段时间后,想还是直接登录到控制台,需要的时候在手动登录到图形界面, 在CentOS7中的设置方法不同与之前的版本 在之前的版本中是修改配置文件 sudo nano /etc/default/grub 发现已经没有了 GRUB_CMDLINE_LINUX_DEFAU
阅读全文
摘要:1、linux 下载 http://mirrors.aliyun.com/centos/7/isos/x86_64/ centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 (aliyun.com) 选择绝大多数人下载的版本就可以 了,使用IDM下载 启动VMware VMware®
阅读全文