12 2017 档案
摘要:JVM参数 标签(空格分隔): JVM 重要参数 Xms and Xmx (or: XX:InitialHeapSize and XX:MaxHeapSize) 的作用是 定义堆的初始化大小,默认值是 物理内存的1/64( 年轻代占整个堆栈的1/5Xms=Xmx并且设置了Xmn的情况下,该参数不需要
阅读全文
摘要:大部分内容转载自: "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
阅读全文
摘要:转载原文地址: "Fel是轻量级的高效的表达式计算引擎" Fel的问题 " Fel的问题" Fel是轻量级的高效的表达式计算引擎 Fel在源自于企业项目,设计目标是为了满足不断变化的功能需求和性能需求。 Fel是开放的,引擎执行中的多个模块都可以扩展或替换。Fel的执行主要是通过函数实现,运算符(+
阅读全文
摘要:转自《Java并发编程的艺术》 什么是阻塞队列 阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作支持阻塞的插入和移除方法。 1. 支持阻塞的插入方法:意思是当队列满时,队列会阻塞插入元素的线程,直到队列不满。 2. 支持阻塞的移除方法:意思是在队列为空时,获取元素
阅读全文
摘要:全文转载,原文地址: "Proxy 那点事儿" Proxy,也就是“代理”了。意思就是,你不用去做,别人代替你去处理。比如说:赚钱方面,我就是我老婆的 Proxy;带小孩方面,我老婆就是我的 Proxy;家务事方面,没有 Proxy。 它在程序开发中起到了非常重要的作用,比如传说中的 AOP(面向切
阅读全文
摘要:带着疑问去分析 1. ReentrantLock是如何实现锁管理的。 2. ReentrantLock是如何实现重入的。 3. ReentrantLock是如何实现公平锁与非公平锁。 4. ReentantLock的公平锁为什么一般情况下性能都比公平锁查。 ReentrantLock数据结构 Ree
阅读全文