标签:JVM

Java

Handler机制实现原理(五)总结

xubiao.zhuang 发布于 2019-09-17

时光飞逝,不知不觉写完Handler系列文章已经用时一个月了。作为我开始分析Android Framework源码的敲门砖还是遇到了很多挫折,尤其是分析MessageQueue源码时那种百思不得其解的疑惑困扰着我很长时间。不过当我想通了这其中的原理后那种酣畅淋漓的感觉也让我很有成...

阅读(7)评论(0)赞 (0)

Java

Java面经分类以及总结(2)–思考

5

changyuan.xu 发布于 2019-09-17

hashmap是一个非线程安全的集合。 他的线程不安全出现在,并发情况下可能会出现链表成环的问题,导致程序在执行get操作时形成死循环。 hashmap成环原因的代码出现在transfer代码中,也就是扩容之后的数据迁移部分 解决问题: 使用synchronize ,或者使用co...

阅读(7)评论(0)赞 (0)

Java

线上问题排查神器 Arthas

2

xiaoli.wang 发布于 2019-09-17

之前介绍过 BTrace, 线上问题排查神器 BTrace 的使用 ,也说它是线上问题排查神器。 都是神器,但今天这个也很厉害,是不是更厉害不好说,但是使用起来非常简单。 如果你用 BTrace 的话,需要事先写好探测脚本,然后上传到需要排查问题的服务器,然后执行命令。 比方说获...

阅读(6)评论(0)赞 (0)

Java

聊聊Java中的内存

1

wenming.gapo 发布于 2019-09-17

JVM的内存 先放一张JVM的内存划分图,总体上可以分为堆和非堆(粗略划分,基于java8) 那么一个Java进程最大占用的物理内存为: Max Memory = eden + survivor + old + String Constant Pool + Code cache ...

阅读(5)评论(0)赞 (0)

Java

JVM 执行 Java 程序时的内存区域划分

1

hanze 发布于 2019-09-17

在学习 Java 虚拟机(后面简称: JVM )中的垃圾回收机制(GC)之前,先需要了解 在 JVM 中的 Java 程序(class 文件)加载到内存之后到底是怎么存的。在阅读了 JVM规范 和周志明的 《深入理解Java虚拟机(第2版)》 之后,总结一下JVM中的内存划分以及...

阅读(5)评论(0)赞 (0)

Java

Java 反序列化工具 gadgetinspector 初窥

31

xiaoli.he 发布于 2019-09-17

作者:Longofo@知道创宇404实验室 时间:2019年9月4日 起因 一开始是听@Badcode师傅说的这个工具,在Black Hat 2018的一个议题提出来的。这是一个基于字节码静态分析的、利用已知技巧自动查找从source到sink的反序列化利用链工具。看了几遍作者在...

阅读(8)评论(0)赞 (0)

Java

(1/4)Java 垃圾回收介绍

2

dulong 发布于 2019-09-17

Java Garbage Collection Introduction 原文地址 https://javapapers.com/java/j… In Java, allocation and de-allocation of memory space for obj...

阅读(8)评论(0)赞 (0)

Java

Java 配 Shell 等于美酒加咖啡

5

songhua.gao 发布于 2019-09-17

【这是一猿小讲的第? 51 ?篇原创分享】 化学中我们得知「氢气加氧气在点燃的情况下会生成水」。 生活中我们得知「良辰加美景的情况下会得到千金春宵一刻」。 技术上又何尝不是如此呢?先假设一个场景:BOSS 让你实现一个服务监控的指挥室,能看到每个服务器的磁盘剩...

阅读(7)评论(0)赞 (0)

Java

淘宝网从 100 到 1000 万高并发的架构演进之路

17

刘莉莉 发布于 2019-09-17

1、引言 本文以设计淘宝网的后台架构为例,介绍从一百个并发到千万级并发情况下服务端的架构的14次演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知。 文章最后汇总了一些架构设计的原则。 2、关于作者 huashiou: 广东工业大学计算机科学与技...

