JAVA ’ 目录归档

Hystrix熔断机制原理剖析

一、前言

在分布式系统架构中多个系统之间通常是通过远程RPC调用进行通信,也就是 A 系统调用 B 系统服务,B 系统调用 C 系统的服务。当尾部应用 C 发生故障而系统 B 没有服务降级时候可能会导致 B,甚至系统 A 瘫痪,这种现象被称为雪崩现象。所以在系统设计时候要使用一定的降级策略,来保证当服务提供方服务不可用时候,服务调用方可以切换到降级后的策略进行执行。 阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Hystrix熔断机制原理剖析

Dubbo剖析-并发控制

一、前言

前面讲解了Dubbo的服务降级,本节我们来讲解dubbo中的并发控制,并发控制分为客户端并发控制和服务端并发控制。 阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Dubbo剖析-并发控制

《JDK10新特性官方文档》从JDK10中移除javah工具

原文链接

  • JEP 313: 移除Native-Header生成工具 (javah)
  • Owner    Jonathan Gibbons
  • Created    2017/06/23 17:28
  • Updated    2018/01/10 22:02
  • Type    Feature
  • Status    Closed / Delivered
  • Component    tools / javah
  • Scope    JDK
  • Discussion    compiler dash dev at openjdk dot java dot net
  • Effort    XS
  • Priority    3
  • Reviewed by    Brian Goetz, Joe Darcy
  • Endorsed by    Brian Goetz
  • Release    10
  • Issue    8182758

概要

 

从JDK中移除javah工具。

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 《JDK10新特性官方文档》从JDK10中移除javah工具

《JDK10新特性官方文档》-317:实验性的基于JAVA的JIT编译器

JEP 317: 实验性的基于JAVA的JIT编译器
阅读全文

实现高可用的两种方案与实战

我之前在一片文章 用Nginx+Redis实现session共享的均衡负载 中做了一个负载均衡的实验,其主要架构如下:

架构

debian1作为调度服务器承担请求分发的任务,即用户访问的是debian1,然后debain1把请求按照一定的策略发送给应用服务器:debian2或者debain3,甚至更多的debain4、5、6……

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 实现高可用的两种方案与实战

关于阅读源码的一些心得

一、前言

本文来谈谈自己关于阅读源码的一些心得体会,希望大家能够提供更好的意见,留言回复。 阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 关于阅读源码的一些心得

《JDK10新特性官方文档》– 五月翻译邀请

原文链接       邀请者:小村长

 

概述

本篇是 Open JDK10官方文档的新特性介绍翻译邀请函。北京时间3月21日,Oracle官方宣布JDK10正式发布。从此JDK开启一个新的旅程。因为Oracle和OpenJDK大致相同,所以在此采用的是OpenJDK的版本进行翻译的。本次翻译邀请针对对新技术感兴趣的同学,希望本次翻译大家积极参加,同时能够以专业的素养为大家提供一份技术盛宴。

如何领取

通过评论领取想要翻译的文章,每次领取一章或一节(根据内容长短),翻译完后再领取其他章节。领取完成之后,译文最好在一个星期内翻译完成,如果不能完成翻译,也欢迎你邀请其他同学和你一起完成翻译。请谨慎领取,很多文章领取了没有翻译,导致文章很长时间没人翻译。

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 《JDK10新特性官方文档》– 五月翻译邀请

《Hibernate快速开始》Query /HQL and JPQL (上)

Hibernate查询语言(HQL)和Java持久性查询语言(JPQL)都是与SQL类似的面向对象模型的查询语言。JPQL是受HQL影响很大的子集。所有的JPQL查询都是有效的HQL查询,但反过来并不正确。

      HQL和JPQL都是非类型安全的方式来执行查询操作。Criteria 查询提供了一种查询类型安全的方法。有关更多信息,请参阅标准

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 《Hibernate快速开始》Query /HQL and JPQL (上)

分布式限流

前言

本文接着上文应用限流进行讨论。

之前谈到的限流方案只能针对于单个 JVM 有效,也就是单机应用。而对于现在普遍的分布式应用也得有一个分布式限流的方案。

基于此尝试写了这个组件:

https://github.com/crossoverJie/distributed-redis-tool

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 分布式限流

基于一致性哈希的分布式内存键值存储——CHKV

Consistent Hashing based Key-Value Memory Storage

基于一致性哈希的分布式内存键值存储——CHKV。

系统设计

  • NameNode : 维护key与节点的映射关系(Hash环),用心跳检测DataNode(一般被动,被动失效时主动询问三次),节点增减等系统信息变化时调整数据并通知Client;
  • DataNode : 存储具体的数据,向NameNode主动发起心跳并采用请求响应的方式来实现上下线,便于NameNode挪动数据
  • Client : 负责向NameNode请求DataNode数据和Hash算法等系统信息并监听其变化,操纵数据时直接向对应DataNode发起请求就行,暂时只包含set,get,delete三个操作

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 基于一致性哈希的分布式内存键值存储——CHKV

并发编程之——读锁源码分析(解释关于锁降级的争议)

1. 前言

在前面的文章 并发编程之——写锁源码分析中,我们分析了 1.8 JUC 中读写锁中的写锁的获取和释放过程,今天来分析一下读锁的获取和释放过程,读锁相比较写锁要稍微复杂一点,其中还有一点有争议的地方——锁降级

今天就来解开迷雾。

阅读全文

Dubbo剖析-服务降级

一、前言

dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进行降级,这样服务消费端就避免了在去调用出错的服务提供端,而是使用自定义的返回值直接在在本地返回。 阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Dubbo剖析-服务降级

秒杀架构实践

前言

之前在 Java-Interview 中提到过秒杀架构的设计,这次基于其中的理论简单实现了一下。

本次采用循序渐进的方式逐步提高性能达到并发秒杀的效果,文章较长请准备好瓜子板凳(liushuizhang😂)。

本文所有涉及的代码:

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 秒杀架构实践

Dubbo剖析-Dubbo协议

一、前言

TCP协议栈中,每层模型都有自己的协议报文格式,TCP协议是网络七层模型中的传输层,在TCP上层是应用层,应用层协议常见的有telnet等,Dubbo协议作为建立在TCP协议之上的一种协议,自然也有自己的协议包格式。

image.png

阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Dubbo剖析-Dubbo协议

使用Dubbo中需要注意的事项

一、前言

Dubbo作为高性能RPC框架,已经进入Apache卵化器项目,虽然官方给出了dubbo使用的用户手册,但是大多是一概而过,使用dubbo时候要尽量了解源码,不然会很容易入坑。 阅读全文

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 使用Dubbo中需要注意的事项

return top