自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (2)
  • 收藏
  • 关注

原创 vue3 组件通信方式

我要传递多个参数

2023-09-02 15:06:32 530

原创 Netty 核心组件

Netty 核心组件Bootstrap 启动类Bootstrap类是Netty提供的一个工程类。基于它来完成Netty的客户端或者服务器端的Netty组件的组装,以及Netty程序的初始化。在Netty在,有两个启动器类。分布对于服务器和客户端。启动流程创建一个服务器端的启动器ServerBootstrap bootstrap = new ServerBootstrap();创建反应器线程组 EventLoopGroup// 创建 反应器线程组 bossGroup和 worker

2022-05-14 22:08:32 626

原创 Java NIO 简介

服务器端检测用户上线,离线,并实现消息转发 客户端通过channel实现无阻塞发送消息给其他所有用户,并接受其他用户发送消息

2022-04-28 17:56:18 1083

原创 高性能IO底层原理

文章目录高性能IO底层原理IO读写的基础原理内核缓冲区与进程缓冲区典型的系统调用流程高性能IO底层原理IO读写的基础原理​ 用户程序进行IO的读写,依赖于底层的IO读写。都会用到read&write两大系统调用,不通操作系统中,IO读写系统调用的名称可能不完全相同,功能基本一致。在用户程序中,无论是Socket的IO还是文件IO操作都属于上层应用开发。​ read系统调用:并不是直接从物理设备把数据读取到内存中,是把数据从内核缓冲区复制到进程缓冲区​ write系统调用:也不是直接把数据写

2022-04-26 17:42:38 1251

原创 MySQL 一次请求处理的处理流程

SQL语句→查询缓存→解析器→优化器→执行器

2022-03-29 14:08:08 312

原创 MySQL8 存储引擎以及文件解析

MySQL 存储引擎以及文件解析服务器中的目录及文件查看mysql的文件存储路径, 除了information_schema这个数据库之外,其他数据库都在当前目录存在文件夹[root@MiWiFi-R3P-srv mysql]# pwd/var/lib/mysql[root@MiWiFi-R3P-srv mysql]# ll总用量 188880-rw-r-----. 1 mysql mysql 56 2月 14 21:09 auto.cnf-rw-r-----. 1 my

2022-03-28 15:56:32 1555

原创 MySQL 8 的主要目录结构

MySQL 8 的主要目录结构数据库文件的存放路径MySQL数据库文件的存放路径:/var/lib/mysql/相关命令目录相关命令目录:/usr/bin(mysqladmin、mysqlbinlog、mysqldump等命令)和/usr/sbin。配置文件目录配置文件目录:/usr/share/mysql(命令及配置文件),/etc/mysql(如my.cnf)数据库和文件系统的关系默认数据库mysqlMySQL 系统自带的核心数据库,它存储了MySQL的用户

2022-03-18 17:33:40 1726

原创 docker+jenkins+gitee配置持续集成部署

docker+jenkins+gitee配置持续集成部署

2022-03-17 12:34:18 2412 1

原创 服务雪崩的解决思路

服务雪崩服务雪崩效应是一种因“服务提供者的不可用”(原因)导致“服务调用者不可用”(结果),并将不可用逐渐放大的现象如下图: 一个服务失败,导致整条链路的服务都失败的情形,我们称之为服务雪崩我把服务雪崩的参与者简化为 服务提供者 和 服务调用者,并将服务雪崩产生的过程分为以下三个阶段来分析形成的原因:服务提供者不可用重试加大流量服务调用者不可用服务雪崩的每个阶段都可能由不同的原因造成,比如造成 服务不可用 的原因有:硬件故障程序 Bug缓存击穿用户大量请求硬件故障可能为硬件

2022-03-09 16:32:18 382

原创 eureka服务心跳检测和自我保护机制

自我保护机制当EurekaServer与EurekaClient网络不通的情况下,EurekaServer不会将EurekaClient服务剔除。通过一个场景来了解一下:有两个服务:用户服务app-user、订单服务app-order,用户服务做了集群,有两台机器,分别是8010和8011现在order使用负载均衡的轮询机制,调用user的接口,可以看到是8010和8011轮询访问的。那如果现在8010这台服务宕机了,会是什么情况?​当访问8010的时候,就报错了,我们再看一下Eureka

2022-03-03 14:18:42 1864

原创 eureka 服务注册发现以及服务调用

搭建服务提供者新建maven项目配置pom引入eureka客户端<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency&gt

