自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 cpu使用率和cpu负载的区别

处于D状态的进程通常是在等待IO,通常是IO密集型任务,如果大量请求都集中于相同的IO设备,超出设备的响应能力,会造成任务在运行队列里堆积等待,也就是D状态的进程堆积,那么此时Load Average就会飙高。在电话亭使用过程中,肯定会有人打完电话走掉,有人没有打完电话而选择重新排队,更会有新增的人在这儿排队,这个人数的变化就相当于任务数的增减。当然, CPU并不会在前三十秒工作,后三十秒歇着,只是说,有的程序涉及到大量的计算,所以CPU利用率就高,而有的程序牵涉到计算的部分很少,CPU利用率自然就低。

2024-07-31 11:15:10 481

原创 记一次线上OOM异常排查

JAVA OOM异常排查

2022-09-05 10:02:01 263 2

转载 mac 安装centos7并配置静态ip&解决ping: www.baidu.com: name or service not known

安装CentOS7这里我们要安装CentOS7 64位,所以选择CentOS7 64位配置我们点击存储后,vmware会自动帮我们创建一个虚拟机,但是我们还没有添加镜像,所以需要先将其关机给新创建的虚拟机设置镜像这里说一下设置成英文的原因,因为英文是更国际化的语言,设置成英文的以后系统出问题了就是英文错误提示,通过英文错误提示更容易在网络上搜到解决办法,用中文的话出错了的话比较难找到解决办法设置时区,默认的是纽约的,这里改成

2021-09-08 09:59:59 720

原创 Redis Cluster 集群搭建

一:环境虚拟机 centos7 +redis-5.0.4.tar.gz,搭建为三主三从集群模式二:Redis 单机安装步骤在/var 建文件夹 redis-cluster/7001 mkdir -p /var/redis-cluster/7001 之后会用到1:获取redis资源wget http://download.redis.io/redis-5.0.4.tar.gz2:解压tar -xzvf redis-5.0.4.tar.gz3:安装cd redis-5.0.

2020-10-26 19:31:21 189 1

原创 Mysql MHA实现主从自动切换

注意在这个安装之前如果没有安装过Mysql的主从复制,请参考这篇博文再进行以下操作:https://blog.csdn.net/java1_boy/article/details/108331303简介MHA(Master High Availability)是一套比较成熟的 MySQL 高可用方案,也是一款优秀的故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到在30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能在最大程度上保证数据的一致性,以.

2020-09-06 12:28:38 2403 1

原创 Mysql安装环境准备以及主从复制搭建教程

Mysql环境搭建准备本教程mysql版本:mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar 下载地址:https://dev.mysql.com/downloads/mysql/系统是:centos7教程是采用安装包的方式进行。Mysql安装步骤基本按照此步骤来,应该是不会出错的;1:将安装包上传到服务器上,使用rz命令操作即可;2:如果机器上之前安装过mysql的,在安装前要清理干净,省的以后出各种问题; 清理原有的m...

2020-09-06 11:35:35 145

原创 Spring事务以及事务传播行为详解

目录 Spring事务以及事务传播行为详解一:事务的概念二:事务的四大特性1:原子性(Atomicity)2:⼀致性(Consistency)3:隔离性(Isolation)4:持久性(Durability)三:事务的隔离级别1:脏读2:不可重复读...

2020-03-18 14:57:55 379

原创 liunx性能调优系列(三)

某个应用cpu使用率达到100%怎么解决CPU 使用率是单位时间内 CPU 使用情况的统计,以百分比的方式展示。top、ps 之类的性能工具展示的 %user、%nice、 %system、%iowait 、%steal 等等意义如下:user(通常缩写为 us),代表用户态 CPU 时间。注意,它不包括下面的 nice 时间,但包括了 gue...

2019-11-11 16:16:09 405

原创 liunx性能调优系列(二)

如何理解“CPU上下文切换”我想你一定很好奇,进程在竞争 CPU 的时候并没有真正运行,为什么还会导致系统的负载升高呢?看到今天的主题,你应该已经猜到了,CPU 上下文切换就是罪魁祸首。我们都知道,Linux 是一个多任务操作系统,它支持远大于 CPU 数量的任务同时运行。当然,这些任务实际上并不是真的...

