自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

为无为,事无事,味无味。

大小,多少,抱怨,以德。图难乎,其易也;为大乎,其细也;天下之难,作于易;天下之大,作于细。是以圣人终不为大,故能成其大。夫轻诺,必寡信;多易必多难。是以圣人犹难之,故终无难矣。

  • 博客(284)
  • 资源 (6)
  • 收藏
  • 关注

原创 合格程序员每天每周每月每年应该做的事

程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多 2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作 3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重要的是不要重复犯相同的错误,那是愚蠢 4、考虑自

2009-11-18 12:45:00 1706

原创 Java web应用性能分析之【高并发之降级】

毕竟,当所有的服务,能够将自己的状态,反馈到监控中心,监控中心能够实现弹性扩容。也可以手动进行降级。• 接入层降级开关:主要控制请求入口的降级,请求进入后,会首先进入接入层,在接入层可以配置功能降级开关,可以根据实际情况进行自动/人工降级。大多数人都是知道什么是降级,但是具体的操作,相信大多数人还是不知道的,这篇文章就是主要介绍怎么样降级,如何优雅的进行降级。• 服务功能降级:比如,渲染商品详情页时,需要调用一 些不太重要的服务 (相关分类、热销榜等),而这些服务在异常情况下直接不获取,即降级即可。

2024-05-18 16:19:13 713

原创 Java web应用性能分析之【高并发之限流】

在微服务架构下,各接口对应的服务至少是启动两个,且运行在多台服务器上,而我们的单机限流一般都是基于jvm层面的限流,只能在单台服务器上限流,有一定的局限性,一般是用于多线程级别的限流。限流在本质上,是设置一个资源数量上限,超出这个上限的请求,将被缓冲,或者直接失败,是一种过载保护。Nginx入口限流:通常在网关层的上游,在用户请求到达业务服务前进行处理,在入口的Nginx做限流,然后再将请求转发给网关,网关再调用其他的微服务,从而实现整个流程的请求调用,Nginx入口 限流也是分布式系统中常用的限流手段。

2024-05-18 15:39:17 789

原创 Java web应用性能分析之【高并发之缓存-多级缓存】

缓存是一种临时存储数据的技术,意味着在数据被使用之前将其复制到一个更快的存储介质中。在计算机领域,缓存一般用于提高系统的响应速度和性能。缓存是一种提高系统性能的技术,但需要适时清理以避免问题。删除缓存可以释放存储空间并保持系统的稳定性,但也可能带来一些不便。因此,在删除缓存之前,我们需要慎重考虑,并了解系统的特殊需求。1.磁盘缓存:存储在硬盘等永久性存储介质上,用于加速数据的读取和访问。2.CPU缓存:位于处理器内部的高速存储器,用于暂时存储频繁访问的数据或指令,提高计算机的性能。

2024-05-18 10:46:38 1026

原创 Java web应用性能分析之【6种OOM监控和分析】

2.我们的java进程就是个springboot的jar包,默认用的是tomcat服务器,都知道tomcat的线程池默认初始化10个线程来处理我们的业务请求,想想看为啥当业务线发生oom异常时,这个线程咋地还能处理业务,没有被回收?:2.我们的java进程就是个springboot的jar包,默认用的是tomcat服务器,都知道tomcat的线程池默认初始化10个线程来处理我们的业务请求,想想看为啥当业务线发生oom异常时,这个线程咋地还能处理业务,没有被回收?(有兴趣的欢迎评论交流)

2024-04-26 23:43:35 1121 2

原创 Java web应用性能分析之【OOM监控分析之Allocation Failure】

本来是想分析这6种OOM场景,结果意外触发了“Allocation Failure”。刚好也作为一个场景来分析。先描述一下现场:当前java进程长时间占用率是%CPU大于 100%,[62.5 us, 0.7 sy, 0.0 ni, 36.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st], [load average: 1.26, 1.29, 1.30],,不停打印gc日志,并且年老代占用了全部堆内存,年轻代种的edn和so的分配空间是0;

2024-04-26 20:42:45 828 1

原创 Java web应用性能分析之【6种OOM模拟】

