Archive for ‘ December, 2017

Java8中的WeakHashMap

什么是WeakHashMap?

WeakHashMap是基于java弱引用实现的HashMap,感觉一句话就讲的差不多了嘿嘿。
先看看它的定义:

public class WeakHashMap<K,V>
extends AbstractMap<K,V>
implements Map<K,V>

如上,在定义方面和HashMap并没有什么不同。而且在结构上,基本和HashMap一致。在Java8中,唯一存储上的不同点就是,当冲突的key变多时,HashMap引入了二叉树(红黑树)进行存储,而WeakHashMap则一直使用链表进行存储。

Read more

《Spring Cloud Config官方文档》加密和解密

原文链接

5.2 健康指标

Config Server 附带一个健康指标(Health Indicator),用于检查配置的 EnvironmentRepository 是否正常工作。默认情况下,它会为 EnvironmentRepository请求一个名为 app 的应用程序,这个默认的profile和label由EnvironmentRepository的实现提供。

Read more

诡异的类型转换

一、前言

最近在做应用迁移时候遇到了一个诡异的类型转换问题,感觉比较有意思,就记录下来和大家分享下。

Read more

《Spring Cloud Config官方文档》翻译邀请

12月入冬,本月并发网继续组织翻译Spring Cloud大家庭,本文是第二篇《Spring Cloud Config官方文档》,欢迎有兴趣的同学参与。

Read more

《Spring Cloud Netflix官方文档》7.声明式 REST 客户端: Feign

原文链接

Feign 是一个声明式的web服务客户端。它使得编写web服务客户端更简单,创建一个接口并加上注解就能使用Feign了,它还支持JAX-RS类型的注解,可插入式的编码和解码,Spring cloud 为他加入了spring mvc的注解支持,以及在spring web开发过程中默认使用同样的 HttpMessageConverters 。Spring Cloud整合了Ribbon和Eureka为使用feign的过程中提供了一个负载均衡的http客户端。

Read more

《Spring Cloud Netflix官方文档》10. 使用 Sidecar支持多语言

原文链接

你有non-jvm语言也想使用Eureka,Ribbon和Config Server? Spring Cloud Netflix Sidecar灵感来自Netflix Prana,它包含一个简单的http api去获取给定服务的所有实例(主机和端口)。你也可以通过嵌入式Zuul代理代理服务调用,Zuul 代理从Eureka获取全部路由信息。可直接通过主机查找或通过Zuul代理访问Spring Cloud Config Server。non-jvm程序需要实现健康检查,这样Sidecar 才能向eureka 报告程序是否在线或宕机。

Read more

《Spring Cloud Netflix官方文档》3.熔断器:Hystrix Clients

原文链接

Netfilix创建了一个名为Hystrix的库,实现了熔断器模式。在微服务架构中,它通常有多个服务调用层。

图3.1 微服务图

Read more

《Spring Cloud Netflix官方文档》2. 服务发现:Eureka服务器

原文链接 译者:Acamy

2. 服务发现:Eureka服务器

2.1 如何创建Eureka服务器

引用org.springframework.cloud的spring-cloud-starter-eureka-server就可以创建Eureka服务器。在当前Spring Cloud版本中如何进行详细设置可以查看Spring Cloud工程页面

Read more

《Spring Cloud Netflix官方文档》1.服务发现:Eureka客户端

原文链接 译者:Acamy

1.     服务发现:Eureka客户端

服务发现是微服务架构的关键原则之一。使用手动配置或一些约定方式来处理多服务多实例的方式是非常困难,并且十分脆弱的。Eureka同时是Netflix服务发现的服务端和客户端。服务端可以通过配置和部署实现高可用,实现方式是每个服务端对注册的服务复制他们的状态到其他的服务端。

Read more

《Spring Cloud Netflix官方文档》路由和过滤器: Zuul

原文链接

路由是一个微服务架构体系中必须的一部分,比如说,“/” 映射你的web根应用,“/api/users” 映射到用户服务,“/api/shop” 映射到购物服务上. Zuul 是 Netflix 公司的一个基于JVM的服务器端带负载均衡功能的路由。

Read more

IO模型解惑

本文基于《构建高性能网站》整理。之前对于各种IO模型的理解不是很清晰,发现这本书里整理得比较好,这里记录下相关要点。

Read more

深度解析Java线程池的异常处理机制

作者:aCoder2013 首发博客地址:https://github.com/aCoder2013/blog/issues/3

前言

今天小伙伴遇到个小问题,线程池提交的任务如果没有catch异常,那么会抛到哪里去,之前倒是没研究过,本着实事求是的原则,看了一下代码。

Read more

return top