2022-03-03 13:52:54 339

原创 单机版eureka服务搭建以及界面解读

创建复合maven工程父项目配置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/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http:/..

2022-03-03 10:25:39 394

原创 服务治理的技术选型

分布式系统CAP定理分布式系统协议只能在CAP这三者间有所折中。Consistenct (强一致性)也称原子一致性/线性一致性在任意时刻,更新操作成功并返回客户端完成后,所有节点在同一时间的数据完全一致。强一致性顺序一致性任何一次读都能读到某个数据的最近一次写的数据。系统的所有进程的顺序一致,而且是合理的。即不需要和全局时钟下的顺序一致,错的话一起错,对的话一起对。弱一致性系统中的某个数据被更新后,后续对该数据的读取操作可能得到更新后的值,也可能是更改前的值。

2022-03-02 18:03:58 106

原创 微服务利与弊的思考

文章目录优点缺点采不采用微服务优点快速响应变更单一职责独立部署独立拓展边界清晰不过度受制于技术栈精细粒度业务控制降级熔断局部限流面向业务/领域模型不依赖数据模型易于抽象缺点部署结构复杂模块众多额外组件依赖平台支撑依赖微服务组件研发成本分布式问题一致性异常补偿拆分的水平粒度过粗/过细采不采用微服务业务规模 (成本收益)预期迭代的次数以及需要的效率研发团队配置业务领域 (服务如何拆分以及粒度)

2022-03-01 17:51:14 136

原创 no sapjco3 in java.library.path

问题记录: no sapjco3 in java.library.path对接厂家的SAP系统, 部署至linux环境时报下面的错误日志, 查了缺libsapjco3.so包对应包下载地址 链接:https://pan.baidu.com/s/1YO0ZJq4J_SL9dI8VyuDsBg 提取码:8888查了很多帖子是放在tomcat里, 现在springboot直接jar跑不方便加进去, 下面是配置到环境变量中错误日志java.lang.UnsatisfiedLinkError: no s

2021-09-29 14:14:18 3706

原创 fastDFS 配置 nginx 访问

fastDFS配置nginx访问nginx 安装教程fastDFS 安装教程安装nginx插件 下载地址 或者fastDFS安装教程里面的百度云有 # 解压nginx的fastdfs压缩包 tar -zxvf fastdfs-nginx-module-1.22.tar.gz cp mod_fastdfs.conf /etc/fdfs/nginx重新make下add-module是nginx插件解压后的目录./configure \--prefix=/usr/local/

2021-08-26 13:47:41 347

原创 URL请求流程和ip addr解读

发起一次URL请求流程在浏览器输入URL http://wangjialun.top/浏览器通过DNS或者HTTPDNS去查找IP地址知道目标地址后,浏览器会将请求打包,普通请求使用HTTP协议或者使用HTTPS加密传输DNS,HTTP,HTTPS所在的层为应用层,经过应用层封装后,浏览器会通过socket编程将应用层的包交给下一层传输层传输层有两种协议,一种无连接的协议UDP,一种面向连接的协议TCP,TCP协议会保证这个包能够到达目的地,如果不能到达会重新发送TCP协议里面会有两个端口,一

2021-08-24 10:58:49 216

原创 maven 梳理

文章目录基本概念Maven的目录结构仓库种类依赖管理Maven 项目目录结构Maven的常用命令Maven的生命周期Maven 概念模型坐标pom 基本配置pom 解决jar冲突方式基本概念解决方式Maven 私服(nexus)nexus.propertiesnexus 仓库类型nexus 初始仓库maven 配置 nexus基本概念​ Maven 是一个项目管理工具,它包含了一个项目对象模 型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lif

2021-08-24 10:47:18 124

原创 基于logstash同步mysql数据到elasticsearch

基于logstash同步mysql数据到elasticsearch去官网https://www.elastic.co/cn/downloads/past-releases#logstash下载与elasticsearch同版本的安装包wget https://artifacts.elastic.co/downloads/logstash/logstash-6.4.3.tar.gz解压 tar -zxvf logstash-6.4.3.tar.gz下载一个mysql驱动包mysql-con

2021-08-20 18:04:49 166

原创 word转pdf的几种方法

word转pdf的几种方法需求是实现将word转换成pdf在线预览, 试了几种方法发现样式效果最好的是aspose-words,但是需要破解, 附带了激活码openOffice 与 libreOffice两款都是运行在服务器上面的office处理软件, 通过命令行的方式去执行转换命令openOffice下载地址libreOffice下载地址下载安装好之后, 需要在代码中引入jodconverter相关jar包依赖. (jodconverter.zip解压后,lib下的都需要引入)相关软

