标签:ThreadPoolExecutor

Java

JVM优先级线程池做任务队列

darida 发布于 2020-07-14

我们都知道 web 服务的工作大多是接受 http 请求,并返回处理后的结果。服务器接受的每一个请求又可以看是一个任务。一般而言这些请求任务会根据请求的先后有序处理,如果请求任务的处理比较耗时,往往就需要排队了。而同时不同的任务直接可能会存在一些优先级的变化,这时候就需要引入任务...

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

Java

Tomcat源码之-Tomcat如何接收请求

1

xirruiqiang 发布于 2020-07-13

上一节大概说了下tomcat的整体架构,那么这一节我们重点关注下tomcat连接器的工作机制,在tomcat调优过程中,连接器也是一个比较重要的部分。 创建过程 首先看一下Connector的创建过程。 Connector connector = new Connector();...

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

Java

Java 应用线上问题排查思路、常用工具小结

12

邓龙华 发布于 2020-07-13

来源:https://ricstudio.top/archives/java-online-question-probe 前言 本文总结了一些常见的线上应急现象和对应排查步骤和工具。分享的主要目的是想让对线上问题接触少的同学有个预先认知,免得在遇到实际问题时手忙脚乱。毕竟作者自己...

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

Java

为什么 wait() 方法需要写在 while 里,而不是 if?

1

puefu.he 发布于 2020-07-12

不要让这个世界的复杂性阻碍你的前进。要成为一个行动主义者,将解决人类的不平等视为己任。它将成为你生命中最重要的经历之一。 问:为什么是 while 而不是 if ? 大多数人都知道常见的使用 synchronized 代码: synchronized (obj) { while ...

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

Java

dubbo-线程池监控

Harries 发布于 2020-07-12

代码 //dubbo线程池数量监控 Class<?> clazz = Class.forName("com.alibaba.dubbo.rpc.protocol.dubbo.status.ThreadPoolStatusChecker"); Met...

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

Java

Java知识点JUC总结

8

darida 发布于 2020-07-12

JUC:java.util.concurrent (Java并发编程工具类) 一般面试提问:面向对象和高级语法、Java集合类、Java多线程、JUC 和高并发、Java IO和 NIO 获取多线程的4种方法: 1.继承Thread类,重写run方法(其实Thread类本身也实现...

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

编程技术

源码剖析@ApiImplicitParam对@RequestParam的required属性的侵入性

8

zhuangli 发布于 2020-07-08

问题起源 使用SpringCloud构建项目时,使用Swagger生成相应的接口文档是推荐的选项,Swagger能够提供页面访问,直接在网页上调试后端系统的接口, 非常方便。最近却遇到了一个有点困惑的问题,演示接口示例如下(原有功能接口带有业务实现逻辑,这里简化了接口): /**...

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

Java

Java 线程池 ThreadPoolExecutor 八种拒绝策略浅析

2

changyuan.xu 发布于 2020-07-08

  前言 谈到java的线程池最熟悉的莫过于ExecutorService接口了,jdk1.5新增的java.util.concurrent包下的这个api,大大的简化了多线程代码的开发。而不论你用FixedThreadPool还是CachedThreadPool其背后...

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

Java

Java并发——线程池原理解析

3

尖兵 发布于 2020-07-07

可以说,线程池是Java并发场景中应用到的最多并发框架了。几乎所有需要异步或者并发执行的任务程序都可以使用线程池。在开发过程中,合理的使用线程池会带来以下3个好处: 降低资源的消耗。如果了解Java线程的前因后果,对于这一点应该很好理解。通过重复利用已创建的线程降低线程创建和销毁...

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

Spring

Spring Boot 应用如何提高服务吞吐量?

1

zhuangli 发布于 2020-07-06

意外和明天不知道哪个先来。没有危机是最大的危机,满足现状是最大的陷阱。 背景 生产环境偶尔会有一些慢请求导致系统性能下降,吞吐量下降,下面介绍几种优化建议。 方案 1、undertow替换tomcat 电子商务类型网站大多都是短请求,一般响应时间都在100ms,这时可以将web容...

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

Java

Dubbo线程模型

2

邓龙华 发布于 2020-07-06

戳蓝字「TopCoder 」关注我们哦! Dubbo中线程池的应用还是比较广泛的,按照consumer端到provider的RPC的方向来看,consumer端的应用业务线程到netty线程、consuemr端dubbo业务线程池,到provider端的netty boss线程、...

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

Java

Kitty中的动态线程池支持Nacos,Apollo多配置中心了

4

邓龙华 发布于 2020-07-06

目录 回顾昨日 nacos 集成 Spring Cloud Alibaba 方式 Nacos Spring Boot 方式 Apollo 集成 自研配置中心对接 无配置中心对接 实现源码分析 兼容 Apollo 和 Nacos NoClassDefFoundError Apoll...

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

Java

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

2

小丁 发布于 2020-07-05

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

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

Java

Java多线程(二)- 线程池

xiaoli.wang 发布于 2020-07-05

线程池是一种生产者 – 消费者模式,线程池的使用方是生产者,线程池本身是消费者。我们可以通过下面的代码来理解线程池的工作原理。 public class ThreadPoolDemo { //利用阻塞队列实现生产者-消费者模式 BlockingQueue<Run...

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

Java

Java并发编程学习系列五:函数式接口、Stream流等

15

Harries 发布于 2020-07-05

四大函数接口 什么是函数式接口? 有且只有一个抽象方法的接口被称为函数式接口,函数式接口适用于函数式编程的场景,Lambda 就是 Java 中函数式编程的体现,可以使用Lambda表达式创建一个函数式接口的对象,一定要确保接口中有且只有一个抽象方法,这样Lambda才能顺利的进...

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

Java

Java并发编程学习系列四:线程池

4

darida 发布于 2020-07-05

概念 为什么要使用多线程呢? 先从总体上来说: 从计算机底层来说:线程可以比作是轻量级的进程,是程序执行的最小单位,线程间的切换和调度的成本远远小于进程。另外,多核 CPU 时代意味着多个线程可以同时运行,这减少了线程上下文切换的开销。 从当代互联网发展趋势来说:现在的系统动不动...

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

Java

10个 解放双手的 IDEA 插件,少些冤枉代码

17

小丁 发布于 2020-07-05

❝ 友情提示:插件虽好,可不要贪装哦,装多了会 卡 、卡 、卡 ~ ❞ 正经干活用的 分享一点自己工作中得心应手的 IDEA 插件,可不是在插件商店随随便便搜的,都经过实战检验,用过的都说好。可能有一些大家用过的就快速划过就行了。 1、GenerateAllSetter 实际的开...

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

Java

架构设计(13)–分布式链路跟踪:skywalking原理和实践

9

Harries 发布于 2020-07-02

一、Skywalking是什么 Skywalking 是一个APM系统,即应用性能监控系统,为微服务架构和云原生架构系统设计。它通过探针自动收集所需的指标,并进行分布式追踪。通过这些调用链路以及指标,Skywalking APM会感知应用间关系和服务间关系,并进行相应的指标统计。...

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