`
文章列表

查看jvm栈深度

    博客分类:
  • JVM
jinfo -flag ThreadStackSize 11351(pid)
http://snowolf.iteye.com/blog/379860
鸟欲高飞先振翅,人求上进先读书。本文是原书的第9章 线程的监控及其日常工作中如何分析里的9.3.3节常见的内存溢出的三种情况。 3. 常见的内存溢出的三种情况: 1)JVM Heap(堆)溢出:java.lang.OutOfMemoryError: Java heap space JVM在 ...
Java应用程序是运行在JVM上的,但是你对JVM技术了解吗?这篇文章(这个系列的第一部分)讲述了经典Java虚拟机是怎么样工作的,例如:Java一次编写的利弊,跨平台引擎,垃圾回收基础知识,经典的GC算法和编译优化。之后的文 ...
    一、内存模型     Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model)来屏蔽掉各种硬件和操作系统之间的内存访问差异,以实现Java程序在各种平台下都能达到一致的内存访问效果。     Java内存模型的主要目标 ...
    垃圾收集器是内存回收的具体实现。Java虚拟机规范中对垃圾收集器如何实现没有明确的规定,因此不同的厂商、不同版本的虚拟机所提供的垃圾收集器都可能存在很大差别,并且一般都会提供参数供用户自己根据自己的应 ...
    在JVM中,程序计数器、虚拟机栈、本地方法栈3个区域随着线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊的执行的出栈和入栈操作。每个栈帧中分配多少内存基本上是在类结构确定下来时就已知的, ...
    再谈引用     无论是通过引用计数算法判断对象的引用数量,还是通过可达性分析算法判断对象的引用链是否可达,判定对象是否存活都与“引用”有关。在JDK1.2之前,Java中的引用定义如下:如果reference类型的数据中存储的数值代表的是另一块内存的起始地址,就称这块内存代表着一个引用。这种定义很纯粹,但是太过狭隘,一个对象在这种定义下自由被引用或者没有被引用两种状态,对于如何描述一些食之无味,弃之可惜的对象就显得无能为力。     在JDK1.2以后,为了描述这样一类对象:当内存空间足够时,则能保留在内存中;如果内存空间在进行垃圾收集后还是非常紧张,则可以抛弃这些对象。为此,JDK ...
运行时数据区域,Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用户,以及创建和销毁的时间,有的区域随着虚拟机进程的启动儿存在,有些区域则依赖用户线程的启 ...
双亲委派模型     从Java虚拟机的角度来讲,只存在两种不同的类加载器:一种是启动类加载器(Bootstrap ClassLoader),这个类加载器使用C++实现,时虚拟器自身的一部分;另一种就是所有其他的类加载器,这类加载器都由Java实现,独立于虚拟机外部,并且都继承自抽象类java.lang.ClassLoader。     从开发人员的角度来看,类加载器还可以划分的更细致一些,绝大部分Java程序都会使用到一下3中系统提供的类加载器。 启动类加载器(Bootstrap ClassLoader),这个类加载器前面已经介绍过,主要负责将存放在<JAVA_HOME>\lib ...
[size=medium]    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid,nginx等反向代理软件就不能获取到客户端的真实IP地址了。 如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为 http://www.jb51.net / 的URL时,用request.getRemoteAddr()方法获取的IP地址是:127.0.0.1 或 192.168.1.110,而并不是客户端的真实IP。 经过代理以后,由于在客户端和服务之间增 ...
TRUNCATE TABLE 删除表中的所有行,而不记录单个行删除操作。 语法 TRUNCATE TABLE name 参数 name 是要截断的表的名称或要删除其全部行的表的名称。 注释 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。 DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。 TRUNCATE TABLE ...
一、定义:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。     与需要在编译时进行连接工作的语言不同,在Java ...
1、Java类加载器的时机、过程(写博客)。 2、类加载器的父子关系,双亲委派模型与破坏双亲委派模型(写博客)。 3、GC的回收策略,JVM的内存模型(温习,并准备做总结)。
私信及反馈     1、常见XSS漏洞,防止措施,将特殊字符过滤。     2、使用白名单和黑名单结合。 文件管理     1、限制文件管理功能操作的目录。     2、限制文件管理功能访问权限。     3、禁止上传特殊字符文件名的文件,利用文件名攻击的案例http://www.myhack58.com/Article/html/3/7/2016/73694.htm。 安全体系建议: 1、密码复杂度提升        a、禁止使用弱口令。        b、强制密码使用8位以上的"大小写字母+数组+特殊字符"的组合。        c、禁止用户名和密码存在较大的相似度 ...
Global site tag (gtag.js) - Google Analytics