自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 自我管理 | 18个自我管理方法

成天熬夜,生病了才知道健康可贵;总是“月光”,急用钱才发现自己没有储蓄;平时过一日算一日,等到完全被更年轻的人替代,才意识到自己缺少核心竞争力。人生从来就是不进则退,与其等到来不及的时候懊悔,不如现在就开始努力。分享18个自我管理方法↓↓好好管理自己,别等到生活来修理你,共勉! ...

2019-09-04 22:26:00 292

转载 Redis | 一文轻松搞懂redis集群原理及搭建与使用

转载:https://juejin.im/post/5ad54d76f265da23970759d3 作者:SnailClimb 这里总结一下redis集群的搭建以便日后所需同时也希望能对你有所帮助。 笔主这里使用的是Centos7 一 redis的安装 Redis是c语言开发的。 安装redis需要c语言的...

2019-09-04 22:24:00 125

转载 进程| 线程 | 阻塞 | 阻塞&非阻塞 和 同步&异步

阻塞&非阻塞 阻塞IO 调用之后一定要等到系统内核完成所有的操作之后才结束,因此它的缺点:CPU等待IO,处理能力得不到充分利用。 非阻塞IO 为了解决阻塞IO带来的一些问题,内核提供了非阻塞IO,非阻塞IO的差别是调用之后会立即返回。缺点:非阻塞IO立即返回并不是业务层期望的数据,而仅仅是调用的状态,为了获取完整的...

2019-09-04 22:20:00 42

转载 性能分析 | Java进程CPU占用高导致的网页请求超时的故障排查

一、发现问题的系统检查: 一个管理平台门户网页进统计页面提示请求超时,随进服务器操作系统检查load average超过4负载很大,PID为7163的进程占用到了800%多。 二、定位故障 根据这种故障的一般处理思路,先找出问题进程内CPU占用率高的线程,再通过线程栈信息找出该线程当时在运...

2019-09-04 22:16:00 227

转载 SQL优化 | sql执行过长的时间,如何优化?

1、查看sql是否涉及多表的联表或者子查询,如果有,看是否能进行业务拆分,相关字段冗余或者合并成临时表(业务和算法的优化) 2、涉及链表的查询,是否能进行分表查询,单表查询之后的结果进行字段整合 3、如果以上两种都不能操作,非要链表查询,那么考虑对相对应的查询条件做索引。加快查询速度 4、针对数量大的表进行历史表分离(如交易流水表)...

2019-09-04 22:15:00 138

转载 性能优化 | JVM性能调优篇——来自阿里P7的经验总结

VM 调优概述: 性能定义: 吞吐量 - 指不考虑 GC 引起的停顿时间或内存消耗,垃圾收集器能支撑应用达到的最高性能指标。 延迟 - 其度量标准是缩短由于垃圾啊收集引起的停顿时间或者完全消除因垃圾收集所引起的停顿,避免应用运行时发生抖动。 内存占用 - 垃圾收集器流畅运行所需要的内存数量。 ...

2019-09-04 22:14:00 170

转载 性能优化 | 线上百万级数据查询接口优化过程

最近遇到一个数据查询接口性能低下的问题,需要进行优化,从解决方案的调研与梳理到方案的确定,再到最终方案的执行落地,我将优化的过程完整的记录了下来,与大家分享学习,希望能给大家有所帮助和启发。 PS:以下我所描述的所有表和字段都是虚拟的。 问题产生 我们有很多上报的数据,数据量比较大。这些数据保存在 report_info 表中的,表...

2019-09-04 22:12:00 215

转载 性能分析 | 线上CPU100%排查

不知道在大家面试中,有没有遇到这个问题: 生产服务器上部署了几个java程序,突然出现了CPU100%的异常告警,你如何定位出问题呢? 这个问题分为两版回答! 高调版 对不起,我是做研发的,这个问题在生产上是不可能遇见的!因为研发是不可能直接操作生产服务器,如果贵公司能出现这个问题,应该要反思一下自己的...

2019-09-04 22:01:00 69

转载 性能测试 | Web端性能测试

这篇文章想跟大家分享关于Web性能测试的一些知识点。在分享之前,我想先跟大家分享一组数据,关于为什么要做性能测试?具体如下: 71%用户希望在手机上打开网页能跟电脑一样快; 5秒钟被认为是用户能忍受的最长响应时间,如果响应时间超过5秒,50%的移动用户会放弃; 33%失望的...