2021-08-18 17:36:59 1061

原创 公网ip经常变动的解决方法

解决公网ip经常变动问题​ 家里申请了电信的公网ip, 但是如果停电或者重新拨号都会导致这个ip变更.很多配置好的应用都需要重新配置ip地址太麻烦了思考现成的产品类似花生壳这些内网穿透都要收费或者限速, 我已有公网ip感觉不划算想到了域名配置dns解析, 应用里面都配置域名代替ip地址.每次ip变了我只需要去改一下域名的dns解析就可以了但是还会有问题, 每次都需要手动改一下, 并且还必须得连上家里网才能知道最新的公网ip查了阿里云/腾讯云/华为云等等dns解析都对外提供了api文

2021-08-11 14:03:12 25082 5

原创 redis 三主三从集群模式

Redis 三主三从集群模式redis安装参照之前的 centos7安装redis ,虚拟机里面装六台带redis服务.安装完成后在redis.conf修改配置# 开启集群模式cluster-enabled yes# 每个集群节点都有一个集群配置文件。它是由Redis节点自动创建和更新的。每个Redis集群节点都需要一个不同的集群配置文件。# 注:确保在同一系统中运行的实例没有重叠的集群配置文件名。集群的配置,配置文件首次启动自动生成。cluster-config-file nodes-637

2021-08-10 17:52:04 270

原创 redis 哨兵(sentinel)模式实现

Redis 哨兵(sentinel)模式实现之前搭建的主从复制(读写分离)在主节点宕机后,从节点依然提供数据读,但是不能进行数据写操作。需要手动将某个从节点切换成主节点才行,哨兵模式就是解决这个手动操作的问题。当一个集群中的master失效之后,sentinel可以选举出一个新的master继续工作,然后通过发布订阅模式通知其他从服务器,修改配置切换主节点。核心配置 sentinel.conf# 保护模式protected-mode no# 配置端口port 26379# 以守护进程模式启

2021-08-10 14:41:49 401

原创 redis 缓存过期处理与内存淘汰机制

Redis 缓存过期处理与内存淘汰机制缓存过期处理(主动)定时删除定时随机的检查过期的key,如果过期则清理删除。# 默认每秒钟10次,把这个设置的越大意味着占用的CPU也就越多hz 10(被动)惰性删除当客户端请求一个已经过期的key的时候,那么redis会检查这个key是否过期,如果过期了,则删除,然后返回一个nil。这种策略对 CPU 比较友好,不会有太多的损耗,但是内存占用会比较高。内存淘汰机制maxmemory :当内存已使用率到达配置值,则开始清理缓存如果没

2021-08-10 11:52:51 58

原创 redis 主从复制(读写分离)

redis 主从复制(读写分离)将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master),后者称为从节点(slave);数据的复制是单向的,只能由主节点到从节点。默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。主从之间数据复制存在消耗,建议一主两从就可以了。作用负载均衡在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主

2021-08-07 16:36:17 224

原创 redis RDB和AOF持久化机制

redis 持久化机制RDB(Redis DataBase)特点通过配置触发条件或者手动触发将内存中数据写入到磁盘的临时文件中,作为快照存储。恢复时候把快照读进内存# 核心配置# 900秒(15分钟)内至少1个key值改变(则进行数据库保存--持久化) # 300秒(5分钟)内至少10个key值改变(则进行数据库保存--持久化) # 60秒(1分钟)内至少10000个key值改变(则进行数据库保存--持久化) save 900 1 save 300 10 save 60 1

2021-08-07 15:58:51 71

原创 keepalived 双主热备

keepalived 双主热备首先配置好双机主备参照 我之前的 安装配置在之前主机的keepalived核心配置文件中新增一个BACKUP虚拟节点在之前备用机的keepalived核心配置文件中新增一个MASTER虚拟节点之前主机配置! Configuration File for keepalivedglobal_defs { router_id keep_96}## 节省篇幅省略,之前主机配置不需要修改vrrp_instance VI_1 { //...}## 新

2021-08-03 11:29:50 124 1

原创 Keepalived配置Nginx自动重启

