自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

冷血天狼的博客

我看青山多妩媚,料青山看我应如是

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

转载 四、JVM参数及调优

​​目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言前面铺垫了那么多JVM的相关知识,比如运行时数据区,类加载,垃圾收集器,垃圾收集算法,内存回收策略等,下面,正式开始JVM参数及调优的内容一.JVM参数先来张图,看下整体的结构下面列举常用的JVM参数,分别为:-Xms 设置堆的最小空间大小 -Xmx 设置堆的最大空间大小 -XX:NewSize 设置新生代最小空间大小 -XX:MaxNewSize...

2021-11-04 23:45:15 365

原创 二、虚拟机对象探秘

目录前言1.对象创建2.类加载机制3.类加载器4.类的加载5.双亲委派模型6.自定义类加载器总结写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。1.对象创建(1)jvm遇到new指令,先去常量池是否能定位到一个类的符号引用,是否被加载,解析,初始化。没有执行类加载过程。(2)

2021-10-31 19:38:12 159

原创 尾递归

1.简单用法差距在这:线性递归:计算到头之后还要再回溯一遍 (相当于运算了两遍)尾递归 :计算到头就得到结果,不回溯 (就运算一遍)看代码,简单求阶乘公式:线性递归:// Line recursion 线性递归 public int line(int n) { if (n == 1) { return 1; } ret...

2019-10-23 14:23:32 214

原创 编码方式

1.解决乱码问题http://www.jb51.net/article/91870.htm2.常用编码方式https://www.cnblogs.com/yaya-yaya/p/5768616.html

2019-10-23 14:22:11 237

转载 字节码、class文件格式

JVM之字节码——Class文件格式如同讲汇编必先讲计算机组成原理,在开始字节码之前,我们先了解一下JVM的主要构成。 在JVM的内部,主要由如下几个部分构成: 1.数据区方法区:存放类定义信息、字节码、常量等数据,在Sun HotSpot JVM中,这块也称为Perm Gen。 堆:创建的对象信息将放入堆中,堆内部如何实现各虚拟机各不相同,对于Sun HotSpot JVM...

2019-10-23 14:21:56 217

转载 CPU缓存,L1,L2,L3和伪共享

转载至http://geek.csdn.net/news/detail/114619看了很多网上讲解java伪共享、缓存行填充和CPU缓存的MESI等等,零零碎碎,目前感觉就这篇文章讲的最清楚,忍不住转载下。原文如下:认识CPU CacheCPU Cache概述随着CPU的频率不断提升,而内存的访问速度却没有质的突破,为了弥补访问内存的速度慢,充分发挥C...

2019-10-23 14:21:43 1873

原创 常用设计模式

1.单例模式https://www.cnblogs.com/ysw-go/p/5386161.html2.策略模式https://blog.csdn.net/u012401711/article/details/524633473.工厂模式https://blog.csdn.net/zxt0601/article/details/527984234.适配器https:/...

2019-10-23 14:21:28 111

原创 tcp、udp、http、https等常用协议

1.tcp、udp、http、https等常用协议http://lib.csdn.net/article/computernetworks/209382.三次握手与四次关闭、流量控制和拥塞控制、OSI七层模型、tcp粘包与拆包https://blog.csdn.net/li_haijiang/article/details/70807854.3.流量控制和拥塞控制https:/...

2019-10-23 14:21:13 172

转载 http1.0 http1.1 http2之间的区别

长连接HTTP 1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支持长连接。HTTP是基于TCP/IP协议的,创建一个TCP连接是需要经过三次握手的,有一定的开销,如果每次通讯都要重新建立连接的话,对性能有影响。因此最好能维持一个长连接,可以用个长连接来发多个请求。节约带宽HTTP 1.1支持只发送header信息(不带任何body信息),...

2019-10-23 14:21:05 200

转载 Java RMI,Socket,HttpClient

