自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

PYROMANIA

I'M GONNA GET THE FIRE STARTED

  • 博客(69)
  • 收藏
  • 关注

原创 Liunx服务器

在工作中总会轮到你排查线上问题,当Liunx服务器中出现CPU占用率过高的情况,应该如何快速排查定位问题所在,提高工作效率呢?more记: 一次登录服务器发现CPU占用率居高不下, 排查后发现是MySQL占用达到200%

2024-05-18 00:19:43 739

原创 Nginx IP属地

通过HttpServletRequest得到的IP统一: 127.0.0.1因为使用了Nginx反射代理,修改Nginx的配置并重载Nginx即可more项目中使用request.getRemoteAddr();对来源IP进行了判断,相同IP地址半小时只能上传一次数据,我测试的时候本机访问次数没有这么多次,而且这个数据初次访问时间是项目正式部署上线的时间,是生产环境产生的日志,生产环境怎么会拿到本机地址呢?经过一番研究: 在nginx配置文件nginx.conf。

2024-05-18 00:18:06 1139

原创 JVM故障分析及性能优化系列之七:使用MAT的Histogram和Dominator Tree定位溢出源

上一篇文章概括的介绍了JVM Heap Dump文件生成的方式以及内存分析工具MAT的概要功能,今天讲解如何使用MAT的Histogram和Dominator Tree两个视图,定位到内存溢出源。more。

2024-05-16 10:15:50 1401 1

原创 JVM故障分析及性能优化系列之六:JVM Heap Dump(堆转储文件)的生成和MAT的使用

前面的文章详细讲述了分析Thread Dump文件,实际在处理Java内存泄漏问题的时候,还需要分析JVM堆转储文件来进行定位。more。

2024-05-16 09:45:50 1121

原创 JVM故障分析及性能优化系列之五:ThreadDump日志分析

我们在上篇文章中详细描述了,今天总结分析的一些原则,并详细列举一些案例进行说明。more下面列出几种常见的症状即对应的解决方案:CPU占用率很高,响应很慢CPU占用率不高,但响应很慢。

2024-05-16 09:33:41 844

原创 JVM故障分析及性能优化系列之四:Thread Dump日志线程状态

今天针对日志文件中 Java EE middleware, third party & custom application Threads 部分线程的状态进行详细的分析。Thread Dump日志的线程信息

2024-05-15 16:27:28 559

原创 JVM故障分析及性能优化系列之三:VM Thread分析

当服务器CPU100%的时候,通过定位占用资源最大的线程定位到 VM Thread。这个时候需要使用 jstat -gc 命令查看gc的信息

2024-05-15 14:56:46 1364

原创 JVM故障分析及性能优化系列之二:Thread Dump日志结构解析

上一篇文章讲述了,这篇文章首先对Thread Dump日志文件的结构进行分析。more一个典型的thread dump文件主要由一下几个部分组成:上图将JVM上的线程堆栈信息和线程信息做了详细的拆解。

2024-05-15 14:28:50 1451

原创 JVM故障分析及性能优化系列之一:jstack定位线程堆栈信息

前一段时间上线的系统升级之后,出现了严重的高CPU的问题,于是开始了一系列的优化处理之中,现在将这个过程做成一个系列的文章。more。

2024-05-14 11:35:53 1118

原创 Typora + AliyunOSS + PicGo + OneDrive 搭建同步笔记本

前记: 尝试使用Gitee和Github,效果都十分不理想最终决定使用阿里云OSS服务器完成图床的搭建登录阿里云 --> 侧边栏 —> 选择对象存储OSS 如下图:对象存储界面右部选择创建Bucket,如下图所示:然后会弹出一个侧边栏 ==>进行创建 Bucket工作,读写权限要设定为公共读,其他的服务选项,如果自己有特殊需要,可以选择配置同城冗余存储,版本控制等服务,如果没有可以默认。完成后点击确定即可。注意:购买完存储包就可以了,至于流量包,默认的是按量计费,下面是阿里云的计费方法:点击查看收费详情

2024-05-14 09:43:59 1204

原创 防止恶意解析(禁止通过IP直接访问)