2019-09-04 21:52:00 714

转载 ubuntu下安装jdk环境

1、下载jdk8http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html2、创建目录sudo mkdir /usr/lib/jvm 并解压jdk到上面目录sudo tar -zxvf jdk-8u74-linux-x64.tar.gz -C /usr/l...

2019-09-04 14:22:00 107

转载 自动化测试 | 好用的自动化测试工具Top 10

欲善其事必先利其器,本文从软件测试人员痛点出发,介绍如何先从工具选择上取得优势,在有限的时间内完成工作。经常有人在公众号留言或是后台咨询,做自动化测试用哪个工具好,或是学哪门编程语言好呢? 这个时候总是无奈的说: 你应该学习Python 或是Java 你应该掌握Selenium 又...

2019-09-04 08:53:00 66

转载 性能优化 | 实现万行级数据读取优化

业务场景: 基于导出的功能上,要求一次性查询10w条数据。但是这个10w的开始值和结束值不固定(比如:startNum = 123; endNum = 100123;) 难点一: dubbox时间超时规定为1s,服务调用图如下: 难点...

2019-09-04 08:51:00 99

转载 性能分析 | MySQL 的慢查分析实例

最近遇见一个 MySQL 的慢查问题,于是排查了下,这里把相关的过程做个总结。 定位原因 我首先查看了 MySQL 的慢查询日志,发现有这样一条 query 耗时非常长(大概在 1 秒多),而且扫描的行数很大(10 多万条数据,差不多是全表了): SELECT * FROM tgdemand_demand t1WHERE(t1.id...

2019-09-04 08:50:00 48

转载 性能优化 | Tomcat和JVM的性能调优总结

Tomcat性能调优: 找到Tomcat根目录下的conf目录,修改server.xml文件的内容。对于这部分的调优,我所了解到的就是无非设置一下Tomcat服务器的最大并发数和Tomcat初始化时创建的线程数的设置,当然还有其他一些性能调优的设置,下图是我根据我机子的性能设置的一些参数值,给各位详细解释一下吧: ...

2019-09-04 08:48:00 47

转载 GC垃圾回收 | 深入理解G1垃圾收集器和GC日志

来源:并发编程网链接:http://ifeve.com/深入理解G1垃圾收集器/ G1 GC是Jdk7的新特性之一、Jdk7+版本都可以自主配置G1作为JVM GC选项;作为JVM GC算法的一次重大升级、DK7u后G1已相对稳定、且未来计划替代CMS、所以有必要深入了解下: 不同于其他的分代回收算法、G1将堆空间划分成了互相独立的区块。每...

2019-09-04 08:47:00 170

转载 微服务 | 微服务网站性能测试

开发者们在工作中经常会遇到过这样的情况:在接手实际项目时,在传统的单体架构下,一个同事负责的功能模块出现故障后,会导致整个系统瘫痪。那么有什么办法才能解决这种问题呢?云上有一种服务——微服务,可以对业务流程进行独立开发和部署,满足新业务快速创新和敏捷交付的需求。 基于Devops的微服务架构是云时代部署应...

2019-09-04 08:45:00 208

转载 负载均衡 | Nginx+Tomcat 动静分离实现负载均衡

0.前期准备 使用Debian环境。安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等。 1.一份Nginx.conf配置文件 基本配置这个文件,就可以实现负载了。但是里面的各种关系要了解就比...

2019-09-04 08:43:00 38

转载 中间件 | Nginx实现动静分离

Nginx动静分离基本概述 动静分离,通过中间件将动静分离和静态请求进行分离; 通过中间件将动态请求和静态请求分离,可以建上不必要的请求消耗,同事能减少请求的延时。 通过中间件将动态请求和静态请求分离,逻辑图如下: 动静分离只有好处:动静分离后,即使动态服务不可用,但静态资源不会...

2019-09-04 08:43:00 154

转载 框架 | Spring面试题总结

1、什么是Spring? Spring是一个开源的Java EE开发框架。Spring框架的核心功能可以应用在任何Java应用程序中,但对Java EE平台上的Web应用程序有更好的扩展性。Spring框架的目标是使得Java EE应用程序的开发更加简捷,通过使用POJO为基础的编程模型促进良好的编程风格。 2、Spring有哪些优点? ...

2019-09-04 08:42:00 44

转载 性能测试 | 性能测试-概念篇

性能测试概念 在如今这个万物互联的时代,网络的作用至关重要,它连接了万物,几乎任何信息都可以在web上获取到。大到企业、学校、政府、国家,小到个人、个体经营者,他们每时每刻都在使用网络获取各种信息。web内容的获取和与其的交互非常便利快捷,因而网络的响应速度就变得至关重要。 再者,大多数的web应...

2019-09-04 08:40:00 72

转载 中间件 | kafka简介、使用场景、设计原理、主要配置及集群搭建

开源Java学习 公众号 一、入门 1、简介 Kafka is a distributed,partitioned,replicated commit logservice。它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。kafka对消息保存时根据Topic进行归类,发送消息者成为Producer...

2019-09-04 08:39:00 61

转载 性能分析 | Linux 内存占用分析

这篇博客主要介绍 linux 环境下,查看内存占用的两种方式:使用 ps,top等命令;查看/proc/[pid]/下的文件。文章简要介绍了命令的使用方法与一些参数意义,同时对/proc/[pid]/下的文件内容进行了一些详细的介绍。文章内容来自google和自我总结,如有不当之处,欢迎批评指正。 查看Linux内存的方法 linux 下面...

2019-09-04 08:37:00 172

转载 数据库优化 | 亿级数据量系统数据库性能优化方案

一、数据库性能瓶颈主要原因 1、数据库连接 MySQL数据库默认连接为100,我们可以通过配置initialSize、minIdle、maxActive等进行调优,但由于硬件资源的限制,数据库连接不可能无限制的增加,对大型单体应用单实例数据库可能会出现最大连接数不能满足实际需求的情况,这时就会系统业务阻塞。 2、表数据量大(空间存储...

2019-09-04 08:36:00 142

转载 接口测试 | 后端接口都测试什么?怎么测?

作者 | 贺满 链接 | cnblogs.com/puresoul/p/5388586.html 本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做? 第二部分:主要介绍为什么要做接口测试,并简单总结接口持续集...

2019-09-04 08:35:00 3716

转载 数据库 | Redis 缓存雪崩解决方案

Redis 雪崩 缓存层承载着大量的请求,有效保护了存储层。但是如果由于缓存大量失效或者缓存整体不能提供服务,导致大量的请求到达存储层,会使存储层负载增加,这就是缓存雪崩的场景。 解决缓存雪崩,可以从以下几个方面入手。 1.保持缓存层的高可用性 使用Redis 哨兵模式或者Redi...

2019-09-04 08:33:00 1162

转载 中间件 | 微服务架构

Web应用架构受系统用户量、开发人员组织方式影响严重。过去二十年互联网迅速发展,Web架构也从单体式演进出微服务,背后还有比如 Martin Fowler 提出的理论支撑。虽然每个人都听说过微服务,但是很多人并不太清楚为什么要这么做,应该怎么做,怎么拆。要回答这个问题我认为需要从Web架构的演化历史的高度去理解这些架构设计中的取舍。 ...

2019-09-03 10:51:00 1421

转载 数据库 | SQL 诊断优化套路包,套路用的对,速度升百倍

本文出自头条号老王谈运维,转载请说明出处。 前言 在DBA的日常工作中,调整个别性能较差的SQL语句是一项富有挑战性的工作。面对慢SQL,一些DBA会心烦,会沮丧,会束手无措,也会沉着冷静、斗智斗勇!当中的关键在于数据库管理员如何分析得出SQL语句的执行计划和如何从SQL语句...

2019-09-03 10:49:00 98

转载 数据库 | SQL语法优化方法及实例详解

使用复合索引 如果经常执行如上查询,那么建立三个单独索引不如建立一个复合索引,因为三个单独索引通常数据库每次执行只能使用其中一个,虽然这样比不使用索引而进行全表扫描提高了很多效率,但使用复合索引因为索引本身就对应到三个字段上的,效率会有更大提升。 那么为...

2019-09-03 10:48:00 149

转载 hadoop2.4.1伪分布式搭建

1.准备Linux环境 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip 设置网段:192.168.1.0 子网掩码:255.255.255.0 -> apply -> ok 回到windows --> 打开网络和共享中心 -...

2019-09-03 10:47:00 44

转载 性能分析 | JVM发生内存溢出的8种原因及解决办法

推荐阅读:史上最详细JVM与性能优化知识点综合整理 1.Java 堆空间 2.GC 开销超过限制 3.请求的数组大小超过虚拟机限制 4.Perm gen 空间 5.Metaspace 6.无法新建本机线程 7.杀...

2019-09-03 10:46:00 55

转载 性能优化 | JVM与性能优化知识点综合整理

JVM JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行java的字节码程序。 java编译器只要面向JVM,生成JVM能理解的代码或字节码文件。Java源文件经编译成字节码程序,通过JVM将每一条指令翻译成不同平台机器码,通过特定平...

2019-09-03 10:44:00 94

转载 性能测试 | 线上环境,内存溢出了怎么办呀

工具: jstack + top 命令 排查思路:1)找出占用高的进程 2)找出占用高的线程 3)找出具体的代码 步骤: 1)使用top命令找出进程 --执行“top -c”命令,显示进程运行信息列表,键入大写P,按CPU使用率降序排列 如下图所示:找出了进程编号:11098 的进程,占用cpu较高 ...

