标签:queue

Java

Java精讲:生产者-消费者

1

zhuangli 发布于 2019-02-15

本文概要 生产者和消费者问题是线程模型中老生常谈的问题,也是面试中经常遇到的问题。光在Java中的实现方式多达数十种,更不用说加上其他语言的实现方式了。那么我们该如何学习呢? 本文会通过精讲wait()和notify()方法实现生产者-消费者模型,来学习生产者和消费者问题的原理。...

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

Java

BIO到NIO源码的一些事儿之NIO 下 Buffer解读 下

9

邓龙华 发布于 2019-02-15

此系列文章会详细解读NIO的功能逐步丰满的路程,为Reactor-Netty 库的讲解铺平道路。 关于Java编程方法论-Reactor与Webflux的视频分享,已经完成了Rxjava 与 Reactor,b站地址如下: Rxjava源码解读与分享: www.bilibili....

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

Java

Java精讲:生产者-消费者

1

puefu.he 发布于 2019-02-15

原文链接 更多教程 本文概要 生产者和消费者问题是线程模型中老生常谈的问题,也是面试中经常遇到的问题。光在Java中的实现方式多达数十种,更不用说加上其他语言的实现方式了。那么我们该如何学习呢? 本文会通过精讲wait()和notify()方法实现生产者-消费者模型,来学习生产者...

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

Java

java版 利用人脸识别猜年龄 基于ArcFace2.0的 demo

xiaoli.he 发布于 2019-02-15

首先感谢虹软,是你们提供这么好的SDK支撑了我们的想象力! 这是一个用javav编写的可视化应用,用户通过自己的脸和计算机进行交互,计算机则通过萌萌女孩的语音和用户对话。 核心程序就是利用ArcFace2.0识别性别、年龄,但是为了获得正面脸,会根据ArcFace2.0的人脸3D...

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

Java

Java魔法类——Unsafe应用解析

14

xiaoli.wang 发布于 2019-02-15

前言 Unsafe是位于sun.misc包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很大的作用。但由于Unsafe类使Java语言拥有了类似C语言...

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

Java

Spring 异步任务的创建、自定义配置和原理

zhuangli 发布于 2019-02-14

@EnableAsync 和 @Configuration 类一起使用,如下所示,为整个Spring应用程序上下文启用注释驱动的异步处理 @Configuration @EnableAsync public class AppConfig { } 复制代码 2.2 编写异步任务 ...

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

Java

追踪解析 Disruptor 源码

songhua.gao 发布于 2019-02-14

零 前期准备 0 FBI WARNING 文章异常啰嗦且绕弯。 1 版本 Disruptor 版本 : Disruptor 3.4.2 IDE : idea 2018.3 JDK 版本 : OpenJDK 11.0.1 2 Disruptor 简介 高性能线程间消息队列框架 Di...

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

Java

JVM 一套卷,助你快速掌握优化法则

14

邓龙华 发布于 2019-02-14

一:虚拟机内存图解 JAVA 程序运行与虚拟机之上,运行时需要内存空间。虚拟机执行 JAVA 程序的过程中会把它管理的内存划分为不同的数据区域方便管理。 虚拟机管理内存数据区域划分如下图: 数据区域分类: 方法区: (Method Area) 虚拟机栈 : (VM Stack) ...

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

Java

Java并发研究 自己写ReentrantLock和ReentrantReadWriteLock(4)

3

xiaoli.he 发布于 2019-02-14

接上篇。在写完ReentrantLock之后,其实可以基于ReentrantLock写一个ReadWriteLock,《the art of multiprocessor programming》第八章有介绍。但是,本着不完全AQS(AbstractQueuedSynchroni...

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

Java

从线程池理论聊聊为什么要看源码

12

likai 发布于 2019-02-13

前言 很多时候,我都想向大家传输一个思想,那就是只有懂了原理,才能随心随心所欲写代码.而看源码,又是了解原理的一个非常重要的途径. 然而,肥朝之前的文章,大致分为三类 源码解析,穿插怎么看源码(参考肥朝Dubbo源码解析系列文章) 怎么临摹一个一比一的源码(参考肥朝 [dubbo...

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

Java

WebMagic 爬虫框架浅析

6

小丁 发布于 2019-02-13

很久之前因为爬虫需求就接触过 WebMagic,但是一直停留在简单使用阶段。近来公司项目也有爬虫需求,而且需要对爬虫框架做一些定制开发,便以此为契机深入学习 WebMagic 的设计思想及实现原理。 概述 WebMagic 是国内知名开发者黄亿华开源的一个 Java 爬虫框架。W...

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

Spring

Spring Cloud Sleuth 之 Greenwich 版本全攻略

11

刘莉莉 发布于 2019-02-12

点击上方 “ 方志朋 ”, 选择“置顶或者星标” 你的关注意义重大! 微服务架构是一个分布式架构,微服务系统按业务划分服务单元,一个微服务系统往往有很多个服务单元。由于服务单元数量众多,业务的复杂性较高,如果出现了错误和异常,很难去定位。主要体现在一个请求可能需要调用很多个服务,...

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

Java

java:强引用,软引用,弱引用和虚引用

尖兵 发布于 2019-02-10

强引用 如果一个对象具有强引用,垃圾回收器绝不会回收它.当内存空间不足时,java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足问题. 软引用 SoftReference<T> 如果内存空间充足,垃圾...

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

Java

如何使用消息队列,Spring Boot和Kubernetes扩展微服务

12

hellas 发布于 2019-02-10

【编者的话】本文通过一个详细的购物例子,展示了如何利用消息队列,Spring Boot 和Kubernetes进行微服务的开发,并阐述了针对微服务的伸缩,监控等方式,帮助用户快速利用这些工具开发健壮的系统。 当你设计和构建大规模应用时,你将面临两个重大挑战: 可伸缩性和健壮性 。...

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

Spring

SpringAMQP 消息容器 – SimpleMessageListenerContainer

1

songhua.gao 发布于 2019-02-09

这个类非常的强大,我们可以对他进行很多的设置,用对于消费者的配置项,这个类都可以满足。它有监听单个或多个队列、自动启动、自动声明功能。 它可以设置事务特性、事务管理器、事务属性、事务并发、是否开启事务、回滚消息等。但是我们在实际生产中,很少使用事务,基本都是采用补偿机制。 它可以...

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

Java

Java并发编程 – Callable、Future和FutureTask的实现

邓龙华 发布于 2019-02-08

启动线程执行任务,如果需要在任务执行完毕之后得到任务执行结果,可以使用从Java 1.5开始提供的Callable和Future 下面就分析一下Callable、Future以及FutureTask的具体实现及使用方法 源码分析基于JDK 1.7 一、Callable 与 Run...

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

Java

Java线程池ThreadPoolExecutor实现原理

3

小丁 发布于 2019-02-08

线程属于稀缺资源,对于线程的创建规则,引用《阿里巴巴 Java 手册》中的一条进行说明。 本篇从源码方面介绍ThreadPoolExecutor对象,并简要解析线程池工作原理。 首先ThreadPoolExecutor中定义了几个 线程池状态常量 。 // runState is...

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

Java

dubbo源码解析(三十五)集群——cluster

1

zhuangli 发布于 2019-02-04

远程调用——cluster 目标:介绍dubbo中集群容错的几种模式,介绍dubbo-cluster下support包的源码。 前言 集群容错还是很好理解的,就是当你调用失败的时候所作出的措施。先来看看有哪些模式: 图有点小,见谅,不过可以眯着眼睛看稍微能看出来一点,每一个Clu...

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