一、什么是恶意解析 一般情况下,要使域名能访问到网站需要两步,第一步,将域名解析到网站所在的主机,第二步,在web服务器中将域名与相应的网站绑定。但是,如果通过主机IP能直接访问某网站,那么把域名解析到这个IP也将能访问到该网站,而无需在主机上绑定,也就是说任何人将任何域名解析到这个IP就能访问到这个网站。可能您并不介意通过别人的域名访问到您的网站,但是如果这个域名是未备案域名呢?一旦被查出,封IP、拔线甚至罚款的后果都是需要您来承担的。某些别有用心的人,通过将未备案域名解析到别人的

2024-05-13 17:10:45 1042 1

原创 Alist + RaiDrive-Nas挂载云盘(Quark)

配置完成,但是启动alist的命令行窗口不能关,每次开机还需要手机打开,我们通过nssm把alist注册为window服务,在后台运行。配置完成,但是启动alist的命令行窗口不能关,每次开机还需要手机打开,我们通过nssm把alist注册为window服务,在后台运行。连接配置成功后,可以看到本地磁盘网络位置下多了一个文件夹,下面对应刚才添加的磁盘,此时,你就可以在本地进行网盘的读写。在Alist文档中有列出所有网盘所需的方法,只需要填写Cookie即可,根目录ID为0;,进入到管理界面,侧边栏选中。

2024-05-13 17:04:03 6918

原创 SpringBoot 内存泄漏OOM,排查思路

整个内存分配的流程如上图所示。MCC扫包的默认配置是扫描所有的JAR包。在扫描包的时候,Spring Boot不会主动去释放堆外内存,导致在扫描阶段,堆外内存占用量一直持续飙升。当发生GC的时候,Spring Boot依赖于finalize机制去释放了堆外内存;但是glibc为了性能考虑,并没有真正把内存归返到操作系统,而是留下来放入内存池了,导致应用层以为发生了“内存泄漏”。所以修改MCC的配置路径为特定的JAR包,问题解决。

2022-10-11 13:45:48 1697

原创 给定字符串判定字符位置,字符个数

题目列表“abc21b416u” ===> 统计数字有几个,字母有几个?给定一个字符串, 判断该字符串中是否包含某个子串.如果包含, 求出子串的所有出现位置.如:"abcd23abc34bcd"中,"bc"子串的出现位置为: 1,7,11.字符串和子串均由用户在控制台输入给定一个由数字组成的字符串,如:“1239586838923173478943890234092”,统计出每个数字出现的次数字符串,统计出现次数,次数为1时后面不输出次数 “aaaaaaabbbbbcerrrrgggggg

2020-11-25 11:20:09 876

原创 List去除重复元素统计个数