5. 直接内存溢出-java.lang.OutOfMemoryError: Direct buffer memory。排查nio,一般重点检查netty,它里面的nio用直接内存用的多。2. 栈溢出-java.lang.OutOfMemorryError:unable to create new native thread 检查多线程。1. 堆溢出-java.lang.OutOfMemoryError: Java heap space。

2024-04-25 20:43:18 420

原创 java监控命令报错 ERROR: ptrace(PTRACE_ATTACH, ..) failed for 12015: Operation not permitted 错误处理

原因是操作系统出于安全考虑,引入了一种叫做ptrace scope的安全机制。这种机制为了防止用户访问当前正在运行的进程的内存和状态,所以在调试程序的过程中导致gdb不能正常工作。这种安全机制可以防止恶意软件附加到其他进程中(如SSH或者GPG),读取程序内存,产生安全问题。建议“ echo 0 > /proc/sys/kernel/yama/ptrace_scope ”,调试结束后再改成1;

2024-04-25 16:52:43 248 2

原创 Java web应用性能分析之【思考一个问题:%CPU低,Load avg>5,会出现这种情况吗,要命吗,是否要关注?】

CPU飙高的指标一般情况下,我们服务器的都比较空闲,因为cpu一般不是性能瓶颈。偶尔有进程的%cpu>100%,也是正常情况。毕竟是在多核cpu服务器上,进程里面起了多线程,%cpu>100%很正常。说明进程对CPU多核利用很充分。我们一般说cpu飙高,并不只是%CPU这一个参考值。上面“性能分析概叙”中有讲我们关注的点是下面这些,而且这些指标都是相互关联的,并不是某一项很高就说明有问题:cup利用率[us <70%,sy<35%,id>=95% ]

2024-04-24 19:45:30 609 1

原创 Java web应用性能分析之【CPU飙升分析概述】

所以在不同服务器上,CPU飙升都对应着不同的场景、有着不同的原因、以及不同的解决方案。8.数据库进程:mysql进程飙高。原因很多:慢sql 和全表扫描导致的大量的iowait等待引起cpu飙高、数据库锁(行锁冲突、锁等待、锁超时、死锁等)、mysql参数设置不合理等等,可能的原因较多,需要层层递进,逐步定位根因;原因很多:慢sql 和全表扫描导致的大量的iowait等待引起cpu飙高、数据库锁(行锁冲突、锁等待、锁超时、死锁等)、mysql参数设置不合理等等,可能的原因较多,需要层层递进,逐步定位根因;

2024-04-24 19:21:32 1236 2

原创 Java web应用性能分析之【sysbench基准测试】

SysBench是一个跨平台的基准测试工具,用于评估计算机系统在不同负载条件下的性能。它模拟真实场景下的工作负载,提供了多种测试模式,包括CPU、内存、磁盘、线程、数据库等方面的测试。cpu性能磁盘io性能调度程序性能内存分配及传输速度POSIX线程性能数据库性能(OLTP基准测试)

2024-04-24 13:12:23 1142

原创 Java web应用性能分析之【基准测试】

在前面的文章中提到基准测试,没有详细说明,看到不少朋友比较感兴趣,这里就详细的描述一下。

2024-04-24 10:28:56 878

原创 Java web应用性能分析之【CPU飙高分析之MySQL】

在上面文章中,我们从整体上描述了Linux服务器性能监控分析,下面我们将通过sysbench模拟mysqld的cpu飙高情况,同时进一步分析是那些sql导致cpu飙高。

2024-04-23 21:59:30 1409

原创 Java web应用性能分析之【Linux服务器性能监控分析概叙】

大多数场景,我们的Java web应用都是部署在linux环境,所以对linux服务器的性能指标需要有一个比较清晰的认识。Linux服务器的性能指标无非就5个方面:CPU、内存、磁盘、网络、文件系统。不同的性能指标都有对应的命令进行监控和查看(zabbix等监控工具,只是将服务器各个时间段的性能指标都收集起来,通过性能指标阈值进行告警,更容易也更直接,便于7*24分析;分析的指标也都是一样)。

