标签:ECS

Java

记一次FullGC的排查经历–从FullGC日志到业务代码

5

尖兵 发布于 2020-07-26

问题的发生 简单介绍下我们服务的背景,我们的服务是一个使用类似dubbo的RPC框架以及若干Spring全家桶组合起来的微服务架构,大致结构可以参考下图。 Java服务使用的是CMS的垃圾回收器。 某天突然收到一台实例(即一个Java应用)产生FullGC日志的报警,如上图红色标...

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

Java

JVM系列-读懂 GC 日志

4

xiaoli.wang 发布于 2020-07-25

Java 生态发展到今天,JVM (Java Virtual Machine)的价值可能已经超过了 Java 语言本身。 而 GC (垃圾回收)机制也是 JVM 的核心之一,在程序运行的过程中,GC 的过程会以日志的形式记录下来,看懂 GC 日志是研究 GC 机制的基础,GC日志...

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

Spring

SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(工具部署)

2

Harries 发布于 2020-07-24

作者 | 孤弋  阿里云高级技术专家,负责 EDAS 的开发和用户体验优化工作。 导读 :上一篇文章 《SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(开发部署)》 我们介绍了从 IDE 插件内介绍了如何进行应用部署的方式,除此之外,目前...

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

Java

一次年轻代GC长暂停问题的解决与思考,再学一遍JVM吧

7

xirruiqiang 发布于 2020-07-23

问题描述 公司某规则引擎系统,在每次发版启动会手动预热,预热完成当流量切进来之后会偶发的出现一次长达1-2秒的年轻代GC(流量并不大,并且LB下的每一台服务都会出现该情况) 在这次长暂停之后,每一次的年轻代GC暂停时间又都恢复在20-100ms以内 2s虽然看起来不长,但是对比规...

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

Java

mybatis sqlsession与sqlsquery、transaction、connection

2

yeseng 发布于 2020-07-23