2019-09-03 10:43:00 42

转载 性能测试 | 进程线程解说

进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。 最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。 1. 计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。 2. ...

2019-09-03 10:42:00 58

转载 Redis | Redis基础都不会,好意思出去面试?

Redis的数据结构 Redis支持多种不同的数据结构,包括5种基础数据结构和几种比较复杂的数据,这些数据结构可以满足不同的应用场景。 五种基础数据结构 String:字符串,是构建其他数据结构的基础 Hash:哈希列表 List:列表 Set:集合,在哈希列表的基础上实现 Sor...

2019-09-03 10:40:00 44

转载 操作系统 | 结合 CPU 理解一行 Java 代码是怎么执行的

根据冯·诺依曼思想,计算机采用二进制作为数制基础,必须包含:运算器、控制器、存储设备,以及输入输出设备,如下图所示。 我们先来分析 CPU 的工作原理,现代 CPU 芯片中大都集成了,控制单元,运算单元,存储单元。控制单元是 CPU 的控制中心, CPU 需要通过它才知道下一步做什么,也就是执行...

2019-09-03 09:33:00 361

转载 性能测试 | Linux线程数、进程查询

I. 最大值查询 1. 最大进程数查询 1 cat /proc/sys/kernel/pid_max 个人阿里云机器(单核2g)上输出如下 1 32768 2. 最大线程数查询 1 cat /proc/sys/kernel/threads-max 阿里云机器输出如下 1 14566 3...

