标签:mina

Java

从使用到原理,探究Java线程池

1

changyuan.xu 发布于 2020-04-03

什么是线程池 当我们需要处理某个任务的时候,可以新创建一个线程,让线程去执行任务。线程池的字面意思就是存放线程的池子,当我们需要处理某个任务的时候,可以从线程池里取出一条线程去执行。 为什么需要线程池 首先我们要知道不用线程池,直接创建线程有什么弊端: 第一个是创建与销毁线程的开...

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

Java

性能测试如何定位瓶颈?偶发超时?看高手如何快速排查问题

7

songhua.gao 发布于 2020-04-03

作者 |  张奇(司楚) 当线上碰到头疼的问题时,还在对着代码一行行的看?真的不太时髦了啊喂~ 俗话说的好 “问题排查不用愁,Arthas 来帮您忙。” 今天就来说说这个让妈妈再也不用担心我排查问题的 Java 诊断神器——Arthas! 什么是 Arthas? Art...

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

Java

这四个问题场景你会排查原因吗?看看高手是如何使用 Arthas 快速定位原因的!

9

hanze 发布于 2020-04-03

点击上方蓝色“ 程序猿DD ”,选择“设为星标” 回复“ 资源 ”获取独家整理的学习资料! 作者 | 张奇(司楚) 当线上碰到头疼的问题时,还在对着代码一行行的看?真的不太时髦了啊喂~ 俗话说的好 “ 问题排查不用愁,Arthas 来帮您忙 。” 今天就来说说这个让妈妈...

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

Java

这四个问题场景你会排查原因吗?看看高手是如何使用 Arthas 快速定位原因的!

9

darida 发布于 2020-04-03

点击上方蓝色“ 程序猿DD ”,选择“设为星标” 回复“ 资源 ”获取独家整理的学习资料! 作者 | 张奇(司楚) 当线上碰到头疼的问题时,还在对着代码一行行的看?真的不太时髦了啊喂~ 俗话说的好 “ 问题排查不用愁,Arthas 来帮您忙 。” 今天就来说说这个让妈妈...

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

Java

Java线程池实现原理及其在美团业务中的实践

30

小丁 发布于 2020-04-02

随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流。使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器。J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员管理线程并方便地执行并行任务。了解并合理使用线程池,是一个开发人员必修的基本功。...

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

Spring

Spring Boot 自动装配流程

2

darida 发布于 2020-04-02

Spring Boot 自动装配流程 本文以 mybatis-spring-boot-starter 为例简单分析 Spring Boot 的自动装配流程。 Spring Boot 发现自动配置类 这里说的自动配置类指的是在 META-INF/spring.factories 文...

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

Java

深入浅出Disruptor

11

yeseng 发布于 2020-04-02

作者 | 高建 面向 CTRL C + V 的编码工具人。 说到队列,大家都很熟悉,像生活中不管是吃饭还是买东西基本上都会遇到排队,先排队的人先付款,不允许插队!先进先出,这就是典型的“队列”。 简单回顾 jdk 里的队列 1. 阻塞队列: ArrayBlockingQueue:...

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

Java

在容器上构建持续部署及最佳实践初探

14

zhuangli 发布于 2020-04-02

作者 | 倚天码农 责编| 徐威龙 封图| CSDN下载于视觉中国 要想理解持续集成和持续部署,先要了解它的部分组成,以及各个组成部分之间的关系。下面这张图是我见过的最简洁、清晰的持续部署和集成的关系图。 图源:sonatype.com 持续部署 如...

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

Java

手把手教你搭建一个灰度发布环境

17

邓龙华 发布于 2020-03-31

DevUI是一支兼具设计视角和工程视角的团队,服务于华为云 DevCloud 平台和华为内部数个中后台系统,服务于设计师和前端工程师。 官方网站: devui.design Ng组件库: ng-devui (欢迎Star) 引言 灰度发布,又称金丝雀发布。 金丝雀发布这一术语源于...

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

