
java
文章平均质量分 69
hujun8610
这个作者很懒,什么都没留下…
展开
-
Nacos 2.0发布,性能提升
3/26日阿里巴巴发布的Nacos 2.0版本。相对于1.0版本,Nacos2.0基本功能保持不变,但性能提升明显。众所周知Nacos主要用于服务注册与发现以及配置管理。2.0版本在这两个方面均有比较大性能提升。服务注册与发现2.0架构下,客户端通过gRpc发起服务注册或订阅服务的请求,之后服务端使用一个Client对象来记录该客户但使用gRpc连接发布及订阅的服务,同时对Client进行服务之间的同步。2.0服务端还会通过构建索引及元数据快速声称类似1.X中Service信息,并将Service数据通原创 2021-03-31 08:02:39 · 1548 阅读 · 0 评论 -
Springboot集成Nacos & Sentinel
Sentinel做集群限流,其中有一个很重要的角色TokenServer,在限流的时候Client都要向TokenServer请求令牌,获取令牌之后才能通过请求,详细的原理后面做Sentinel源码的时候在分析。本文主要是在Springboot中引入Sentinel以及Nacos(Nacos主要作为配置中心使用)创建工程访问阿里云SpringBoot脚手架。填写必要信息,组件依赖中添加Sentinel以及Nacos。下载代码,用idea打开工程。Nacos配置加载SpringBoot在启动的时候原创 2021-03-19 14:54:56 · 1334 阅读 · 0 评论 -
一次Springboot返回值问题排查
问题一个很简单的springboot的demo。一般我们写springboot的demo的时候为了测试功能是否正常,返回值一般是简单类型比如String,Long等等,这次写demo的时候想写一个稍微复杂一点的demo,因此返回值定义了一个BaseResponse的泛型,如下所示:public class BaseResponse<T> implements Serializable { private static final long serialVersionUID = 1L;原创 2021-03-18 16:44:36 · 630 阅读 · 0 评论 -
Java多线程编程read-write模式
首先我们来看一个read-write lock pattern的范例程序,该程序是一个多线程程序,用于对Data类的实例进行读取或者写入操作。该程序需要实现的是当线程读取时,不允许写入线程更改实例的状态,但是此时允许新的线程读取实例的状态。而当写入线程工作时,不允许读线程读取实例的状态。Main操作测试用的类Data可读写的类Writer原创 2014-07-16 13:12:45 · 606 阅读 · 0 评论 -
Java动态代理
代理模式:为其他对象提供一种代理以控制这个对象的访问。在一些情况下,一个客户不希望或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用,从某种意义上来讲,代理就是中介。 代理模式一般涉及三个角色:抽象角色:声明真实对象和代理对象的共同接口。代理角色:代理对象角色内部包含对真实对象的应用,可以操作真实对象。该对象可以对真实对象进行封原创 2014-07-28 16:12:40 · 503 阅读 · 0 评论 -
关于 Java 中 finally 语句块的深度辨析
可不能小看这个简单的 finally,看似简单的问题背后,却隐藏了无数的玄机。接下来我就带您一步一步的揭开这个 finally 的神秘面纱。问题分析finally 语句块一定会执行吗? 很多人都认为 finally 语句块是肯定要执行的,其中也包括一些很有经验的 Java 程序员。可惜并不像大多人所认为的那样,对于这个问题,答案当然是否定的,我们先来看下面这个例转载 2014-07-13 21:30:22 · 516 阅读 · 0 评论 -
Java RMI学习
Java RMI学习 闲来无事,看了《Hadoop技术内幕》中关于java rmi的介绍,觉得挺有意思的。因此想详细的了解相关的知识。在网上找了一些相关的资料学习一下。本文主要参考JavaRMI中的相关内容。RMI简介 Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口。它使客户机原创 2015-12-19 10:58:10 · 717 阅读 · 0 评论 -
Java 语言线程
Java 语言线程Java多线程的基础知识,如线程的启动、优先级等,网上有很多资料介绍,这里就不再赘述。这篇文章主要介绍线程的互斥以及线程的协作。线程互斥线程互斥又叫共享互斥,其背后的本质是JVM的内存模型,JVM内存模型本身并不非常复杂,有兴趣的同学可以自行google。理解JVM内存模型对深入理解java多线程程序有非常大的帮助。简单来说Java中的线程互斥使用关键字synchronized来实原创 2017-01-05 08:26:06 · 314 阅读 · 0 评论