阅读(9)评论(0)赞 (0)

Java

为何Spring MVC可获取到方法参数名,而MyBatis却不行?【享学Spring MVC】

8

hanze 发布于 2019-09-17

每篇一句 胡适:多谈些问题,少聊些主义 前言 Spring MVC 和 MyBatis 作为当下最为流行的两个框架,大家平时开发中都在用。如果你往深了一步去思考,你应该会有这样的疑问: 在使用 Spring MVC 的时候,你即使不使用注解,只要参数名和请求参数的key对应上了,...

阅读(9)评论(0)赞 (0)

Spring

为何Spring MVC可获取到方法参数名,而MyBatis却不行?【享学Spring MVC】

8

likai 发布于 2019-09-17

每篇一句 胡适:多谈些问题,少聊些主义 前言 Spring MVC 和 MyBatis 作为当下最为流行的两个框架,大家平时开发中都在用。如果你往深了一步去思考,你应该会有这样的疑问: 在使用 Spring MVC 的时候,你即使不使用注解,只要参数名和请求参数的key对应上了,...

阅读(9)评论(0)赞 (0)

Java

Serializable & Parcelable

1

hellas 发布于 2019-09-17

所谓对象的序列化其实就是把JVM运行过程中生成的对象通过特殊的处理手段转换为字节形式的文件。转换之后就可以将其永久保存到磁盘中,或者以字节流进行网络传输。 在Android中使用Intent传递数据时,基本数据类型可以直接传递,而比较复杂的引用类型的数据就需要先将对象序列化再进行...

阅读(4)评论(0)赞 (0)

Java

作为一名Java程序员的他,不接私活也能月薪38k

25

wenming.gapo 发布于 2019-09-17

接私活 对程序员这个圈子来说是一个既公开又隐私的话题,不说全部,应该大多数程序员都有过想要接私活的想法,当然,也有部分得道成仙的不主张接私活。 但是很少有人在公开场合讨论私活的问题,似乎都在避嫌。 就跟有人下班后跑滴滴一样,程序员私有时间接点活挣点钱不也很正常么,不过不要在上班时...

阅读(5)评论(0)赞 (0)

Java

JDK13 GA发布:5大特性解读

3

尖兵 发布于 2019-09-17

JDK13 GA版本 5大新特性如下: 350: Dynamic CDS Archives 351: ZGC: Uncommit Unused Memory 353: Reimplement the Legacy Socket AP I 354: Switch Expressio...

阅读(5)评论(0)赞 (0)

Java

高并发dubbo服务,每次重启后都大量超时,我懵圈了

3

dulong 发布于 2019-09-17

前言 今天群里小伙伴 黄晓峰 咨询一个问题:"dubbo接口怎么做预热呢,每次上线,都会有一小部分超时?"。熟悉JVM都知道,JVM重启后有一段预热过程,要运行一段时间,它的性能才能达到最佳状态。阿里JVM团队就针对原生JVM这个缺陷进行了优化,其特性名曰: ...

阅读(3)评论(0)赞 (0)

Java

Tomcat 和 JVM 的性能调优经验总结!拿走不谢

6

Harries 发布于 2019-09-17

Tomcat性能调优 找到Tomcat根目录下的conf目录,修改server.xml文件的内容。对于这部分的调优,我所了解到的就是无非设置一下Tomcat服务器的最大并发数和Tomcat初始化时创建的线程数的设置,当然还有其他一些性能调优的设置。 下图是我根据我机子的性能设置的...

阅读(15)评论(0)赞 (0)

Java

进击的 Java ,云原生时代的蜕变

6

zhuangli 发布于 2019-09-16

作者| 易立 阿里云资深技术专家 导读: 云原生时代的来临,与Java 开发者到底有什么联系? 有人说,云原生压根不是为了 Java 存在的。 然而,本文的作者却认为云原生时代,Java 依然可以胜任“巨人”的角色 。作者希望通过一系列实验,开拓同学视野,提供有益思考。 在企业软...

阅读(13)评论(0)赞 (0)