jvm2】的更多相关文章

3.JVM类加载机制 (1)类加载机制 虚拟机把描述类的数据从Class文件,用ClassLoader ,加载到内存,并对数据进行校验.转换解析和初始化,最终形成虚拟机直接使用的java类型, 这就是虚拟机的类加载机制. (2)在java语言里面,类型的加载.连接.初始化过程都是在程序运行期间完成的, 缺点:增加性能开销 优点:提高程序灵活性 (3)类的生命周期 a.加载 b.连接(包括:验证,准备,解析) c.初始化 d.使用 e.卸载(出内存) 类的加载过程必须按照这五个步骤,按部就班的 开…
1.Class文件 (1)无关性:除了平台无关性,JVM还支持语言无关性:目前Clojure.Groovy.JRuby.Jyphon.Scala等语言可以在JVM上运行.实现语言无关性的原理仍然是字节码和JVM:其他语言的程序同样可以编译成Class文件,被JVM执行.字节码是平台无关性的基石. (2)Class文件是以字节为基础单位的二进制流:各项数据按照顺序严格紧凑的排列,没有分隔符:对于多字节数据使用大端存储. 使用javap -verbose Test.class方法可以分析class文…
(1)-Xms20M 表示设置JVM堆内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM堆内存的最大值为20M,必须以M为单位.将-Xmx和-Xms设置为一样可以避免JVM内存自动扩展.大的项目-Xmx和-Xms一般都要设置到10G.20G甚至还要高 (3)-verbose:gc 表示输出虚拟机中GC的详细情况 (4)-Xss128k 表示可以设置虚拟机栈的大小为128k (5)-Xoss128k 表示设置本地方法栈的大小为128k.不过HotSpot并不区分虚拟机栈和本…
堆,方法区,栈的关系 分配最大堆内存-Xmx32m class SimpleHeap(val id: Int){ fun show() = println("My id is $id") } fun main(args: Array<String>) { val s1 = SimpleHeap(1) val s2 = SimpleHeap(2) s1.show() s2.show() } 方法区内保存类的基本信息,包括方法的实现.方法区里面的信息很少清除 Java堆内保存着…
垃圾回收器的实现: 1.让用户都暂停,不再产生垃圾,就去收集垃圾.新生代用复制算法清理垃圾,老生代用标记整理算法搜集垃圾. 优秀的算法:服务端默认是CMS收集器. %..jvm案例演示 内存: Jconsole的内存标签相当于可视化的jstat命令,用于监视收集器管理的虚拟机内存(java堆和永久代)的变化趋势. 我们通过下面的一段代码体验一下它的监视功能.运行时设置的虚拟机参数为:-Xms100m -Xmx100m -XX:+UseSerialGC,这段代码的作用是以64kb/50毫秒的速度往…
1 JVM简介 VM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的.Java虚拟机包括一套字节码指令集.一组寄存器.一个栈.一个垃圾回收堆和一个存储方法域. JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行.JVM在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指…
目录 类加载子系统 类加载器子系统 类加载器ClassLoader角色 类加载的过程 案例 加载Loading 连接Linking 初始化Intialization clinit() 类的加载器 虚拟机自带的加载器 启动类/引导类加载器 扩展类加载器 系统类加载器 用户自定义类加载器 为什么要自定义加载器? ClassLoader 获取ClassLoader途径 双亲委派机制(重点) 双亲委派机制原理 代码演示 案例1 案例2 双亲委派机制的优势 沙箱安全机制 其他 如何判断两个Class对象是…
说到负载均衡LVS这套技术,有很多种实现方法. 本文所说,主要就是利用apache服务器实现反向代理,实现负载均衡. 首先,传统的正向代理如下图所示,正如我们用的游戏加速代理,大多的个人PC把请求发给正向代理服务器,代理服务器通常配置高端的带宽,替我们请求相应的服务.…
建档日期:   2016/08/31 最后修改日期:   2016/12/09   1 概述 本文描述了CAS单点登录服务端配置的大概流程,希望抛砖引玉,帮助你完成CAS服务端的配置. 本文采用apache+tomcat+memcached,tomcat共享session,应用把票据存在memcached中,apache使用ssl完成配置.   2 Build Cas Server 2.1 准备编译环境 下载maven: https://maven.apache.org/download.cgi…
搞java的不懂rmi好像说不过去.. ,复习一遍. 参照http://www.iteye.com/topic/173909 http://lzj0470.iteye.com/blog/426760 非常详细 步骤 1 准备接口Interfase(需继承Remote)和实现类Clazz(继承UnicastRemoteObject实现Interfase) 2 server:创建Clazz,绑定Naming.rebind ("p1", p1); (端口默认是1099 ? )—— 如此简单!…
今天遇到一个问题: 执行bat,关闭jmx的时候,由于程序关闭之后又去连接了一次,cmd窗口报错,类似: 2013-7-11 15:58:05 ClientCommunicatorAdmin restart警告: Failed to restart: java.io.IOException: Failed to get a RMI stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectE…
windows 下Apache和tomcat整合 负载均衡session共享 准备工作: 1. Apache 2.2.4 下载地址:http://cztele1.skycn.com/down/apache_2.2.4-win32-x86-no_ssl.zip 2. Tomcat 6.0.16 下载地址:http://apache.mirror.phpchina.co ... e-tomcat-6.0.16.zip 3. JDK 下载地址:http://cds.sun.com/is-bin/INT…
从上篇文章到这篇文章,中间用了一段时间准备,主要是想把东西讲透,同时希望大家给与一些批评和建议,这样我才能有所进步,也希望喜欢我文章的朋友,给个赞,这样我才能更有激情,呵呵. 由于本篇要写的内容有点多,我就分为几篇博客进行了详细描述. Haproxy提高web应用的高可用 上一篇文章讲到了haproxy+tomcat的方案,文章地址:大型网站系统架构的演进(四)http层负载均衡之haproxy实践篇(一) 大家可以先温习一下, 文中提到了高可用,该集群方案也可以提高应用系统的高可用,如果tom…
一.软件准备 Apache 2.2 : http://httpd.apache.org/download.cgi,下载msi安装程序,选择no ssl版本 Tomcat 6.0 : http://tomcat.apache.org/download-60.cgi,下载Tomcat 6.0.18 zip文件 注意:由于Apache和Tomcat项目与集群相关的模块均处于持续发展和优化过程中,因此笔者不保证本文配置方法对所有Apache和Tomcat版本均适用. 二.软件安装 把Apache安装为运…
在Win7中使用apache为tomcat做负载均衡,各组件及版本如下: 两个tomcat v 7.0.57 一个apache v 2.2.14 一个mod_jk v 1.2.33(for windows i386 httpd 2.2.x),下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/tomcat-connectors-1.2.33-windows-i386-httpd-2.2.…
网站集群部署解决计划 一.       计划目标 实现互动留言系统.后台发布系统的高可用性,有效解决高并发量对单台应用服务器的打击,确保应用服务器单点故障不影响系统正常运行. 二.       部署架构 采取Tomcat集群的部署方法,Apache通过proxy_module代理方法对用户的请求进行负载均衡,转发至tomcat集群中的某一实例进行处置,tomcat集群之间通过Memcached高性能缓存集群共享速决Session.详细结构如下图: 三.       完整解决计划 1.      …
为了获取更好的性能,我们常常需要将tomcat进行集群部署.下文通过nginx转发实现tomcat集群,并通过nginx-upstream-jvm-route插件保证session的粘滞. 应用场景环境: server1 服务器上安装了 nginx + tomcat01 server2 服务器上只安装了 tomcat02 server1 IP 地址: 192.168.1.88 server2 IP 地址: 192.168.1.89 安装步骤: 1)在server1 上安装配置 nginx + n…
说明:本篇不面向无开发基础的人员,所以不会有软件下载,jdk安装等步骤.比较久远的东西了...... 1.系统环境 win7-64.jdk 2.软件列表: apache_2.2.24-x64-no-ssl.msi.tomcat5 3.配置步骤说明: 1)配置使用哪种方式实现负载均衡. 2)更改tomcat配置文件相关端口(我是在本机测试的,本机有多个tomcat) 3)对接apache和tomcat 4.配置开始 1)apache 安装目录下的 conf/httpd.conf 文件修改 解除下列…
运行环境:apache2.2.X + tomcat6.0.X + window xp 1. 安装Apache,服务启动后在浏览器中输入http://localhost进行测试,如果能看到一个"It works!"的页面就代表Apache已经正常工作了 2. 安装Tomcat,略. 3. Apache配置 由于Apache 2.2.x集成了mod_jk功能,相对于1.3版本,不需要再进行繁琐的worker.properties配置,配置过程大幅简化. 3.1. 在Apache安装目录下找…
原http://www.cnblogs.com/hellowood/archive/2010/08/05/1793364.html 键字: sso域名:cas.server.com 登陆地址(spring web flow):https://cas.server.com/cas/login 登陆地址(直接):https://cas.server.com/cas/directLogin 退出地址:https://cas.server.com/cas/logout 语言参数:locale=zh_CN…
Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>. 蕃薯耀 2016年7月6日 16:12:52 星期三 http://fanshuyao.iteye.com/ 在Win7实现Tomcat+Ngin…
一.软件准备 Apache 2.2 : http://httpd.apache.org/download.cgi,下载msi安装程序,选择no ssl版本 Tomcat 6.0 : http://tomcat.apache.org/download-60.cgi,下载Tomcat 6.0.18 zip文件 注意:由于Apache和Tomcat项目与集群相关的模块均处于持续发展和优化过程中,因此笔者不保证本文配置方法对所有Apache和Tomcat版本均适用. 二.软件安装 把Apache安装为运…
前端服务器采用nginx,后端应用服务器采用tomcat.nginx负责负载均衡,session复制在tomcat上处理. 1.nginx安装(略) 2.nginx配置负载均衡 http { include       mime.types; default_type  application/octet-stream; sendfile        on; keepalive_timeout  65; #设置负载均衡列表 upstream backend { #ip_hash; server…
目录[-] 1 发布 RMI 服务1.1 定义一个 RMI 接口1.2 编写 RMI 接口的实现类1.3 通过 JNDI 发布 RMI 服务2 调用 RMI 服务3 RMI 服务的局限性4 使用 ZooKeeper 提供高可用的 RMI 服务4.1 服务提供者4.2 服务消费者4.3 发布服务4.4 调用服务4.5 使用方法5 总结 在 Java 世界里,有一种技术可以实现"跨虚拟机"的调用,它就是 RMI(Remote Method Invocation,远程方法调用).例如,服务A…
一.搭建apache server服务器 1.apache server图示:(加载图片要一张一张,所以可以到下面网站下载带图片的word) http://download.csdn.net/user/y0908105023 环境:linux6.2 apache服务器地址(192.168.181.140)tomcat1(192.168.181.141)tomcat2(192.168.181.142)memcached(192.168.181.131) 2.使用apache的原因 apachese…
一.配置tomcat 多启动 1.下载免安装版 tomcat7 http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.81/bin/apache-tomcat-7.0.81-windows-x64.zip 解压tomcat7免安装版,复制三个解压tomcat文件夹 (tomcat7-1,tomcat7-2,tomcat7-3) 2. 配置环境变量 变量名=变量值 TOMCAT_HOME1 = tomcat解压路径(F:\server\tomca…
package org.study2.javabase.ThreadsDemo.sync; /** * @Auther:GongXingRui * @Date:2018/9/20 * @Description: 单例模式 - 二次确认,提高效率 **/ public class DanDemo { public static void main(String args[]) { Dan dan1 = new Dan(); Dan dan2 = new Dan(); dan1.start(); d…
系统:Ubuntu 16.04 LTS 环境:vscode+java extension pack打开了一个gradle的java项目:另外,用一个terminal启动了groovysh 报错: groovysh报错 java.util.prefs.FileSystemPreferences syncWorld警告: Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.…
推荐阅读:http://www.iteye.com/topic/806990 一.起手式——基本概念 1.什么叫线程 进程:进行中的程序:作为资源分配的单位. 线程:轻量级的进程:程序里的顺序控制流,可以理解为程序里不同的执行路径:作为调度和执行的单位  多个线程可以共享内存,共享地址.相互间的通信十分迅速    线程体为run()方法(直接调用run()视为普通方法),启动线程为start()方法 这里方法run()称为线程体, 它包含了要执行的这个线程的内容, Run方法运行结束, 此线程终…
Ignite的数据网格是围绕着基于内存的分布式key/value存储能力打造的.当初技术选型的时候,决定用Ignite也是因为虽然同样是key/value存储,它有着和其他key/value存储系统不同的特性.根据官网的介绍,Ignite在设计之初,就是为了能方便的水平扩展而设计的.Ignite将数据分片,每个节点只存储数据的一部分,这样每当有新节点加入时,整个集群可以存储更多的数据.为了提高可用性,Ignite也支持用不同的策略对数据分片进行冗余备份,这样保证数据不会因为集群中一两个节点失效而…