一般来说,基于CS(client-server)软件架构的开发技术有很多种。比较常用的有:基于socket的网络编程、RPC、基于Java技术的RMI(当然C#也有类似技术)、CORBA等。在这里我们只是对基于socket的网络编程与RMI作个对比,有助于我们了解它们各自的应用领域,帮助我们在面对一个具体问题的时候选用适合的技术。另外,本文所做的讨论可以认为是脱离了语言层面的东西,只是对技术的本身...

2019-10-23 14:20:54 172

转载 用Java写一个简单的静态文件的HTTP服务器

java nio手动实现简单的http服务器  需求分析   最近在学习HTTP协议,还是希望动手去做一做,所以就自己实现了一个http服务器,主要功能是将http请求封装httpRequest,通过解析web.xml,用不同的handler处理不同的uri,然后再将封装好的httpResponse还原成http响应返回浏览器。  代码已经成功上传至 GitHub 如果对...

2019-10-23 14:20:37 873

原创 了解nginx和apache服务器的特性并搭建一个对应的服务器

1.搭建nginx服务器https://www.cnblogs.com/wanghuaijun/p/5480554.html2.搭建apache服务器https://www.linuxidc.com/Linux/2017-03/141687.htm

2019-10-23 14:20:20 141

原创 用Java实现FTP、SMTP协议

1.ftp上传,下载,删除文件https://www.cnblogs.com/weihbs/p/7760552.html2.smtp发送邮件https://blog.csdn.net/u011627980/article/details/50750159

2019-10-23 14:20:11 294

转载 进程间通讯的方式

进程间通信(IPC)介绍进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。以Linux中的C语言编程为例。一、管道管道,通常指无名管道,是 UNI...

2019-10-23 14:20:00 128

原创 反向代理

1、前言  最近工作中用到反向代理,发现网络代理的玩法还真不少,网络背后有很多需要去学习。而在此之前仅仅使用了过代理软件,曾经为了访问google,使用了代理软件,需要在浏览器中配置代理的地址。我只知道有代理这个概念,并不清楚代理还有正向和反向之分,于是赶紧学习一下,补充一下知识。首先弄清楚什么是正向代理,什么是反向代理,然后是二者在实际使用中展示的方式是什么样的,最后总结一下正向代理用来做什...

2019-10-23 14:19:37 141

转载 什么是CDN?如果实现?

CDN的实现原理在描述CDN的实现原理,让我们先看传统的未加缓存服务的访问过程,以便了解CDN缓存访问方式与未加缓存访问方式的差别:用户提交域名→浏览器对域名进行解释→得到目的主机的IP地址→根据IP地址访问发出请求→得到请求数据并回复由上可见,用户访问未使用CDN缓存网站的过程为:1)、用户向浏览器提供要访问的域名;2)、浏览器调用域名解析函数库对域名进行解析,以得到此域名对...

2019-10-23 14:19:17 133

转载 什么是DNS

域名解析服务器,靠它把你要访问的网址找到然后把信息送到你电脑上。DNS 是域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,...

2019-10-23 14:19:02 128

原创 异常

1.异常类型https://www.cnblogs.com/cvst/p/5822373.html2.正确处理异常https://www.cnblogs.com/hihtml5/p/6505994.html3.自定义异常https://www.cnblogs.com/AlanLee/p/6104492.html

2019-10-23 14:16:32 120

转载 什么是API&SPI