sqlsession和connection 一个sqlsession一般对应一个connection,并且mybatis默认每次获取session都会开启一个事务,且不自动提交事务。如果更新操作完成后不手动commit,则在连接断开时会将更新操作回滚,一个sqlSession(一...

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

Java

深挖view绘制流程(二)

3

Harries 发布于 2020-07-23

Choreographer的中文翻译是编舞者、舞蹈编导的意思,为什么起这个名字呢?因为view的刷新和舞蹈一样是需要按着节拍来的,Choreographer就是根据VSync信号这个节拍来安排view的刷新动作。 它使用ThreadLocal单例模式,每个线程都有自己的Chore...

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

Java

深入探究JVM之对象创建及分配策略

4

changyuan.xu 发布于 2020-07-22

@ 目录 前言 Java是面向对象的语言,所谓“万事万物皆对象”就是Java是基于对象来设计程序的,没有对象程序就无法运行(8大基本类型除外),那么对象是如何创建的?在内存中又是怎么分配的呢? 正文 一、对象的创建方式 在Java中我们有几种方式可以创建一个新的对象呢?总共有以下...

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

Java

OkHttp 官方中文文档

1

songhua.gao 发布于 2020-07-22

[本文翻译来自 官方OkHttp Wiki](https://github.com/square/okhttp/wiki) 一、Calls HTTP客户端的工作是接受你的 request ,并产生它的 response 。这个在理论上是简单的,但在实践中确是很棘手。 1.1 请求...

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

Java

JVM之逃逸分析

1

wenming.gapo 发布于 2020-07-21

什么是逃逸分析 在编译程序优化理论中,逃逸分析是一种确定指针动态范围的方法——分析在程序的哪些地方可以访问到指针。它涉及到指针分析和形状分析。 当一个变量(或对象)在子程序中被分配时,一个指向变量的指针可能逃逸到其它执行线程中,或是返回到调用者子程序。如果使用尾递归优化(通常在函...

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

Java

拥抱Java 8并行流吧,速度飞起!

3

xiaoli.he 发布于 2020-07-21

前言 在 Java7 之前,如果想要并行处理一个集合,我们需要以下几步:  手动分成几部分   为每部分创建线程  在适当的时候合并。并且还需要关注多个线程之间共享变量的修改问题。 而 Java8 为我们提供了并行流,可以一键开启并行模式。...

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

Java

JVM&GC-System.gc()方法

1

likai 发布于 2020-07-19

在默认情况下,System.gc()会显示直接触发Full GC,同时对老年代和新生代进行回收。而一般情况下,垃圾回收应该是自动进行的,无需手工触发,否则就太麻烦了。 示例 public class TestGC { public static void main(String[...

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

Spring

RabbitMQ之springboot版详解

34

xubiao.zhuang 发布于 2020-07-18

前言 花了一周多的时间(周末去掉..捂脸)在工作之余写了两篇关于rabbitMq的内容,一篇是原生版的,一篇是springboot版的。初学者最好是看一下原声版更清晰一点,如果急于应用也可以直接看本文。本文内容较多,看完了五大消息模型的应用后还有进阶篇连着在一起,研究不太彻底请多...

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

Java

Spring Cloud源码分析(一)Eureka

1

xiaoli.wang 发布于 2020-07-17

很多面试官都会项目架构是什么样的?看你简历项目涉及的都是微服务项目,那你谈谈你对微服务的理解,优缺点?我一般会说项目中用的技术有springBoot、SpringCloud等技术,面试官经常继续深入问你,SpringCloud都用过哪些组件,谈谈对Eureka的理解,它底层是怎么...

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

Java

记录一次 Arthas 使用

1

puefu.he 发布于 2020-07-17

前言 疫情期间,在家办公,每天都是 007,感觉自己已经升级为熊猫特工了,心累,身体疲惫!!! 今天终于有时间休息一下,然后记录一下在家办公期间 Arthas 的简单使用。 下载安装 方式一: 推荐使用 IDEA 插件下载 Cloud Toolkit 来使用 Arthas Clo...

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

Java

记录一次 Arthas 使用

尖兵 发布于 2020-07-17

疫情期间,在家办公,每天都是 007,感觉自己已经升级为熊猫特工了,心累,身体疲惫!!! 今天终于有时间休息一下,然后记录一下在家办公期间 Arthas 的简单使用。 下载安装 方式一: 推荐使用 IDEA 插件下载 Cloud Toolkit 来使用 Arthas Cloud ...

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

编程技术

百富旅行:阿里云SAE助力下实现Serverless+微服务完美结合

1

尖兵 发布于 2020-07-16

客户介绍 百富旅行是全球领先的在线旅游同业交易平台,覆盖机票、火车票、酒店、邮轮、汽车票、门票、旅游、商城等版块,通过整合全球的优势资源,基于云计算和大数据决策为全球旅游从业者提供一站式智能整体解决方案。截至目前,百富旅行已经与600多家航空公司、国内所有火车线路、2500个汽车...

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

Java

2020 年,从架构谈起,到 Mesh 结束

7

xiaoli.wang 发布于 2020-07-16

作者 | 张羽辰(同昭)阿里云交付专家 导读 :如今,几乎所有的事情都离不开软件,当你开车时,脚踩上油门,实际上是车载计算机通过力度感应等计算输出功率,最终来控制油门,你从未想过这会是某个工程师的代码。 当我们谈论架构时,我们到底在谈论什么? 面向对象编程?函数式?模块化设计?微...

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

Java

Inflation 引起的 MetaSpace Full GC 问题排查|蚂蚁集团实例分析

9

刘莉莉 发布于 2020-07-15

一、背景 本文将用一个蚂蚁集团线上实际案例,分享我们是如何排查由于 inflation 引起的 MetaSpace FGC 问题。 蚂蚁集团的智能监控平台深度利用了 Spark 的能力进行多维度数据聚合,Spark 由于其高效、易用、分布式的能力在大数据处理中十分受欢迎。 关于智...

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