Java

你用过MyBatis的discriminator鉴别器映射吗?

2

dulong 发布于 2020-03-31

来源:https://urlify.cn/AFrQBj 1. 明确需求 在设计之初,sys_role表的enabled字段有2个可选值,其中1代表启用,0 代表禁用,当状态启用时就有对应的权限信息,当状态禁用时就没有对应的权限信息,只需查询出角色信息即可。 所以我们的需求为:根据...

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

Java

从0学习java并发编程实战-读书笔记-取消与关闭(7)

yeseng 发布于 2020-03-31

要使任务和线程能安全、快速、可靠的停下来,并不是一件容易的事。java没有提供任何机制来安全地终止线程(Thread.stop和suspend等方法提供了这样的功能,但是存在严重缺陷,应该避免使用)。 但是java提供了 中断(Interruption) ,这是一种协作机制,能够...

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

Java

Java 线程状态和等待唤醒机制和线程池的实现

1

xirruiqiang 发布于 2020-03-30

1.概念 线程一共有6中状态,相互之间可以互相转换。 等待唤醒案例(线程之间的通信) 实现: 等待唤醒案例:线程之间的通信 创建一个顾客线程(消费者):告知老板要的包子的种类和数量,调用wait方法,放弃cpu的执行,进入到WAITING状态(无限等待) 创建一个老板线程(生产者...

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

Java

Java 8 Stream 简介

2

yanxinchi 发布于 2020-03-30

前言 这篇文章的主题是探究 Java 8 Stream的内容,虽然现在Java 14 都发布了,但是目前企业用得最多的还是 Java 8,我们的短期关注点还是在于对 Java 8 的使用,而 Stream 是 Java 8 中一个非常重要的部分,掌握好 Stream API 能让...

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

Java

G1理论基础与经验分享

17

yeseng 发布于 2020-03-29

​ 关于G1收集器的收集过程,看过一些博客和书,基本上十有八九都说的不一样,如果要确定哪个是正确的还是得去看实现代码。当然我不打算去学C语言看代码了,接下来就结合自己的理解和资料来介绍G1收集器收集过程,力求做到初次接触G1也能看明白。 ​ G1可以说是个里程碑式的产品,从提出到...

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

Java

KubeSphere平台APIGateWay命令行参数说明

尖兵 发布于 2020-03-28

1. 背景 KubeSphere-V2.1.1-GA版本发布 了解Caddy实现的路由分发信息 KS-APIGateWay加载/etc/caddy/Caddyfile方式 2. 路由信息 源码路径 apiVersion: v1 data: Caddyfile: | :2018 {...

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

Java

有个定时任务突然不执行了,别急,原因可能在这

2

dulong 发布于 2020-03-27

小伙伴们,我们一起来避坑:sweat_smile::sweat_smile: 问题描述 程序发版之后一个定时任务突然挂了! “幸亏是用灰度跑的,不然完蛋了。:sob:” 之前因为在线程池踩过坑,阅读过 ThreadPoolExecutor 的源码,自以为不会再踩坑,没想到又一不小...

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

Java

理解 Dubbo 服务暴露

8

尖兵 发布于 2020-03-27

说明 本文只探讨 dubbo 服务暴露的相关内容 , 服务暴露可以划分为本地暴露 , 网络暴露 , 注册中心暴露这三部分 , 对照 Dubbo Architecture 中的 0. start , 1.register 这两部分。也可以说是 provider 的发布过程。本人能力...

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

Java

解 Dubbo 服务引用

4

puefu.he 发布于 2020-03-27

dubbo 服务引用过程 dubbo 的使用过程中消费者端会依赖服务端提供的 api 包(接口 jar 包) , 这些 api 包中只含有服务的 Interface 的 class 文件 , 在进行服务调用的时候使用 Interface 的一个引用,就可以进行远程的调用了,因为 ...

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