标签:Semaphore

Java

Spring Cloud Feign 基础

1

zhuangli 发布于 2019-06-15

Finchley.SR2 ##一、什么是Feign feign 是一种声明式的web 客户端,可以使用它的注解创建接口,它也支持自定义编解码。Spring Cloud 集成了Ribbon 和Eureka 为客户端提供了负载均衡策略。Feing有两个主要注解:  &nbs...

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

Java

重学Java——Synchronized底层实现原理

7

小丁 发布于 2019-06-11

对于synchronized大家应该都很熟悉,主要作用是在多线程并发时,保证线程访问共享数据时的线程安全。 它的作用有三点: 确保线程互斥的访问同步代码 保证共享为师的修改及时可见 有效解决指令重排(synchronized同步中的代码,JVM不会轻易优化重排序) Synchro...

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

Java

Java 面试通关要点 汇总集【最终版】

3

puefu.he 发布于 2019-06-11

点击上方“ 搜云库技术团队 ”关注 选择“设为星标” 技术   /  架构  /   资料  /  职场  /  面试  /  内推 首先,声明下,以下知识点并非阿里的面试题。这里...

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

Spring

SpringCloud(四):Hystrix-有界面和无界面的配置

hellas 发布于 2019-06-10

如果您希望某些线程本地上下文传播到@HystrixCommand,则默认声明不起作用,因为它在线程池中执行该命令(如果超时)。您可以通过配置或直接在注释中切换Hystrix,以使用与调用者相同的线程,方法是要求它使用不同的“隔离策略”。 示例: 演示如何在注释中设置线程: @Re...

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

编程技术

架构师成长之路之限流-精讲

4

darida 发布于 2019-06-09

作者:飞狐,历任百度凤巢某业务团队技术负责人、丁丁租房基础架构与运维部负责人,现猫眼娱乐基础架构负责人。 内容目录 一、我们为什么需要限流 二、我们常见的限流手段 信号量计数 线程池隔离 固定窗口计数 自然窗口计数 滑动窗口计数 基于共享分布式内存 基于本地内存 令牌桶和漏桶算法...

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

Spring

SpringCloud-Hystrix原理

7

刘莉莉 发布于 2019-06-06

编辑推荐: 本文来自于aliyun,本文介绍了Hystrix原理以及工作流程,并对工作流程进行了详细的阐述。 Hystrix官网的原理介绍以及使用介绍非常详细,非常建议看一遍,地址见参考文档部分。 一 Hystrix原理 1 Hystrix能做什么 通过hystrix可以解决雪崩...

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

Java

浅谈AQS(抽象队列同步器)

yanxinchi 发布于 2019-06-04

AQS,全称AbstractQueuedSynchronizer,即抽象队列同步器,和CAS共同撑起了整个java.util.concurrent包,同时也是Java并发编程上绕不开的一个概念 抽象队列同步器,以下统称AQS,用于解决的就是多线程并发访问控制问题。在传统的多线程编...

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

Java

Java锁详解:“独享锁/共享锁+公平锁/非公平锁+乐观锁/悲观锁+线程锁”

4

xiaoli.wang 发布于 2019-06-04

在Java并发场景中,会涉及到各种各样的锁如公平锁,乐观锁,悲观锁等等,这篇文章介绍各种锁的分类: 公平锁/非公平锁 可重入锁 独享锁/共享锁 乐观锁/悲观锁 分段锁 自旋锁 线程锁 乐观锁 VS 悲观锁 乐观锁与悲观锁是一种广义上的概念,体现了看待线程同步的不同角度,在Java...

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

Java

Java的一堆锁是干嘛的?

5

yeseng 发布于 2019-06-04

Java中的锁有很多种,经常会听到“锁”这个词。 犹如每天出门时,:key:就是一种“锁”,拿不到:key:,就进不去了。 Java那么多种类的锁,都是按不同标准来分类的。就像商店里的各种商品,可以按式样,也可以按颜色或者尺寸。 其实它们都是一种思想。 为什么会有锁? 一个进程可...

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

