![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
框架
图灵学院诸葛
这个作者很懒,什么都没留下…
展开
-
JVM中的本机内存跟踪
1.概述 有没有想过为什么Java应用程序通过众所周知的-Xms和-Xmx调优标志消耗的内存比指定数量多得多?出于各种原因和可能的优化,JVM可以分配额外的本机内存。这些额外的分配最终会使消耗的内存超出-Xmx限制。 在本教程中,我们将列举JVM中的一些常见内存分配源,以及它们的大小调整标志,然后学习如何使用本机内存跟踪监视它们。 2.原生分配 堆通常是Java应用程序中最大的内存使用者,...原创 2019-07-23 21:20:31 · 122 阅读 · 0 评论 -
什么是Kafka呢?
【前情提要】最近在gayhub上面得到一个开源项目,遂准备研究一下源码,当然第一步就是要把项目运行起来。然后看了一下技术栈,发现包管理工具是使用yarn,以前也听说过yarn但是也没有具体使用过,只知道是facebook发布的包管理程序。 1、安装 1.下载node.js,使用npm安装 npm install -g yarn 查看版本:yarn --version 2.安装node...原创 2019-08-15 16:51:01 · 104 阅读 · 0 评论 -
Java中ThreadLocal的设计与使用
ThreadLocal是什么 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是thread local variable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变...原创 2019-07-28 16:31:38 · 103 阅读 · 0 评论 -
多个平台的 Java Launcher 脚本
通常对于服务来说,过长的命令往往让人感到厌烦,人们需要的只是简单的操作,并且能够支持复杂的功能,对于 Java 开发的服务来说更是如此。 一个比较复杂的 Jar 服务使用Java启动,命令如下 java -Xms512m -Xmx512m -jar fuck.jar --config config.server -port 10086 实际上许多虚拟机的语言的 Host 命令格式也是类似的...原创 2019-08-05 22:09:51 · 174 阅读 · 0 评论 -
Java面试题必须知道的知识之ThreadLocal
先列举下关于ThreadLocal常见的疑问,希望可以通过这篇学习笔记来解决这几个问题: ThreadLocal是用来解决什么问题的? 如何使用ThreadLocal? ThreadLocal的实现原理是什么? 可否举几个实际项目中使用ThreadLocal的案例? 基础知识 ThreadLocal是线程局部变量,和普通变量的不同在于:每个线程持有这个变量的一个副本,可以独立修改(set...原创 2019-07-23 15:24:45 · 133 阅读 · 0 评论 -
java的内存垃圾回收模型
一.java的内存模型 介绍如下6个组成部分 1.程序计数器:一块较小内存区域,指向当前所执行的字节码。如果线程正在执行一个Java方法,这个计数器记录正在执行的虚拟机字节码指令的地址,如果执行的是Native方法,这个计算器值为空。 2.Java虚拟机栈:线程私有的,其生命周期和线程一致,每个方法执行时都会创建一个栈帧用于存储局部变量表、操作数栈、动态链接、方法出口等信息。 3...原创 2019-07-23 15:16:45 · 163 阅读 · 0 评论 -
想做大牛,Java开发的必备技术点你理解了吗?
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 1.Java的运行(基础必备) 这条可能出看很简单,java程序的运行谁不会呢?不过很多时候, 我们只是单纯通过IDE去执行java程序,底层IDE又是如何执行java程...原创 2019-07-23 15:11:34 · 82 阅读 · 0 评论 -
你真的懂 Java 的内存管理和引用类型吗?
对于 Java 程序员来说,在 Java 虚拟机自动内存管理机制的帮助下,不再需要为每一个 new 操作去写对应的 delete/free 代码,不容易出现内存泄露和内存溢出的问题。不过,也正是因为 Java 程序员把内存控制的权力交给了 Java 虚拟机,一旦出现内存泄露和内存溢出的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会非常艰难。 本文将会对 Java 的内存管理以及四种引用...原创 2019-07-23 15:01:59 · 88 阅读 · 0 评论 -
深入浅出Java中JVM内存管理
Java岗位面试,JVM是对程序员基本功考察,通常会问你对JVM了解吗? 可以分几部分回答这个问题,首先JVM内存划分 | JVM垃圾回收的含义 | 有哪些GC算法 以及年轻代和老年代各自特点等等 1) JVM内存划分: ① 方法区 (线程共享) 常量 静态变量 JIT(即时编译器)编译后代码也在方法区存放 ② 堆内存(线程共享) 垃圾回收的主要场地 ③ 程序计数器 当...原创 2019-07-23 14:46:16 · 85 阅读 · 0 评论 -
Java垃圾回收算法
Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指令建立,但是它们不需要程序代码来显式地释放。一般来说,堆的是由垃圾回收 来负责的,尽管JVM规范并不要求特殊的垃圾回收技术,甚至根本就不需要垃圾回收,但是由于内存的有限性,JV...原创 2019-07-31 15:25:15 · 117 阅读 · 0 评论 -
LinkedList源码分析:JDK源码分析系列
1.介绍 LinkedList 是线程不安全的,允许元素为null的双向链表。 2.继承结构 我们来看一下LinkedList的继承结构图:代码实现: public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E...原创 2019-07-24 22:04:07 · 99 阅读 · 0 评论 -
关于 Spring JdbcTemplate 的一些总结
关于 Spring JdbcTemplate 的一些总结 一个小问题的思考 起因 当前项目中一直使用的都是SpringData JPA,即public interface UserRepository extends JpaRepository这种用法; 考虑到SpringData JPA确实有一定的局限性,在部分查询中使用到了JdbcTemplate进行...原创 2019-07-24 21:57:34 · 200 阅读 · 0 评论 -
为什么选择 Spring 作为 Java 框架?
1. 概述 在本文中,我们将讨论Spring作为最流行的 Java 框架之一的主要价值体现。 最重要的是,我们将尝试理解 Spring 成为我们选择框架的原因。Spring 的详细信息及其组成部分已在我们之前的教程中广泛介绍。 因此,我们将跳过介绍性的“如何”部分,并主要关注“为什么”。 2. 为什么使用任何框架? 在我们开始任何关于 Spring 的讨论之前,首先让我们了解为什么我...原创 2019-07-24 21:39:44 · 436 阅读 · 0 评论 -
JVM client模式和Server模式的区别
这里向大家描述一下JVMclient模式和Server模式两者的区别和联系,JVM如果不显式指定是-Server模式还是-client模式,JVM能够根据下列原则进行自动判断(适用于Java5版本或者Java以上版本)。 JVM client模式和Server模式 JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将...原创 2019-07-29 20:57:29 · 153 阅读 · 0 评论 -
SpringBoot:如何优雅地处理全局异常
之前用springboot的时候,只知道捕获异常使用try{}catch,一个接口一个try{}catch,这也是大多数开发人员异常处理的常用方式,虽然屡试不爽,但会造成一个问题,就是一个Controller下面,满屏幕的try{}catch,看着一点都不优雅,一点都不符合小明的气质,憋了这么久,小明今天终于决定对所有异常实施统一处理的方案。 开发准备 JDK8、正常的springboot...原创 2019-08-12 21:54:28 · 203 阅读 · 0 评论