2024-04-23 14:24:37 1263 1

原创 Java web应用性能分析之【漏洞/缺陷处理】

在我们的Java web应用中,存在一些安全缺陷,如果不注意,存在安全风险,应用有着被恶意攻击的风险。常见的10种如下:SQL注入攻击、XSS跨站脚本攻击、文件上传漏洞、DDOS分布式拒绝服务攻击、网站CC攻击、暴力破解、DNS查询攻击、CSRF跨站点请求伪造、RCE远程命令/代码执行攻击、信息泄露等。部分缺陷,是可以通过java代码完善来防止的。在Spring Boot中防止网络攻击通常涉及到几个方面,例如限流、认证和授权、输入验证等。

2024-04-22 09:09:39 850

原创 Java web应用性能分析之【性能点概叙】

在性能问题排查过程中,我们依赖的就是监控,实时监控和历史监控,要么通过监控工具,查某段时间内服务器资源消耗情况,结合业务监控进行综合分析。很多时候都是trouble show time,大老板站你身后,看你敲回车。请问少年内心是否慌的一笔。这里做一下汇总,不具体展开。

2024-04-21 06:46:50 628

原创 Java web应用性能分析之【MySQL安装注意事项】

本文主要是针对以前LAMP,以及默认用apt安装的mysql。数据文件、日志文件都在一起;innodb_buffer_pool默认用128M。如果你排查问题,最后发现是因为mysql的安装配置不对,是否一口老血要喷出来。同时给MySQL数据库安装做参考。关于MySQL数据库优化,我这里分成5部分:1.服务器配置优化,2.MySQL安装优化,3.MySQL配置优化,4.数据库设计优化,5.针对MySQL的SQL优化。

2024-04-21 05:46:28 824

原创 Java web应用性能分析之服务端慢[网络慢]

Java web应用性能分析之服务端慢,如果是网络原因引起的服务端慢,经常会被忽略,很多时候我们第一时间不会去排查网络原因。出现这种情况也很正常,因为应用的外部网络都是超100M的大宽带服务器,而内部则是千兆网卡或者万兆网卡;一般网络上不会出现性能瓶颈。一般我们说的100M带宽,是指上行下行速度100Mbit/s=12.5MByte/s。但是对于家庭而言100M带宽是指下载速度理论值12.5MB(一般是10MB左右),上传速度1MB。

2024-04-19 17:27:48 874 2

原创 Java web应用性能分析之服务端慢和优化概叙

前面已经分析了客户端慢、前端页面慢、入口Nginx慢,按照上图接下来就是我们服务端重点的接口慢分析优化、服务器资源性能瓶颈分析、服务器带宽性能瓶颈分析。

2024-04-19 10:11:22 1048

原创 Java web应用性能分析服务端慢之前端代码优化

从用户输入地址或点击操作触发浏览器发出加载请求开始。请求通过网络到达服务器,服务返回页面描述信息(html文件)给浏览器。然后,浏览器解析html页面文件,得到了需要加载逻辑脚本(js文件),样式描述文件(css文件),图片文件等内容后,继续向服务器请求这些内容资源,服务器返回指定的目标资源。(如下图)从上图来看如何减少请求数量,也是降低页面整体加载时间消耗的一种方法:减少请求数、压缩/合并js文件和css文件。

2024-04-19 08:22:35 490

原创 Java web应用性能分析之性能指标【TPS和QPS】

TPS是软件测试结果的测量单位。高负载阶段,系统利用率较高,系统响应时长随着并发数增加出现大幅增长,在此阶段并发数对系统响应时长的影响很大,其主要原因是因为系统资源满载了,请求数量大于 CPU 的核心数,导致进程或者线程不断切换,响应耗时增大。由于请求数量远大于 CPU 核心数量,系统为了处理如此大量的请求,进程(线程)频繁切换,导致系统响应时长成指数增长。每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。

2024-04-19 07:26:06 673

原创 Java web应用性能分析之性能指标【响应时间】