Keepalived配置Nginx自动重启编写Nginx重启检测脚本 vim /etc/keepalived/check_nginx_alive_or_not.sh#!/bin/bash #判断nginx服务是否启动,如果不存在,调用nginx启用命令,并停止2秒,若#启动失败,杀掉keepalivedA=`ps -C nginx --no-header |wc -l`if [ $A -eq 0 ];then /usr/local/nginx/sbin/nginx sleep 2 if

2021-08-02 17:20:16 293

原创 keepalived 双机主备高可用

keepalived 双机主备主机配置安装到https://keepalived.org/download.html 官网下载wget https://keepalived.org/software/keepalived-2.2.2.tar.gztar -zxvf keepalived-2.2.2.tar.gz创建makefile 文件./configure --prefix=/usr/local/keepalived --sysconf=/etcmakemake install

2021-08-02 15:50:54 244

原创 nginx 配置HTTPS域名证书

配置HTTPS域名证书安装SSL模块(通过nginx -V 检查下有没有安装过,安装过则省略)新增ssl模块(原来的那些模块需要保留)./configure \--prefix=/usr/local/nginx \--pid-path=/var/run/nginx/nginx.pid \--lock-path=/var/lock/nginx.lock \--error-log-path=/var/log/nginx/error.log \--http-log-path=/var/lo

2021-08-02 10:51:11 129

原创 nginx 反向代理缓存

反向代理缓存主要缓存上游的资源文件到nginx中# 配置上游服务器upstream tomcats { server 192.168.31.96:8088; server 192.168.31.226:8088; server 192.168.31.23:8088;}# proxy_cache_path 设置缓存保存的目录# keys_zone 设置共享内存以及占用空间大小# max_size 设置缓存大小# inactive 超过此时间则缓存自动清理# use_temp_path

2021-08-02 09:52:17 218

原创 nginx 一致性hash理解与实现

一致性hash当某台务器宕机后,hash也会重新计算,导致很多问题。可以配置一致性hash算法理解成一个hash闭环,用户和服务器都hash后落在环上。访问通过顺时针命中最近的服务器,当某台服务器宕机,访问落在下一台上面。不会整个重新hash取模对其他区域造成影响。server_id_ 字段,如果配置id字段,则使用id字段作为server标识,否则使用server ip和端口作为server标识,使用id字段可以手动设置server的标识,比如一台机器的ip或者端口变化,id仍然可以表示这..

2021-08-02 09:50:41 551

原创 nginx 配置keepalived提供吞吐量

配置keepalived提供吞吐量keepalived : 设置长连接处理的数量proxy_http_version :设置长连接http版本为1.1proxy_set_header :清除connection header 信息upstream tomcats { server 192.168.31.96:8088; server 192.168.31.226:8088; server 192.168.31.23:8088; # 设置长连接处理的数量 keepaliv

2021-08-02 09:50:22 154

原创 nginx upstream 集群配置

upstream 集群配置#配置上游服务器upstream tomcats { server 192.168.31.96:8088 down; server 192.168.31.226:8088; server 192.168.31.23:8088;} server { listen 80; server_name www.shop.com; location / { proxy_pass http://tomcat

2021-07-30 10:28:08 512

原创 nginx 防盗链配置支持

防盗链配置支持#对源站点验证valid_referers *.wangjialun.top;#非法引入会进入下方判断if ($invalid_referer) { return 404;}

2021-07-30 10:27:29 46

原创 nginx 路由 root 与 alias 区别

路由 root 与 alias 区别假如服务器路径为:/home/resource/files/img/face.png root路径完全匹配访问 配置的时候为:location /resource { root /home } 用户访问的时候请求为: url:port/resource/files/img/face.pngalias 可以为你的路径做一个别名,对用户透明 配置的时候为:location /hello { root /home/resource }..

2021-07-30 10:18:33 690

原创 nginx.conf 详解

结构main (全局配置)event (配置工作模式以及连接数)http (http模块相关配置)server (虚拟主机配置,可以配置多个虚拟主机)location (路由规则)upstream (集群,内网服务器)参数# 设置worker进程的用户,指的linux中的用户,涉及到nginx操作目录或文件的一权限,默认为 nobody#user nobody;# worker进程工作数设置,CPU有几个,就可以设置几个,或者设置为N-1也行worker_pr

2021-07-30 10:16:58 1098

定时修改域名解析记录, 下载后先看说明呀

定时修改域名解析记录, 下载后先看说明呀

2022-11-07

PotPlayer1.7.21568

PotPlayer 多媒体播放器

2022-03-03

Postman-win64-9.13.0-Setup

postman接口调用工具

2022-03-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除