自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 java-JUC多线程

异步创建线程的四种方式线程池线程池的7大参数工作流程拒绝策略创建线程的四种方式继承Thread实现Runnable接口实现Callable接口 + FutureTask(可以拿到返回结果, 可以处理异常)线程池线程池工作中实际基本上都是使用线程池, 限制资源被无限使用而把资源消耗尽.线程池的7大参数corePoolSize: 默认情况下,在创建了线程池后,线程池中的线程数为0,当有任务来之后,就会创建一个线程去执行任务,当线程池中的线程数目达到corePoolSize后,就会把到达的

2021-12-05 23:31:16 233

原创 Springcloud-Sentinel

流量监控Sentinel作用实现方案概念作用限流熔断降级, 防止请求堆积秒杀削峰填谷实现方案Hystrix这个已经停止维护了.Resilience4jspringboot推荐, 国外使用比较多sentinel阿里巴巴开发概念资源, 被保护的资源, 代码, 程序, 服务都可以被当做资源规则, 保护资源的规则...

2021-11-10 10:56:44 391

原创 Springboot-redis-springcache缓存-分布式锁redisson

redis

2021-11-07 22:44:41 620

原创 设计模式-七大原则

七大原则七大原则单一职责接口隔离原则依赖倒转原则(DI)七大原则单一职责原则接口隔离原则依赖倒转原则(DI)单一职责一轮上一个类只应该负责一个职责, 但可以有多个方法.好处:降低复杂度降低变更引起的风险提高可读性, 可维护性通常在代码足够简单时在类级别遵循单一职责, 复杂的情况下为较少代码, 在方法级别上遵循单一职责原则./** * 单一职责原则1 * 不遵循单一职责原则 */public class SingleResponsibility_1 { publ

2021-09-06 23:07:30 111

原创 K8s-简介及安装

k8s参考文档参考文档中文官网: https://kubernetes.io/zh/中文社区: https://kubernetes.org.cn/官方文档: https://kubernetes.io/zh/docs/home/社区文档: http://docs.kubernetes.org.cn/

2021-06-23 00:17:59 166

原创 Springboot-thymeleaf

thymeleaf初始化使用遍历普通属性赋值初始化引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>yaml配置默认html文件在classpath:templates下, 静态济源文件在cla

2021-06-02 20:50:00 49

原创 工具-网页工具

在线编辑json在线解析及格式化json类之间的转换pdf转wordcron表达式MD表格生成在线正则表达式二维码生成器编码转换yml<=>properties在线服务boot CDN微信 CDN开源镜像阿里云镜像服务站点Docker HUB趋势分析谷歌指数百度指数百度流量研究院维基百科维基辞典1维基辞典2...

2021-06-02 16:21:34 49

原创 Linux-常用工具及操作

常用工具版本Tab键补全命令shell脚本乱码常用命令查看内核bash快捷键版本获取发行版本官网: https://wiki.centos.org/Download国内镜像: http://mirrors.aliyun.comhttp://mirrors.sohu.comhttp://mirros.163.comTab键补全命令yum install bash-completion,安装完成后生效,按下Tab键补全命令shell脚本乱码vim 文件 输入:set fileformat

2021-06-02 15:12:41 55

原创 Springboot-Maven

maven作用域单继承版本号测试版本候选版本发布版本作用域scope, 默认值为compile 运行期有效, 需要打入包中provided 编译期有效, 运行时不需要提供, 不会打入包中runtime 编译不需要, 运行时需要, 需要打入包中 test 测试需要, 不会打入包中system 非本地仓库引入, 会存在系统的某个路径下的jar包, 一般不会使用单继承单继承:maven的继承跟java一样,单继承,也就是说子model中只能出现一个parent标签;版本号测试版本Alph

2021-06-02 15:12:18 77

原创 Windows10

打开控制面板 -> 启用或关闭windows功能 -> Internet信息服务 ->勾选全部FTP服务器选项及Web管理工具下面的Ⅱ管理控制台系统自动配置成功后,在开始屏幕的搜索中输入“IIS”,然后点击打开“IIS管理器”打开“IIS管理器”后,在左栏的“网站”上点击右键,打开“添加FTP站点点击“下一步”,按照下图提示,设置“绑定和SSL设置”,在“IP地址”处,可以用内网IP也可以用外网IP,访客自然也就根据你的IP设定来决定;...

2021-06-02 14:23:10 53

原创 Jvm-常用参数设置及案例

jvm常用参数常用参数如何设置参数案例分析案例1-每日百万的支付系统反面案例常用参数-Xms: java堆内存大小-Xmx: java堆内存最大大小-Xmn: java堆内存中新生代大小, 扣除新生代剩下的就是老年代-XX:PermSize: 永久代大小-XX:MaxPermSize: 永久代最大大小-Xss: 每个线程的栈内存大小-XX:MaxTenuringThreshold: 多少岁进入老年代, 默认是15岁-XX:PretenureSizeThreshold: 大对象直接进入老年

2021-06-02 10:55:53 475

原创 synchronize本地锁和reids锁

锁本地锁分布式锁问题 使用redis的setnx实现分布式锁的问题redission本地锁有点比较快缺点, 分布式情况下, 只能锁住当前节点服务分布式锁相比本地锁比较重量级优点: 可以锁所有节点的服务方式1: redis setnx实现分布式锁, 需要保证加锁的原子性, 解锁的原子性以及业务超时锁的自动续期三个问题方式2: redission实现分布式锁问题 使用redis的setnx实现分布式锁的问题设置超时时间, 但是还有问题, 如果在设置超时时间时候异常了呢? 保证setnx的原子

2021-06-02 01:26:03 429 1

原创 Jvm-分代模型

分代模型分代模型都有哪些永久代什么时候可以被回收?对象在分代模型中如何分配流转?垃圾回收划分为新生代和老年代的好处是方便垃圾回收, 不同的对象存在不同的区域, 方便垃圾回收器用不同的算法进行快速回收.分代模型都有哪些新生代: 堆内存中老年代: 堆内存中永久代: 永久代就是方法区永久代什么时候可以被回收?该类的所有实例都应经在堆内存中被回收加载这个类的ClassLoader已经被回收该类的Class对象没有任何引用满足以上三点, 永久代的类就可以被回收对象在分代模型中如何分配流转

2021-05-31 15:18:37 76

原创 Jvm-内存区域

内存区域jvm都有哪些内存区域, 都是干嘛的存放类的方法区程序计数器虚拟机栈栈帧堆内存本地方法区堆外内存jvm都有哪些内存区域, 都是干嘛的存放类的方法区jdk1.8之前叫方法区, jdk1.8及以后, 叫元数据区域Metaspace存放加载过来的类常量池程序计数器用来记录当前线程执行到了哪一行指令.虚拟机栈当前线程执行的方法的存放记录变量等栈帧线程执行了一个方法, 就会对方法调用创建一个栈帧, 栈帧包含以下信息局部变量表操作数栈动态链接方法出口堆内存存放局部变量及

2021-05-31 11:20:15 48

原创 Jvm-类加载

类加载类加载7个过程什么时候加载类类加载器和双亲委派机制类加载器双亲委派机制类加载7个过程加载验证: 验证.class文件是否符合规范准备: 给类分配内存空间, 给类变量(static)初始化值如, int初始化为0.解析: 符号引用转换为直接引用初始化: static代码块执行, 类变量, 成员变量赋值使用卸载什么时候加载类按需加载new父类main方法的类类加载器和双亲委派机制类加载器启动类加载器Bootstrap ClassLoader, 加载java下lib

2021-05-31 10:35:03 45

原创 Mysql-索引

mysql索引数据页的结构没有索引的话, 如何查询数据?页分裂主键索引主键索引也是聚簇索引针对主键之外的字段建立的二级索引四种索引类型两种方法数据页的结构大量的数据页是按顺序一页一页存放的,然后两两相邻的数据页之间会采用双向链表的格式互相引用,大致看起来如下图所示。没有索引的话, 如何查询数据?每个数据页里都会有一个页目录,里面根据数据行的主键存放了一个目录,同时数据行是被分散存储到不同的槽位里去的,所以实际上每个数据页的目录里,就是这个页里每个主键跟所在槽位的映射关系,如下图所示。所以假设

2021-05-28 13:39:57 99

原创 Mysql-生产经验

多个Buffer Pool优化并发问题多个线程访问Buffer Pool, 必然要加锁, 但是这样岂不是要影响效率?因为都是在内存中操作的, 所以就算只有一个Buffer Pool, 串行执行, 性能也不会差. 但是再怎么快, 也是串行, 而且这个时候还可能要将数据页加载到缓存页中, 执行了一次IO操作.默认情况下, mysql有一个Buffer Pool, 默认大小是128M, 如果给Buffer Pool分配的内存小于1G的话, 只能有一个Buffer Pool.如果大于1G, 比如8G的内存,

2021-05-27 15:51:47 49

原创 Mysql-事务

多个线程执行事务时, 会产生事务冲突, mysql如何解决事务冲突的?问题:多个事务并发执行的时候,可能会同时对缓存页里的一行数据进行更新,这个冲突怎么处理?是否要加锁?可能有的事务在对一行数据做更新,有的事务在查询这行数据,这里的冲突怎么处理?解决多个事务并发运行的时候,同时写和同时读写的一些并发冲突的处理机制,包括了MySQL事务的隔离级别、MVCC多版本隔离、锁机制,等等。...

2021-05-27 15:38:17 52

原创 Mysql-物理存储

表, 字段, 行与表空间, 数据页的区别我们操作的表, 字段, 行是逻辑概念, 实际存储在磁盘上的是表空间, 数据区, 数据页的物理概念.

2021-05-26 16:12:06 257

原创 Mysql-组件

Buffer Poolbuffer pool 默认大小是128M, 不过在生产环境下是偏小的. 一般要调整大一些. 16核32G服务器上一般设置为2G.[server]innodb_buffer_pool_size = 2147483648数据页/缓存页磁盘中不是直接存的一行一行的数据, 而是抽象成一个一个的数据页存放的, 对应到Buffer Pool中就是一个一个的缓存页.比如要更新一条数据, 就会找到这行数据所在的数据页加载到Buffer Pool中.磁盘中数据页默认大小是16KB.

2021-05-24 17:30:37 74 1

原创 mysql-架构流程

mysql术语问题术语mysql驱动访问数据库, 与mysql建立网络连接, 操作mysql中的sql语句, java mysql-connector-java数据库连接池解决多线程情况下只有一个mysql连接的问题解决mysql连接频繁的创建销毁的问题常见的数据库连接池: DBCP, C3P0, DRUID等.mysql服务器端也有一个数据库连接池连接器: 通过一个线程和客户端连接, 获取发过来的数据, 如sql语句sql接口: 通过网络连接获取sql语句, 交给

2021-05-24 10:34:33 123 2

原创 React-react-redux

react-redux安装公共状态管理安装npm install react-reduxnpm install reduxnpm install redux-thunk容器组件和UI组件

2021-04-30 01:44:04 36

原创 Springboot-mysql

mysqlMySQL 8.0 Public Key Retrieval is not allowedMySQL 8.0 The server time zone value时间格式及东八区配置MySQL 8.0 Public Key Retrieval is not allowedurl中添加&allowPublicKeyRetrieval=trueMySQL 8.0 The server time zone value数据库修改配置set global time_zone=’+8

2021-04-25 23:04:17 51

原创 Springcloud-alibaba-服务注册和配置中心之Nacos

文章目录是什么Nacos = Naming + configuration + service是什么一个更容易构建云原生运用的动态服务发现, 配置管理和服务管理平台.Nacos = eureka + config + bus下载地址: https://nacos.io/zh-cn/

2021-04-21 23:33:50 197

原创 Springcloud-消息驱动之stream

文章目录概念概念stream能干什么?屏蔽底层消息中间件的差异, 降低切换成本, 统一消息的编程模型.stream是什么?官方定义stream是一个构建消息驱动微服务的框架.应用程序通过inputs和outputs来与springcloudstream中的Binder对象交互.我们通过配置来binding(绑定), 而stream中的Binder对象负责与消息中间件交互.所以我们只需要搞清楚如何与stream交互就可以方便使用消息驱动的方式.通过使用spring intergr

2021-04-20 22:20:32 119 1

原创 Springcloud-消息总线之bus

文章目录spring cloud bus消息总线spring cloud bus消息总线支持两种消息总线: RabbitMQ和Kafka实现方式: 配置中心服务端发送消息给bus, 然后bus通知客户端以RabbitMQ为例.原理: configclient 都监听一个RabbitMQ的topic(默认是springCloudBus), 当一个服务刷新数据的时候, 消息就会放到topic中, 这样其他服务监听这个topic就能收到通知, 然后更新自己的配置.配置中心服务端和客户端添加依赖&

2021-04-20 21:53:36 87

原创 Springcloud-配置中心之config

文章目录服务端客户端服务端添加依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId></dependency>yaml配置...spring: ... cloud: config: server:

2021-04-20 20:29:16 92 2

原创 Springcloud-服务治理Hystrix

@tochystrix能够实现服务降级, 服务容断, 服务限流, 服务隔离.服务降级: 服务异常, 超时, 熔断, 线程池/信号量打满, 会导致服务降级, 服务降级就是提供另外一个返回信息给调用方, 而不至于一直等待.服务熔断: 访问量达到最大时, 直接拒绝访问, 并调用服务降级的方法返回友好的提示. 先会进行服务降级, 然后熔断, 然后恢复调用链路服务限流: 高并发秒杀等场景, 严禁所有请求一拥而上, 排队处理.雪崩效应:多个微服务之间调用的时候, 假设A调用B和C, B和C又调用其他的微服务

2021-04-19 23:34:01 119

原创 Springcloud-服务调用之OpenFeign

文章目录什么是openFeign客户端编码超时控制openfeign的日志级别配置什么是openFeignopenFeign和RestTemplate差不多, 都是服务调用的, openFeign用于各个微服务之间的调用更方便, openFein整合了ribbon, 所以也具有负载均衡功能, 并且使用openFeign自动会启动负载均衡.客户端编码引入依赖<dependency> <groupId>org.springframework.cloud</grou

2021-04-18 22:29:35 232

原创 Springcloud-服务调用负载均衡之Ribbon

文章目录ribbon是什么nginx和ribbon与springboot的集成Ribbon7个自带的负载均衡算法如何替换成其他负载均衡策略ribbon是什么netflix旗下的一个能提供实现负载均衡和服务调用的技术. Ribbon客户端组件提供一套完善的配置项如连接超时, 重试等. 简单地说就是在配置文件中列出Load Balancer后面的所有机器, Ribbon会自动的帮助你基于某种规则(如简单轮训, 随机连接等)去连接这些服务器, 我们能够很容易的基于ribbon实现自定义的负载均衡算法. rib

2021-04-18 21:08:18 108

原创 Springcloud-服务注册与发现总结

文章目录可实现服务注册与发现的技术点eureka, zookeeper, Consul的区别可实现服务注册与发现的技术点eurekazookeeperConsulNacos(重点)eureka, zookeeper, Consul的区别语言CAP健康检查支持协议springcloud是否集成eurekajavaAP可配支持HTTP是ConsulgoCP支持HTTP/DNS是zookeeperjavaCP支持HTTP是

2021-04-18 15:34:41 39

转载 Springcloud-服务注册与发现之Consul

原文地址

2021-04-18 14:32:52 38

原创 Springcloud-服务注册中心之zookeeper

zookeeper业务服务提供者业务服务消费者业务服务提供者添加依赖注意可能会出现jar包冲突, 依赖的zookeeper包和zookeeper服务版本不一致. 就需要排除掉cloud中的zookeeper版本,然后引入zookeeper匹配版本的jar包.在zookeeper中注册的是临时节点<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>s

2021-04-18 14:13:54 141

原创 zookeeper

zookeeper概述工作机制特点数据结构应用场景开机时leader选取机制(重点)节点类型监听器原理(重点)写数据流程安装(docker-compose)单机版三个节点的集群springboot继承zookeeper概述zookeeper是一个开源的分布式的, 为分布式服务提供协调服务的Apache项目。zookeeper = 文件系统 + 通知机制工作机制是一个基于观察者模式设计的分布式服务管理框架,每个注册到zookeeper的服务都是一个观察者,zookeeper负责管理每个观察者都比

2021-04-18 13:09:21 135

原创 Springcloud-服务注册中心之eureka

文章目录为什么要使用服务注册中心eureka单机模式服务端为什么要使用服务注册中心服务治理 管理服务的ip:port,不用管理一堆的ip实现负载均衡,容错eureka单机模式假设有两个客户端,一个是提供服务的payment服务,一个是消费的order模块服务端添加依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cl

2021-04-17 01:13:11 101

原创 Springcloud-微服务简介

文章目录版本选择服务注册中心服务调用服务降级服务网关配置中心服务总线版本选择参考版本选择详情, 当前最新springboot版本是2.4.5, 所以选择springcloud的版本是2020.0.2版本。不过官网这个springcloud版本号推荐的版本是2.4.3, 所以,这里springboot选择2.4.3, 如果还要用到alibaba的,还要综合考虑alibaba对应的springboot版本服务注册中心euraka停止更新,但是仍然可以用zookeeper与dubbo结合使用,技术

2021-04-16 21:04:00 123

原创 React-redux-devtools

文章目录redux的谷歌插件需要依赖一个库yarn add redux-devtools-extension在store.js中引入import {composeWithDevtools} from 'redux-devtools-extension'如果没有用异步调用export default createStore(allReducer, composeWithDevtools())如果用到了异步调用export default createStore(allReducer,

2021-04-15 00:50:55 92

转载 centos8安装nodejs

文章目录To install the Yarn package manager, run:通过官方查询需要安装的版本https://github.com/nodesource/distributions在CentOS下获取相应版本的nodejs资源(以NodeJS 14.x为例)粘贴 curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -运行 sudo yum install -y nodejs 进行nodejs安装

2021-04-11 22:14:50 1094

转载 vscode-前端插件

文章目录Auto Close TagAuto Rename TagBeautifyBracket Pair ColorizerDebugger for ChromeESLintHTML CSS SupportHTML SnippetsJavaScript(ES6) code snippetsjQuery Code SnippetsMarkdown Preview EnhancedmarkdownlintMaterial Icon Themeopen in browserPath IntellisenseRe

2021-04-08 22:32:27 358

原创 springboot-Conditional

@ConditionalOnProperty:如果有指定的配置,条件生效;@ConditionalOnBean:如果有指定的Bean,条件生效;@ConditionalOnMissingBean:如果没有指定的Bean,条件生效;@ConditionalOnMissingClass:如果没有指定的Class,条件生效;@ConditionalOnWebApplication:在Web环境中条件生效;@ConditionalOnExpression:根据表达式判断条件是否生效。...

2021-04-08 00:57:06 61

空空如也

空空如也

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

TA关注的人

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