60,000 毫秒内对 Linux 进行性能诊断 Java

60,000 毫秒内对 Linux 进行性能诊断

当你发现 Linux 服务器上的系统性能问题,在最开始的 1 分钟时间里,你会查看哪些系统指标呢? Netflix 在 AWS 上有着大规模的 EC2 集群,以及各种各样的性能分析和监控工具。比如我们使用 Atlas 来监控整个平台,用 Vector 实时分析 EC2 实例的性能。这些工具已经能够帮助我们解决大部分的问题,但是有时候我们还是要登录进机器内部,用一些标准的 Linux 性能分析工...
阅读全文
解读 Java 内存模型 编程技术

解读 Java 内存模型

伟人之所以伟大,是因为他与别人共处逆境时,别人失去了信心,他却下决心实现自己的目标。 Java内存模型(Java Memory Model)定义了Java的线程在访问内存时会发生什么。这里针对以下几个要点进行解析: 重排序 可见性 synchronized volitile final Double-Checked Locking 首先了解一...
阅读全文
java中的枚举(及七种常见的形式) 编程技术

java中的枚举(及七种常见的形式)

枚举是一种规范它规范了参数的形式,这样就可以不用考虑类型的不匹配并且显式的替代了int型参数可能带来的模糊概念 枚举像一个类,又像一个数组。 Enum作为Sun全新引进的一个关键字,看起来很象是特殊的class, 它也可以有自己的变量,可以定义自己的方法,可以实现一个或者多个接口。 当我们在声明一个enum类型时,我们应该注意到enum类型有如下的一些特征。 **1.它不能有public的构造...
阅读全文
60,000 毫秒内对 Linux 进行性能诊断 Java

60,000 毫秒内对 Linux 进行性能诊断

当你发现 Linux 服务器上的系统性能问题,在最开始的 1 分钟时间里,你会查看哪些系统指标呢? Netflix 在 AWS 上有着大规模的 EC2 集群,以及各种各样的性能分析和监控工具。比如我们使用 Atlas 来监控整个平台,用 Vector 实时分析 EC2 实例的性能。这些工具已经能够帮助我们解决大部分的问题,但是有时候我们还是要登录进机器内部,用一些标准的 Linux 性能分析工具...
阅读全文
Java8用了这么久了,Stream 流用法及语法你都知道吗? 编程技术

Java8用了这么久了,Stream 流用法及语法你都知道吗?

1.简介 Stream流 最全的用法 Stream 能用来干什么?用来处理集合,通过 使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询,Stream API 提供了一种高效且易于使用的处理数据的方式 为什么用Java 8 Stream ?因为 操作简单 为什么操作简单?因为 Lambda 表达式,它极大的提高了编程效率和程序可读性 怎么...
阅读全文
深入Android系统(一)Build系统 编程技术

深入Android系统(一)Build系统

深入Android系统 这本书是以Android5.0为基础讲解,但本人使用的是Android9.0的源码,所以和原书内容会有些出入。 对于Android的构建系统,在 Android7.0 之后Google就已经使用Soong构建系统,旨在取代 Make。它利用 Kati GNU Make 克隆工具和 Ninja 构建系统组件来加速 Android 的构建。 这里是官方构建传送门 ...
阅读全文
Java自动化测试(Maven 8) 编程技术

Java自动化测试(Maven 8)

Maven作用 Maven主要作用是使用它来导入第三方jar包 管理项目 下载Maven 下载地址:http://maven.apache.org/download.cgi image-20200718084505519 Binary:编译之后的二进制文件; Source:表示可以查看源代...
阅读全文
SCTF 2020 两道Login Me预期解的核心技术 编程技术

SCTF 2020 两道Login Me预期解的核心技术

详细的漏洞分析可以参考 Apereo CAS 4.X execution参数反序列化漏洞分析 这里不在赘述。文章提到了,前后两个版本区间的encode方法是不一样。 在cas4.x-cas.4.1.5中的加密伪代码如下 payload = gzip(Java Serialized data) body = aes128_cbc_encode(key, iv, payload)...
阅读全文
Java对世界不同时区timezone之间时间转换的处理方法 编程技术

Java对世界不同时区timezone之间时间转换的处理方法

最近出现一个问题是这样的:我们的系统在国外打印的日志时间由于时差关系和国内不一致,看起来不方便,希望国外的日志和国内保持一致,即:需要对不同时区的时间做转换调整,统一为国内时间。 一、关于时区的一些概念 1.1 什么是时区? timezone,即由于世界各国家与地区经度不同,地方时也有所不同,按照经度将全球划分为24个时区。 时区有相应的英文字母缩写,例如GMT,UTC,C...
阅读全文
CAS底层原理与ABA问题 编程技术

CAS底层原理与ABA问题

CAS定义 CAS(Compare And Swap)是一种无锁算法。CAS算法是乐观锁的一种实现。CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当预期值A和内存值V相同时,将内存值V修改为B并返回true,否则返回false。 CAS与synchronized (1)synchronized加锁,同一时间段只允许一个线程访问,能够保证一致性但是并发性下降。 (2)C...
阅读全文
Loading...