定义和区别先描述下API(Application Programming Interface)。在java中,我们使用java提供的很多类、类的方法、数据结构来编写我们的应用程序,最终完成我们需求的程序功能,这里的类、方法、数据结构即是jdk提供的api。api的意义,其实就是这些提供给你完成某项功能的类、接口或者方法。 而SPI(Service Provider Int...

2019-10-23 14:16:12 312

原创 常用的Java工具库

1.commons.lang,commons.*https://www.cnblogs.com/shuozi-love/p/4502494.html2.guava-librariesnettyhttp://www.javaxxz.com/thread-360055-1-1.htmlhttps://www.cnblogs.com/htynkn/archive/2012/08/19...

2019-10-23 14:15:41 117

转载 Java序列化之排除被序列化字段(transient/静态变量)

我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。 然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果一个用户有一些敏感信息(...

2019-10-23 14:14:58 308

转载 序列化与单例模式

本文将通过实例+阅读Java源码的方式介绍序列化是如何破坏单例模式的,以及如何避免序列化对单例的破坏。单例模式,是设计模式中最简单的一种。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。关于单例模式的使用方式,可以阅读单例模式的七种写法但是,单例模式真的能够实...

2019-10-23 14:14:34 416

转载 序列化原理

前沿欢迎进入JDK源码阅读之序列化专题!java序列化从JDK1.1版本就开始,是一项比较成熟的技术。对于初学者可能很容易就能学会如何编写序列化类,但是对其详细的原理以及一些细节上的技术了解还是比较少的。本专题将分三个部分从JDK源代码的角度向大家介绍java序列化相关的知识: Part1:对序列化协议做出比较深入的探讨,最后总结出序列化的基本算法; Part2:了解自定义序列化...

2019-10-23 14:13:27 171

转载 虚拟机性能监控与故障处理工具

运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole、大名鼎鼎的VisualVM,IBM的Memory Analyzer等等,但是在生产环境出现问题的时候,一方面工具的使用会有所限制,另一方面喜欢装X的我们,总喜欢在出现问题的时候在终端输入一些命令来解决。所有的工具几乎都是依赖于jdk的接口和底层的这些命令,研究这些命...

2019-10-23 14:12:54 141

原创 一、JVM内存结构

1.jvm内存设置-Xms设置堆的最小空间大小。 -Xmx设置堆的最大空间大小。 -XX:NewSize设置新生代最小空间大小。 -XX:MaxNewSize设置新生代最大空间大小。 -XX:PermSize设置永久代最小空间大小。 -XX:MaxPermSize设置永久代最大空间大小。 -Xss设置每个线程的堆栈大小。参考:https://www.cnblogs.com/...

2019-10-23 14:10:57 143 1

转载 正则表达式之java.lang.util.regex.*

转自:JAVA中正则表达式的应用-java.util.regex篇看Hadoop源码,发现了java的正则表达式,以前虽然一直知道这个东西,但是还没用过,赶紧百度下,把百度到的东西抄过来……Tips:不太会用CSDN的代码编辑器,给搞成这求样了,见谅啊……现在JDK1.4里有了自己的正则表达式API包,JAVA程序员可以免去找第三方提供的正则表达式库的周折了,我们现在就马上来了解一下这...

2019-05-21 11:00:23 384

转载 单元测试

1.JUNIThttps://www.w3cschool.cn/junit/2.mockhttps://segmentfault.com/a/11900000102116223.mockitohttps://www.cnblogs.com/zishi/p/6780719.html4.内存数据库(H2)https://blog.csdn.net/chndata/artic...

2019-05-21 10:47:34 202 1

原创 泛型

泛型和继承泛型就是广泛的类型,就是在不同类型之间都可以使用的就叫做泛型,使用的是类型里面的方法,所以如果要使用泛型就需要保证使用泛型的类需要有共同的方法,泛型(generics,genericity)又称为“参数类型化(parameterized type)”或“模板(templates)”,是和继承(inheritance)不同而互补的一种组件复用机制。 继承和泛...

2019-05-21 10:46:55 274

转载 JMX和java.lang.management.*

转载:https://blog.csdn.net/zhongweijian/article/details/76193831.什么是Java消息服务 Java消息服务指的是两个应用程序之间进行异步通信的API,它为标准消息协议和消息服务提供了一组通用接口,包括创建、发送、读取消息等,用于支持JAVA应用程序开发。在J2EE中,当两个应用程序使用JMS进行通信时,它们之间并不是直接相连的,而...

2019-05-21 10:43:02 476

原创 注解

1.自定义annotation先看一个注解实例:import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;imp...

2019-05-21 10:39:33 211

转载 什么是序列化与反序列化,为什么序列化

转载:https://blog.csdn.net/qq_27093465/article/details/78544505遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题a,什么叫序列化和反序列化b,作用。为啥要实现这个 Serializable 接口,也就是为啥要序列化c,serialVersionUID 这个的值到底是在怎么设置的,有什么用。有的是1...

2018-11-22 22:21:46 9581 1

转载 反射与工厂模式

转载:https://www.cnblogs.com/AaronCui/p/4915055.html工厂模式简介工厂模式是最常用的实例化对象模式。工厂模式的主要作用就是使用工厂方法代替new操作。为什么要使用工厂模式?直接new不好吗?直接new没有什么不好,只是工厂模式可以给系统带来更好的可扩展性和尽量少的修改量。分类工厂模式一般有两类,一类是工厂方法模式,另一类...

2018-07-29 20:46:50 531

转载 javassist

转载:https://www.cnblogs.com/sunfie/p/5154246.htmljavassist可以实现动态编程,即动态生成class文件,或者操作class文件,下面就详细介绍。1、读取和输出字节码 1 ClassPool pool = ClassPool.getDefault(); 2 //会从classpath中查询该类 3 CtClass cc = po...

2018-07-29 18:03:15 939

转载 Java反射

转载:https://blog.csdn.net/sinat_38259539/article/details/71799078反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码))一、反射的概述JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一...

2018-07-29 18:00:17 156

转载 Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)

转载:http://blog.csdn.net/anxpp/article/details/51512200本文会从传统的BIO到NIO再到AIO自浅至深介绍,并附上完整的代码讲解。    下面代码中会使用这样一个例子:客户端发送一段算式的字符串到服务器,服务器计算后返回结果到客户端。    代码的所有说明,都直接作为注释,嵌入到代码中,看代码时就能更容易理解,代码中会用到一个计算结果...

2018-07-29 17:52:46 150

转载 枚举的用法、枚举与单例、Enum类

转载:https://www.cnblogs.com/hyl8218/p/5088287.htmlenum 的全称为 enumeration, 是 JDK 1.5  中引入的新特性,存放在 java.lang 包中。下面是我在使用 enum 过程中的一些经验和总结,主要包括如下内容:原始的接口定义常量public interface IConstants {    Strin...

2018-07-29 17:42:32 1075

转载 不同版本的JDK中HashMap的实现的区别以及原因

转载:http://blog.csdn.net/vking_wang/article/details/141665931. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。      数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表...

2018-07-29 17:32:59 2560

转载 apache commons常用工具类

1.有些情况下,Arrays满足不到你对数组的操作?不要紧,ArrayUtils帮你ArrayUtilspublic class TestMain { public static void main(String[] args) {  int[] nums1 = { 1, 2, 3, 4, 5, 6 };  // 通过常量创建新数组  int[] nums2 = ArrayUt...

2018-07-29 17:25:27 1395

原创 Java 8中stream相关用法

jdk1.8新加了lambda表达式,可以帮助开发者更好的,更高效的实现一些通常复杂的代码实现1.list转换mapMap<Integer, String> mappedMovies = ghslist.stream().collect( Collectors.toMap(SaleStaticsGhsResp::getShop_saleman_id, (p) -> p....

2018-07-29 17:20:07 415

原创 常用集合类的使用

        集合类在日常的工作中经常被使用,选择一个合适的集合类,对程序的性能,健壮性都会有不小的提升,下面我们就常用的集合类给大家一一介绍简单画个图,说下组织架构List:List接口及其实现类是容量可变的列表,可按索引访问集合中的元素。 特点:集合中的元素有序、可重复; 列表在数据结构中分别表现为:数组和向量、链表、堆栈、队列。(1)ArrayList 数组结构...

2018-07-29 13:03:32 997 2

空空如也

空空如也

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

TA关注的人

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