2019-11-08 17:31:52 117

原创 liunx性能调优系列(一)

理解“平均负载”概念每次发现系统变慢时,我们通常做的第一件事,就是执行 top 或者 uptime 命令,来了解系统的负载情况。比如像下面这样,我在命令行里输入了 uptime 命令,系统也随即给出了结果。$ uptime02:34:03 up 2 days, 20:14, 1 user, load average...

2019-11-07 11:07:26 273

转载 maven pom.xml标签详解

转载自:https://www.cnblogs.com/hyhnet/p/7956197.htmlpom文件作为MAVEN中重要的配置文件,对于它的配置是相当重要。文件中包含了开发者需遵循的规则、缺陷管理系统、组织、licenses、项目信息、项目依赖性等。下面将重点介绍一下该文件的基本组成与功能。标签预览<project> <modelVersion&gt...

2019-05-14 15:12:11 452

原创 spring项目在静态变量上使用@Value()注解注入时产生的问题

一:背景公司对项目的进行改造,配置文件从远程拉取,可以使用@Value直接注入,在静态变量上使用@value时,输出的日志变量值为null。二:解决方法然后查资料得知Spring 不允许/不支持把值注入到静态变量中,但是也给出了解决的方案。把@Value("${path.url}")放在静态变量的set方法上面即可,需要注意的是set方法要去掉static,有些朋友习惯性的快捷键生...

2019-04-26 14:13:16 1006 2

转载 解决idea启动项目报错:Unable to open debugger port(127.0.0.1:60157):java.net.SocketException"socket closed

问题描述:日常操作打开idea准备debug模式启动tomcat项目,却启动失败报错:Unable to open debugger port (127.0.0.1:60157): java.net.SocketException "socket closed"。原因分析:可能是端口被占用导致,其他软件占用了tomcat的端口。可能是在打开Tomcat的情况下关闭了Eclipse、i...

2019-04-10 11:25:53 3992

转载 SpringBoot自动配置原理(转载)