List去除重复元素统计个数 集合中存入重复数据,统计每个数据出现的次数 把如下元素去掉重复元素存入List集合 “aaa” “bbb” “aaa” “abc”“xyz” “123” “xyz”这是两道题,用一种方法可以解决,灵活运用即可public class Test { public static void main(String[] args) { List<String> list = new ArrayList<>();

2020-11-25 10:42:20 1571

原创 TreeSet

TreeSet概念treeSet 被称为可排序集合无序不可重复,可以自动排序,没有下标底层是TreeMap数据结构,TreeMap底层是二叉树放到TreeSet集合中的元素,等于放到TreeMap集合中的key部分/** * 注意:TreeSet可以自动排序自定义类型吗? * 不可以,会出现类型转换异常 ClassCaseException * 实现自定义类排序,需实现Comparable接口并且编写排序规则 */

2020-11-21 14:29:49 270

原创 String&Array字符串|数组练习

String&Array练习关于String类的方法和Array的操作字符串分割,数组排序,字符串赋值给自定义对象并添加到数组中题目:从键盘上输入身份证号, 判断出生日期,性别,身份证倒数第二位表示性别,双数为女性,单为男有字符串: ”101,lisi,98;202,wangwu,76;303,chenqi,84;404,zhangsan,49;505,xiaoming,67”,保存的学生的学号,姓名,成绩信息.要求把字符串中学生信息取出来,创建Student对

2020-11-21 14:26:44 399

原创 MySQL三部曲之渐入佳境

连接查询什么是连接查询在实际开发中,大部分的情况都不是从单表中查询数据,一般是多张表联合查询取出最终结果。实际开发中,一般一个业务会对应多张表,如学生和班级,起码两张表。stuno stuname classno classname------------------------------------------------------------1 张三 1 深圳中学高三1班2 李四 1 深圳中学高三1班学生和班级信息存储到一张表中

2020-11-11 17:44:58 162

原创 MySQL三部曲之初见端倪

sql、DB、DBMS分别是什么,他们之间的关系?DB:DataBase(数据库,数据库实际上在硬盘上以文件的形式存在)DBMS:DataBase Management System(数据库管理系统,常见的有:MySQL Oracle DB2 Sybase SqlServer…)SQL:结构化查询语言,是一门标准通用的语言,标准的sql适合于所有数据库产品。SQL属于高级语言,只要能看懂英语单词,写出来的sql语句,可以读懂什么意思。SQL语句在执行的时候,实际上内部也会先进行编译..

2020-11-11 17:30:37 222

原创 二维数组迷宫趣题

import java.util.Scanner;/** * A代表人物 * 核心思路,交换元素下标位置,走出迷宫 */public class TwoDimensionalMap { public static void main(String[] args) { char[][] map={ {'*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','.

2020-11-08 12:42:43 444 2

原创 JavaWeb:报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

JSP页面顶端出现“红色”的报错信息:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。原来Javaweb工程类中没有添加Tomcat运行时相关类导致。下面是具体的解决方法:1、右击web工程-》属性或Build Path-》Java Build Path->Libra...

2020-01-06 17:31:06 307

原创 MySQL插入中文显示问号

乱码问题出现的情况有很多种,针对web开发这一流程来说,可以根据数据的流向来定位乱码出现的位置。前台发起一个请求,数据通过http协议到后被接收,这里数据会进行一次编码,在ssm环境下,是springMVC来拦截请求进行处理,所以在springMVC中能配置数据的编码格式,springMVC提供的是一个filter,在web.xml中配置。 &lt;filter&gt; &lt...

2018-03-20 00:56:11 4022 1

原创 String、StringBuffer、StringBuilder的区别

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常

2016-09-03 12:18:24 430

原创 Struts1 与 Struts2 的比较

Action   类: ?   Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。 ?   Struts   2   Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现常用的接口。Action接口不是必须的,任何有execute标识的PO

2016-09-02 17:08:27 471

原创 谈谈MVC模式

1.如何设计一个程序的结构,这是一门专门的学问,叫做"架构模式"(architectural pattern),属于编程的方法论。MVC模式就是架构模式的一种,它对我的启发特别大。我觉得它不仅适用于开发软件,也适用于其他广泛的设计和组织工作。下面是我对MVC模式的一些个人理解,不一定正确,主要用来整理思路。2.MVC是三个单词的首字母缩写,它们是Model(

2016-09-02 11:33:35 488

原创 如何创建并运行java线程

Java线程类也是一个object类,它的实例都继承自java.lang.Thread或其子类。 可以用如下方式用java中创建一个线程:1Tread thread = new Thread();执行该线程可以调用该线程的start()方法:1thread.start();

2016-09-02 11:28:12 528

转载 面向对象的三个基本特征

面向对象的三个基本特征(讲解)面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能

2016-07-24 22:10:04 514

原创 (学生信息管理系统)进销存管理系统--员工管理篇

进销存管理系统是企业的循环系统,是整个企业生产经营活动的物质基础。企业的生产经营活动,从材料的采购、产品的生产加工到产品的销售等等,从一定意义上讲,都是物料的转换和流动的过程。进销存管理系统的运作和效率直接影响着企业的经济效益。效易王从整个企业物流的视角出发,实现了库存、采购和销售的物流的整合,并且和生产、财务等子系统集成。进销存管理系统帮助企业合理配置物流资源,动态控制物流动向,有效地保障生产经

2016-05-15 16:27:11 1661

原创 Struts2连接数据库实现登陆(验证码)、注册

实现登陆、注册登陆带验证码环境eclipse (Java EE)+  Tomcat + MySQLStruts2   需要配置Struts2,首先修改web.xml,在中加入: struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

2016-04-23 23:23:23 2578

原创 将eclipse中的project配置到Tomcat

和MyEclipse不一样,在Eclipse中做的Web项目默认是不支持将项目发布到Web服务器上的,会发布到工作空间的某个目录,因此无法在外部启动Tomcat来运行Web项目,只有打开Eclipse中的服务器,才能运行Web项目。所以要对Eclipse进行修改,才能将做好的项目,发布到Tomcat服务器上,发布到服务器上的Webapps文件夹下。        在Eclipse中,默认会

2016-04-22 14:56:06 1880

原创 struts2验证码登陆实现

首先是生成随机验证码图片的action:package actions;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.ByteArrayInputStream;import java.io.

2016-04-13 21:58:20 7375 1

原创 Struts2的There is not Action mapped for namespace [/] 错误

错误原因让人啼笑皆非……重点内容**There is no Action mapped for namespace [/] and action name [test] associated with context path [/test]. - [unknown location] at com.opensymphony.xwork2.DefaultActionProxy.prepa

2016-04-13 17:36:47 822

原创 Android显示TextView文字的倒影效果

今天记录一下TextView的倒影效果,显示一串文字,然后在文字的下方显示出它的倒影,先上效果图:    最重要的就是View中getDrawingCache()方法,该方法可以获取cache中的图像,然后绘制出来。  废话不多说,我是想写一个带有倒影的时间,时间可以走动。首先先写一个带有时间走动的View,这个很简单,获取当前时间,然后开启一个线程,隔一秒获取当前时间一次,然后显示在TextV

2016-04-10 15:17:43 849

原创 android实现漫天雪花&下雨效果

**前言:**英文原文地址:https://blog.stylingandroid.com/snowfall/ 中文翻译地址:http://www.open-open.com/lib/view/open1452263908573.html 国外大神实现效果youtube视频地址:https://www.youtube.com/watch?v=pk66ZziTfOw 中文翻译是open开发者经

2016-04-10 15:10:04 2479

原创 数据库系统原理设计--论坛系统

论坛信息管理系统 摘要:随着科学技术的发展,基本上所有的具有一定数量数据的机构都 开始使用计算机数据库来管理。现如今网络盛行,BBS 论坛已成为人们生活 中的一种信息交流渠道,它通过在计算机上运行服务软件,允许用户使用终端 程序通过电话调制解调器拨号或者 Internet 来进行连接,执行下载数据或程 序、上传数据、阅读新闻、与其他用户交换消息等功能。 本文主要介绍利用 S

2016-04-09 16:08:49 5525

原创 在linux中安装MySQL(Ubuntu)

目录MySQL在Windows中安装MySQL在Linux Ubuntu中安装通过命令行客户端访问MySQL修改MySQL服务器的配置新建数据库并设置访问账号改变数据存储位置1. MySQL在Windows中安装在Windows系统上安装MySQl数据库是件非常简单的事情,下载压缩包,解压即可。下载地址:http://dev.mysql.com/do

2016-04-01 23:20:35 927

原创 linux下安装配置JDK,详细步骤图文

1、复制jdk到安装目录(1)假设jdk安装文件在桌面,我们指定的安装目录是:/usr/local/java 。可是系统安装后在/usr/local下并没有java目录,这需要我们去创建一个java文件夹,如图(1)  (2)切换到桌面下,执行复制,如图(2)  2、安装jdk(1)切换到root用户下,如图(3)

2016-03-30 00:24:17 6643 1

原创 The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path表头报错解决

用eclipse做jsp文件,自动创立的文件表头出现这个报错,应该怎么处理?JSP页面顶端出现“红色”的报错信息:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。原来Javaweb工程类中没有添加Tomcat运行时相关类导致。下面是具体的解决方法:1、右击web工程-》

2016-03-29 19:37:01 1146

原创 (算法-training)前缀表达式

问题描述  编写一个程序,以字符串方式输入一个前缀表达式,然后计算它的值。输入格式为:“运算符 对象1 对象2”,其中,运算符为“+”(加法)、“-”(减法)、“*”(乘法)或“/”(除法),运算对象为不超过10的整数,它们之间用一个空格隔开。要求:对于加、减、乘、除这四种运算,分别设计相应的函数来实现。  输入格式:输入只有一行,即一个前缀表达式字符串。  输出格式:输出相应的计

2016-03-18 15:36:20 1260

原创 (算法-training)Anagrams问题

问题描述  Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的。例如,“Unclear”和“Nuclear”、“Rimon”和“MinOR”都是Anagrams。编写一个程序,输入两个单词,然后判断一下,这两个单词是否是Anagrams。每一个单词的长度不会超过80个字符,而且是大小写无关的。  输入格式:输入有两行,分

2016-03-18 15:27:37 665

空空如也

空空如也

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

TA关注的人

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