网关服务-3-过滤器

每个客户端用户请求微服务应用提供的接口时,它们的访问权限往往都需要有一定的限制,系统并不会将所有的微服务接口都对它们开放。然而,目前的服务路由并没有限制权限这样的功能,所有请求都会被毫无保留地转发到具体的应用并返回结果,

阅读全文

java动态代理源码阅读

1.什么是代理和动态代理

代理的主要是为了不改动被代理对象的代码基础上给予其更多的功能,常用的代理实现通过被代理对象,代理类同时继承同一个类,或者同时实现同一个接口,这种有编程开发者自己编写的代理类是实现的方法为静态代理;同时在系统开发中,可能由于需要实现的代理类很多,或者在程序开发时我们无法确定程序运行时具体的代理类功能,这种情况下就不能使用静态代理的方法,需要使用动态代理。另一方动态的代理的实现可以有两种方法,一种是使用java中的动态代理,还有就是使用cglib来实现动态代理,本文中主要介绍学习java动态代理的实现以及源码的解析。

阅读全文

并发编程的原子性,可见性,有序性

在前面谈到了一些关于内存模型以及并发编程中可能会出现的一些问题。下面我们来看一下Java内存模型,研究一下Java内存模型为我们提供了哪些保证以及在java中提供了哪些方法和机制来让我们在进行多线程编程时能够保证程序执行的正确性。

阅读全文

集合中的泛型和多态

泛型:泛型的作用主要是用来检查数据类型是否何方,最常见的泛型使用如集合中的泛型,通过在<>设置数据类型,List strList,则集合strList中存储的元素只能是String数据类型的,

阅读全文

redis作为分布式锁

对于分布式程序而言,当多个主机中的程序需要操作同一个变量时,由于程序是分布在不同的主机之上,不在同一个jvm中,不能使用原有的锁来进行同步,这个时候就用到了分布式锁来同步。常见的分布式锁可以有三种方法来进行实现:

阅读全文

redis基本命令使用

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

阅读全文

Hadoop基础-HDFS基本原理

概述:Hadoop是Apache软件基金会所开发的并行计算框架与分布式文件系统。其核心主要包括三个模块:Hadoop Common,HDFS与MapReduce。

阅读全文