前面几篇发出来,发现漏了一个标准说明。当我们谈论应用慢时,这个慢的指标是啥?怎么衡量的?从用户体验来讲,一个页面展示在3秒完成,用户还能接受,超过3秒就会影响用户体验,用户就会感觉到页面打开慢。这个3秒即响应时间。页面加载慢,和服务器资源、前端web服务器配置、后端接口响应、前端代码都有关。这里我们主要是从前端代码和前端web服务器配置来分析。上面提到的“3秒”,即“响应时间”,或者叫“用户感知时间”。

2024-04-19 07:25:23 1020

原创 Java web应用性能分析服务端慢之前端页面慢

大多数的卡顿场景,都是由于页面渲染掉帧导致的。因此针对页面的更新渲染,不管是 DOM 渲染还是 Canvas 渲染,需要注意将帧率保持在 50~60 FPS 的范围内,这样用户的体验会流程很多。当然,如果我们的代码里有死循环和回调嵌套,造成页面直接卡死,也是卡顿的一种情况,但这就又是另外一个故事。参考下面文章关于前端页面慢的原因,小结如下:1、过多的http请求解决办法:减少http请求。

2024-04-19 07:24:29 1035

原创 Java web应用性能分析服务端慢之Nginx慢

一般Nginx作为整个应用的入口,即做静态服务器,也做负载均衡、反向代理;同时也因为位置靠前,还可以通过Nginx对于访问的IP、并发数进行相应的限制。在Java web应用性能分析中,Nginx是重要环节,Nginx的性能也影响整个应用。

2024-04-18 17:04:13 628

原创 Java web应用性能分析之安全加固

一般来说安全加固不是开发的活,是我们的“背锅侠”运维大哥的活,但是作为一个合格的开发人员,不能仅仅只是完成手里的功能开发完事,我们开发出来的应用,一般都是部署在linux环境,而且现在云厂商时代,都运行在某大厂的云环境。我们的代码、我们的数据都不在自己的服务上,因此对于linux服务器安全,我们也需要有一定的了解。常见的Ddos攻击、网站CC攻击等,可以通过安全加固,来抵御一些网络攻击。

2024-04-18 13:46:21 359

原创 Java web应用性能分析之安全问题处理

上一篇科普了漏洞和网络攻击,本文就对着Java Web应用中的安全问题做一个小结。

2024-04-18 12:36:42 875

原创 Java web应用性能分析之漏洞和网络攻击

众所周知,一些不友好人士,通过漏洞对应用进行网络攻击,小则应用卡顿、功能不可用;大则应用信息泄露、用户数据泄露、应用崩溃不可逆。那么在预防之前我们先科普一波。

2024-04-18 11:07:51 402

原创 Java web应用性能分析之客户端慢

客户端慢的原因包括:

2024-04-17 14:49:56 706

原创 Java web应用性能分析概叙

系统慢”,这是任何一个应用都会出现的问题,面对“系统慢”的问题,客户、测试、开发、管理者等不同角色的人员有不同反应:客户:啥破东西啊,这么卡!测试:性能bug已提交。开发:我本地很快啊,要不你重启一下!管理者:开会了。OK!“屁股决定脑袋”,扯淡结束,回归正题。为了便于区分,根据web请求响应模型,粗略分成客户端慢、服务端慢。

2024-04-17 13:53:10 1050

原创 MySQL数据导入--load data

起因:      朋友的数据库,用的版本是5.5.19;服务端和客户端字符集都是utf8,因为某些原因,系统经过好多人的开发和处理,同一个表存在多种字符集写入;so乱码问题,时有发生。为了彻底解决这个问题。     我这边的操作如下:1.核查工程中转码的地方。2.将数据库每个表都转出来;转成utf8。3.调试:新的工程和新的库。-----------------------

2017-09-10 15:03:13 1236

转载 TCP 滑动窗口

TCP 滑动窗口滑动窗口协议流量控制方法PUSH慢启动 隔一个报文段确认”的策略实际就是因为 delayed ack,同时接收到两个待确认的ACK包时,就立即发送确认包。 滑动窗口实例 解决了快的发送方-》慢的接收方 发送方发送 4个背靠背(back-to-back)的数据报文段去填充接收方的窗口,然后停下来等待一个A