Java

使用 Google Guava Striped 实现基于 Key 的并发锁

zhuangli 发布于 2019-06-02

写 Java 代码至今,在应对可能冲突的共享资源操作时会尽量用 JDK 1.5 开始引入的并发锁(如 Lock 的各类实现类, ReentrantLock 等) 进行锁定,而不是原来的 synchronized 关键字强硬低性能锁。 这里是应用 JDK 1.5  的 L...

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

Java

【并发编程】 图文深入解析Java显式锁底层源码 —— 加解锁是如何实现的 原 荐

9

hanze 发布于 2019-06-02

一、了解 AbstractQueuedSynchronizer(AQS) 1、AQS 简介 AbstractQueuedSynchronizer 是大师 Doug Lea 编写的一个并发编程类,位于 java.util.concurrent.locks,是 CountdownLa...

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

Java

让人抓头的Java并发(一) 轻松认识多线程

3

尖兵 发布于 2019-06-01

本篇文章作为Java并发系列的第一篇,并不会介绍相应的api,只是简单的提到多线程关键线程的通信和同步,后续文章会详细介绍其中的原理 线程简介 现代操作系统的最小执行单元,也称为轻量级线程。一个进程里可以创建多个线程,各个线程可以共享进程资源(内存地址、文件I/O等),又各自拥有...

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

Java

java Semaphore

尖兵 发布于 2019-05-30

Semaphore简介 Semaphore是一种基于计数的信号量。它可以设定一个阈值,基于此,多个线程竞争获取许可信号,做自己的申请后归还,超过阈值后,线程申请许可信号将会被阻塞。Semaphore可以用来构建一些对象池,资源池之类的,比如数据库连接池,我们也可以创建计数为1的S...

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

Java

Java同步机制的底层实现

2

puefu.he 发布于 2019-05-26

在多线程编程中我们会遇到很多需要使用线程同步机制去解决的并发问题,而这些同步机制就是多线程编程中影响正确性和运行效率的重中之重。这不禁让我感到好奇,这些同步机制是如何实现的呢?好奇心是进步的源泉,就让我们一起来揭开同步机制源码的神秘面纱吧。 在本文中,我们会从JDK中大多数同步机...

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

Java

Java工程师成神之路:程序员的学习路线规划以及书籍推荐

2

puefu.he 发布于 2019-05-24

一、基础篇 面向对象 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基本原则 平台无关性 Java如何实现的平台无关性的 JVM还支持哪些语言(Kotlin、Groovy、JRuby、Jython、Scala) 值传递 值传递、引用传递 为什么说Java中只有值...

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

Spring

Java面试通关要点 汇总集【最终版】

2

xiaoli.he 发布于 2019-05-16

基础篇 基本功 面向对象的特征 final, finally, finalize 的区别 int 和 Integer 有什么区别 重载和重写的区别 抽象类和接口有什么区别 说说反射的用途及实现 说说自定义注解的场景及实现 HTTP 请求的 GET 与 POST 方式的区别 ses...

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

Java

AQS同步组件–ReentrantLock与锁

changyuan.xu 发布于 2019-05-14

ReentrantLock与锁 Synchronized和ReentrantLock异同 可重入性:两者都具有可重入性 锁的实现:Synchronized是依赖jvm实现的,ReentrantLock是jdk实现的。(我们可以理解为一个是操作系统层面的实现另一个是用户自己自己实现...

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

Java

Spring Boot集成Hazelcast实现集群与分布式内存缓存

Harries 发布于 2019-05-14

Hazelcast是Hazelcast公司开源的一款分布式内存数据库产品,提供弹性可扩展、高性能的分布式内存计算。并通过提供诸如Map,Queue,ExecutorService,Lock和JCache等Java的许多开发人员友好的分布式实现。 了解Hazelcast Hazel...

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