摘要:
大部分内容转载自: "Java命令学习系列(二)——Jstack" jstack — 查看堆栈信息 jstack ( Stack Trace for java ) 命令主要作用就是为了查看堆栈信息。它可以用于生成虚拟机当前时刻的线程快照(一般称为threaddump和javacore文件)。线程快照 阅读全文
摘要:
作用 jstat的主要作用就是对Java应用程序的资源和性能进行实时监控的命令行工具,主要包括GC情况和Heap Size资源使用情况。 jstat命令格式 参数解释: 1. option 常见的都是使用 gcutil查看gc情况,其他可选项见下图。 2. vmid : VM的进程号,即当前运行的j 阅读全文
摘要:
JVM内存管理机制说到底就是为了解决两个问题:给对象分配内存以及回收分配给对象的内存。 Java Heap被分为两部分:Young Generation 和 Old Gereration。Perm并不属于Heap。 Young Generation (Young Gen) 所有的new出来的对象都放 阅读全文
摘要:
转载原文地址: "JVM的内存区域划分" 转载原文地址: "java虚拟机内存区域的划分以及作用详解" 转载原文地址: "深入理解JVM之JVM内存区域与内存分配" 学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java 阅读全文
摘要:
说明:本文为读《从Paxos到Zookeeper 分布式一致性原理与实践》读书笔记 shell操作 Java客户端 原始API pom文件: Java代码: 使用ZkClient客户端 pom.xml 创建节点: 相比原始API,ZkClient创建Znode的特性: + 支持同步创建。 + 更丰富 阅读全文
摘要:
转载原文地址: 1. "ZooKeeper学习总结 第一篇:ZooKeeper快速入门" 2. "ZooKeeper学习总结 第二篇:ZooKeeper深入探讨" 3. "ZooKeeper学习第一期 Zookeeper简单介绍" 1. 概述 Zookeeper简单来说就是一个 分布式协调技术的具体 阅读全文
摘要:
参看原文地址 1. "Java命令学习系列(三)——Jmap" 2. "jmap命令" 作用 jmap主要可以用于打印Java进程的内存映射或堆内存(Heap Dump文件)细节。(如:产生哪些对象,以及数量等)。主要是用在检查内存泄漏、一些严重影响性能的大对象,检查系统中什么对象创建的最多,分析各 阅读全文
摘要:
转载: 《ava并发编程的艺术》第7章 当程序更新一个变量时,如果多线程同时更新这个变量,可能得到期望之外的值,比如变量i=1,A线程更新i+1,B线程也更新i+1,经过两个线程操作之后可能i不等于3,而是等于2。因为A和B线程在更新变量i的时候拿到的i都是1,这就是线程不安全的更新操作,通常我们会 阅读全文
摘要:
项目背景 订单完成后,会由交易系统推送实时MQ消息给订单清算系统,告诉清算系统此订单交易完成,可以进行给商家结算等后续操作。 财务要求在交易推送订单到清算系统时和订单清算系统接收到订单消息后,需要按照财务给定的校验公式,验证交易推送的数据是否正确。比如下面的财务公式: + 商品原价 = 商品活动价 阅读全文
摘要:
精度问题: 我们知道java中直接使用float和double参与的计算都可能会产生精度问题,比如0.1+0.3、1.0 0.9 等。所以一般财务系统,都会使用BigDecimal进行加减乘除。 在调研Fel过程中,发现Fel里进行计算都是使用浮点数加减乘除的,所以不可避免的会产生精度问题。 Cas 阅读全文