2017-08-05 12:48:49 668

原创 最新chromedriver对应chrome浏览器支持的版本明细

http://chromedriver.storage.googleapis.com/2.29/notes.txt----------ChromeDriver v2.29 (2017-04-04)----------Supports Chrome v56-58Resolved issue 1521: Assignment to Object.prototype.$famil

2017-05-22 14:38:11 5221

转载 关于HTTP协议,一篇就够了

HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信

2017-04-21 11:47:58 690

转载 HTTP协议的头信息详解

通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可 选的消息体组成。HTTP的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大小写无关的,域 值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符。   

2017-04-21 11:46:43 680

转载 HTTP协议详解(真的很经典)

转自:http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspxAuthor :Jeffrey引言HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HT

2017-04-21 11:45:43 663

转载 TCP建立,释放连接

TCP建立,释放连接 http://blog.chinaunix.net/uid-26413668-id-3376762.htmlTCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:

2017-04-21 09:58:40 707

原创 Hadoop环境----自动分区和挂载磁盘

前段时间用ambari搭建大数据环境,甲方购买了11台服务器,用于构建大数据环境,每台除了系统盘外,插了24块1.2T的磁盘,在我们接手后,发现这200多块盘真的是“插”上去的,啥都没干,如果一个人一块块的弄,每块3分钟,264块,那就要一天了。咨询了前同事小马哥后,只能自己写脚本挂载。

2017-03-20 10:44:38 2083

转载 认真学spring官网,很容易找到spring4的jar包下载位置

认真学spring官网,很容易找到spring4的jar包下载位置原文  http://yanln.iteye.com/blog/2191312无论学习编程语言还是框架,个人认为与其花大量的时间搜资料,不如静心好好学习官网,官网是最好的学习资料(权威、准确的第一手材料)。一、spring的官方网址:http://spring.io/二

2016-10-26 16:02:27 1063

转载 区块链:起源、原理及应用

区块链:起源、原理及应用http://blog.csdn.net/jason_wang1989/article/details/52020612近年来,区块链技术正在经历快速发展,并吸引了超过10亿美元的投资规模。而我们认为,最值得重视的是,区块链正在走进金融机构、大型企业、政府决策层的视野,大有从“草根力量”引发经济变革的态势。证券交易所:2015年12月,纳斯达克首次在

2016-10-09 10:36:17 1702

转载 揭秘IDC商家:机房价格差别怎么那么大

揭秘IDC商家:机房价格差别怎么那么大为什么访问我的网站时快时慢?为什么同样的带宽,不同的机房价格差别那么大?归根结底一句话带宽质量不同。带着网友的几个问题,小编走访了几家数据中心,询问了不少技术人员,学习了一些知识,分享给大家。  首先学习一下理论知识,带宽质量由接入方式和带宽大小共同决定。  带宽大小:也就是我们常说的100M、10M、2M连接,这很容易理解

2016-10-08 11:18:44 2288

Sybase语法大全.pdf

Adaptive Server Enterprise参考手册

2012-03-08

jsp+servlet+javabean.ppt

9.1 Servlet概述 9.2 Servlet的基本结构与成员方法 9.3 调用Servlet的多种方法 9.4 两种模式的JSP技术 9.5 Servlet模式的留言板案例 9.6 Servlet的会话跟踪 习题9

2010-04-02

mysql-connector-net-5.2.5-src.zip

mysql connector net 5.2.5 装上就可用...

2009-10-29

Devexpress学习篇(请大家多多指教)

Devexpress学习篇(请大家多多指教)博客文章 因为大家看不到图片,所以我将博客文章保存在word里面 请大家 下载一下啊 帮帮忙看看 多谢指教

2009-07-28

Devexpress自学案例

Devexpress自学案例 请大家 多多指教

2009-07-28

2009届应届生求职指南

涵盖2009年各行业,各职业介绍,以及求职准备,求职注意事项,简历制作,面试技巧等等各方面的信息。

2008-12-19

空空如也

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

TA关注的人

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