加载中
系统负载过高排查思路

1.查找tomcat对应的进程号 ps -ef | grep tomcat 2.查看线程对应的系统占用情况 top -pid 53495 发现pid 线程占用系统CPU比较高的,然后将pid转为16进制(用户后续线程栈分析中对应,栈中线程号...

2020/12/03 10:58
30
JVM异常

分析系统堆栈 1.查看应用线程 jps -l 2. jstack 40462 >> admin 生成当前虚拟机线程快照。当前Java虚拟机每一个线程正在执行的方法的堆栈的集合,生成快照的目的主要是定位线程出现长时间停顿...

2019/11/21 14:19
120
Java 响应式编程

Reactive概念: Reactive Programming: 响应式编程,异步非阻塞就是响应式编程,与之相对应的就是命令式编程。是一种基于数据流(data stream)和变化传递的申明式的编程范式。 Reactive并不是...

spring boot starter

spring boot stater: 原生spring boot系统包含了很多默认的starter。例如rabbit,jdbc等等。 都在spring-boot-autoconfigure中申明了。对应的spring.factories中都有相应的XXXAutoConfigurat...

2019/08/07 15:28
111
Spring Factories

Spring factories是Spring Boot中一种非常解耦的扩展机制。这种扩展机制类似Java SPI扩展机制。它在META-INF/spring.factories文件中配置接口的名称,然后在程序中读取这些配置文件并实例化。...

2019/08/07 11:02
2.3K
基于本地消息的分布式事务

如果消息中间件没有提供事务消息,如何保证分布式事务? 本地消息表(经典的ebay模式) 核心思想在于分布式系统在处理任务时通过消息日志的方式来异步执行。消息日志可以存储在本地文件,数据库...

2019/08/03 11:34
583
设计模式的六大原则

1.开闭原则 类,模块和方法应该对扩展开放,对修改关闭。 2.里氏替换原则 在继承类时,除了扩展一些新的功能外。不要修改父类的方法。 3.依赖倒转原则 高层模块不依赖底层模块的细节,高层次就是...

2019/08/02 10:34
32
JVM参数设置

要点: 控制最大内存 OOM需要有Dump 适当记录GC Log 切换为G1垃圾回收器 禁用显式GC JDK1.8 java -server -Xms4g -Xmx4g -XX:MaxMetaspaceSize=1g -XX:+DisableExplicitGC -XX:+AlwaysPreTou...

2019/07/22 16:20
142
Java线程状态

新建(new) 可运行(Runnable) 阻塞(block) 无限期等待(waiting) 限期等待(TIMED_WAITING) 结束(terminated) 现在主流的JVM实现都把Java线程一一映射到了操作系统的线程上。把线程...

2019/07/16 11:23
84
interview资料

https://github.com/frank-lam/fullstack-tutorial https://github.com/hadyang/interview https://github.com/biezhi/java-bible https://github.com/quanke/think-in-java https://github....

2019/06/15 20:22
89
K8S调度

基本概念: 若干pod副本组成一个service,对外提供服务 副本指一个pod对多个实例 namespace用于多租户对资源隔离 1.Kubernates Client将请求发送给API Server 2.API Service根据请求的类型,...

2019/06/11 21:03
444
布隆过滤器

Bloom Filter 实际上是一个很长的二进制矢量和一系列随机映射函数。他可以用来判断一个元素是否在一个集合中。他的优势是只占用很小的内存空间以及有着高效的查询效率。 对于布隆顾虑器而言,...

2019/06/05 14:54
1.3K
docker中的网络功能

Docker允许通过外部访问容器或容器互联的方式来提供网络服务。 当Docker启动时,会在主机上创建一个 docker0虚拟网桥,实际上是Linux的一个bridge,可以理解为一个软件交换机。它会在挂载到它...

2019/06/03 18:26
57
git 小技巧

git 修改上次提交commit信息 git commit --amend -m "commit c3" 把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被追踪的文件,如果...

K8S初探

K8S是一个容器编排工具,其实也是管理应用的全生命周期的一个工具。从创建应用,应用的部署,应用提供服务,扩容收缩应用,应用更新都非常的方便。而且可以做到故障自愈,例如一个服务器挂了...

2019/01/15 18:22
661
Git flow 分支管理规范

1. 概要 master分支(DevOps Permission) 常驻分支也是稳定分支,是生产环境中最新代码 由于灰度环境是模拟的生成环境,部署的也是master分支 发布完成后,对每个版本进行tag 不允许直接提交代...

数据库设计规范

一、数据库设计规范(设计之初,需要DBA介入) 规范前言: 1.保证数据库高可用:制定3重高可用(容灾)架构,主备架构、同城容灾、异地容灾(可以采用mha、pxc等高可用架构,注意数据可能丢失风...

docker常用命令

docker search mysql 搜索mysql镜像 docker pull mysql:5.7 安装Mysql5.7镜像 docker rmi mysql 删除镜像 docker ps 查看正在运行的容器 docker port id 快捷查看网络端口映射 docker start...

SpringBoot使用hibernate validator

1.快速失败注解 @Bean public Validator validator(){ ValidatorFactory validatorFactory = Validation.byProvider( HibernateValidator.class ) .configure() .addProperty( "hibe......

OAuth初探

OAuth是一个关于授权(Authorization)的开放网络标准,在全世界得到广泛应用,目前版本是2.0。为了理解OAuth,比如有个云印通的网站,可以将用户存储在谷歌的照片冲印出来。用户为了使用该服...

2018/07/10 19:45
78

没有更多内容

加载失败,请刷新页面

返回顶部
顶部