2019-09-03 09:17:00 134

转载 性能测试 | 10个命令行工具实现Linux系统性能监控

引言: 系统一旦跑起来,我们就希望它能够稳定运行,不要宕机,不出现速度变慢。因此,对于Linux 系统管理员来说每天监控和调试 Linux 系统的性能问题是一项繁重却又重要的工作。监控和保持系统启动并运行是很不容易的一件事。 下面是小编总结的十个实用的 Linux 系统监控命令,让你轻松保持系统的...

2019-09-03 09:16:00 232

转载 性能测试 | 记一次生产数据库sql由451s优化为0.4s的过程

概述 最近开发说某个接口跑的很慢,排查了下发现其中一条sql,数据量不大,但居然要跑451s,下面简单记录一下优化的过程。 问题sql SELECT l.location_gid ENUMVALUE, l.location_name DISPVALUE FROM servprov s, location l WHERE s...

2019-09-03 09:13:00 56

转载 性能测试 | 常见的几种内存溢出及解决方案,再遇到后就可以解决了

1.JVM Heap(堆)溢出: java.lang.OutOfMemoryError: Java heap space JVM在启动的时候会自动设置JVM Heap的值, 可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap的大小是Young Generation 和Tenured Generaion 之和。在JV...

2019-09-03 09:11:00 355

转载 JVM | 分代垃圾回收策略的基本概念以及过程

一、为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。 在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连...

2019-09-03 09:10:00 41

空空如也

空空如也

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

TA关注的人

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