SpringBoot自动配置原理备注:该SpringBoot自动配置原理不适合java刚入门学者以及不熟悉Spring4+Springmvc+maven的同学1、当SpringBoot应用启动的时候,就从主方法里面进行启动的。@SpringBootApplicationpublicclassSpringBoot02ConfigAutoconfigApplication{...

2019-03-12 16:12:48 193

原创 JAVA并发编程笔记(四)-死锁

安全性和活跃性通常是相互牵制的,我们使用锁来保证线程安全,但是滥用锁可能引起锁顺序死锁。我们使用线程池和信号量来约束资源的使用,却可能形成资源死锁。一:死锁死锁最简单的形式:当线程A占有锁L时,想要获得锁M,但是同时线程B持有M,并尝试获得L,这样线程将永远的等待下去。相比于JVM处理死锁,数据库的设计就针对了监测死锁,以及从死锁中恢复。一个事务可能需要取得许多锁,并可能一直持有这些锁,直...

2018-12-17 18:47:33 131

原创 JAVA并发编程笔记(三)-应用线程池(ThreadPoolExecutor)

任务执行框架Executor,可以简化任务与下线程生命周期的管理,它提供一种简便、灵活的方式,可以在任务的提交和执行策略之间进行解耦。尽管其提供了相当大的灵活性,但并非所有的任务都都能适合所有的执行策略,有些类型的任务需要明确地指定一个执行策略。一:任务与执行策略间的隐性耦合1:依赖性任务:提交到线程池的任务需要依赖其他任务,这样就隐性的给执行策略带来了约束。当线程池的任务都是独立的时候,...

2018-12-07 15:07:44 159

原创 JAVA并发编程笔记(二)---Executor框架

一:简介public interface Executor { void execute(Runnable command);}Executor是一个灵活而且强大的框架的基础,可以用于异步任务执行,而且支持很多不同类型的任务执行策略。它还为任务提交和任务执行之间的解耦提供了标准方法。为使用Runnable描述任务提供了通用的方式。Executor的实现提供了对生命周期的支持以及...

2018-11-26 14:26:02 211

原创 JAVA并发编程笔记(一)

一:线程安全线程安全的代码,其实就是管理对状态的访问,通常是共享的、可变的状态。当多个线程同时访问一个状态变量时,这时才会产生线程不安全。1:什么是线程安全性      无状态对象永远是线程安全的。2:原子性      有操作A、B,从操作A的角度来说,其他线程操作B时,B要么执行完成,要么一点都未执行。3:锁      java的内部锁,synchronized 作用...

2018-11-20 16:04:23 275

原创 Spring 源码分析(一)容器的基本实现

一:核心类的介绍Spring中两个比较重要的类DefaultListableBeanFactory和XmlBeanDefinitionReader,其中:DefaultListableBeanFactory是整个bean加载的核心部分,是spring注册和加载bean的默认实现,它继承了AbstractAutowireCapableBeanFactory,实现了ConfigurableList...

2018-10-17 19:08:23 169

转载 Centos7上安装docker (转)

Centos7上安装dockerDocker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;每个月份更新edge版本,如17.09,17....

2018-10-11 15:43:14 100

原创 Java动态代理概述和手写实现动态代理

一:前提Spring中最重要的两种思想:控制反转IOC(Inversion of Control)和面向切面编程AOP(Aspect-Oriented Programming),而AOP最重要的原理就是动态代理,今天我们谈一下动态代理。动态代理顾名思义是代替别人做某些事,它自己不干,让代理帮他做。别的不多说,直接上代码(举的例子可能不恰当)!二:基于JDK的动态代理1:因为Java的动...

2018-09-18 16:54:22 715

转载 设计模式之---动态代理

转载自博客园 https://www.cnblogs.com/gonjan-blog/p/6685611.html  非常好的文章java动态代理实现与原理详细分析关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理。 一、代理模式   代理模式是常用的java设计模式,他的特征是代理类与委托...

2018-09-14 11:02:32 118

原创 Spring MVC 起步

        Spring MVC 是Spring的Web框架和Spring具有完美的契合,Spring MVC基于模型-视图-控制器(Model-View-Controller)模式实现。一:Spring MVC的处理请求的流程1:用户通过浏览器发送请求(1),Spring MVC所有的请求都会先到达前端控制器DispatcherServlet,它本身不做任何事,相当于起到了一个中...

2018-09-07 11:07:24 389

原创 spring boot项目起服务时报org.apache.tomcat.jni.LibraryNotFoundError:解决

spring boot项目起服务时报org.apache.tomcat.jni.LibraryNotFoundError: 如图错误总结:本人使用的是通用mapper,查了好久的错误,突然意识到mapper.xml中的namespace对应的类路径错误,改好之后项目可以启动。  ...

2018-07-25 20:13:19 10080

原创 CentOS 7 部署FTP服务器

本文是简单部署FTP,自己没事弄着玩。一:检测本机是否安装FTP服务器    rpm -qa | grep vsftpd出现这样的提示说明本机已经有安装过,就不用安装了,如果没有就可以开始安装了。二:使用yum命令安装FTP    yum install -y vsftpd安装完成之后就可以用上面的命令看到上图提示。三:简单测试    service vsftpd start (启动FTP服务 端...

2018-07-16 17:28:26 260

原创 Mybatis 通用mapper 调用insert方法报 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常

由于自己的粗心,将table中的字段与mysql中的range字段重复,导致一直报 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常错误,谨以此文告诫自己!    (1):range关键字在mysql中是分区的意思。    (2):在建表时一定不要将字段设置成masql的关键字!!!有可能出现以上错误!!...

2018-06-26 10:38:43 1492

原创 Java的垃圾回收机制(简单理解)

java与c/c++等编程语言的区别c/c++等编程语言需要程序员负责回收已经分配的内存(显式进行垃圾回收),这种方式的两个缺点是:忘记及时回收无用内存时,可能导致内存泄露,降低系统性能。如果错误回收程序核心类,导致系统崩溃。而Java的内存分配和回收都是有JRE在后台自动进行的,JRE会提供一个后台线程来进行检测和控制(程序员无法精确控制,一般都是在CPU空闲或内存不足时)。Java的垃圾回收 ...

2018-05-07 22:25:53 233

git学习笔记

git的学习笔记,看完立马秒懂git,精心总结,你值得拥有!

2018-11-03

空空如也

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

TA关注的人

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