鸿鹄云架构[系统管理平台]是一个大型 企业.分布式.微服务.云架构的JavaEE体系快速研发平台,基于 模块化.微服务化.原子化.热部署的设计思想,使用成熟领先的无商业限制的主流开源技术 (Spring Cloud+Spring Boot+Mybatis+Oauth2+微服务设计思想)构建. 采用服务化的组件开发模式,可实现复杂的业务功能.使用 Maven进行项目的构建管理,采用 Jenkins进行持续集成,主要定位于大型分布式企业系统或大型分布式互联网产品的架构.使用当前最流行最先进的开源技术…
文章首发于公众号<程序员果果> 地址 : https://mp.weixin.qq.com/s/FfJrAGQuHyVrsedtbr0Ihw 简介 上一篇文章<Eureka 源码分析之 Eureka Client> 通过源码知道 ,eureka Client 是通过 http rest来 与 eureka server 交互,实现 注册服务,续约服务,服务下线 等.本篇探究下eureka server. 源码分析 从 @EnableEurekaServer 注解为入口分析,通过源码…
背景介绍 提起SPI机制,可能很多人不太熟悉,它是由JDK直接提供的,全称为:Service Provider Interface.而在平时的使用过程中也很少遇到,但如果你阅读一些框架的源码时,会发现它的有点无处不在的感觉.比如我们经常使用的spring框架,其spring-web包下就在使用该机制. 还有我们每个项目都离不开的日志框架log4j和数据库驱动框架中也同样的使用着SPI机制. 这么看来,SPI机制可谓无处不在,那么今天这篇文章就带大家揭开它的神秘面纱. 什么是SPI机制 SPI机制…
java 日志体系(四)log4j 源码分析 logback.log4j2.jul 都是在 log4j 的基础上扩展的,其实现的逻辑都差不多,下面以 log4j 为例剖析一下日志框架的基本组件. 一.总体架构 log4j 使用如下: @Test public void test() { Log log = LogFactory.getLog(JclTest.class); log.info("jcl log"); } log.info 时调用的时序图如下: 在 log4j 的配置文件,…
Eureka源码解析: 搭建Eureka服务的时候,我们会再SpringBoot启动类加上@EnableEurekaServer的注解,这个注解做了一些什么,我们一起来看. 点进@EnableEurekaServer这个注解就会看到下面代码: /* * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License")…
前言介绍 了解到了SpringCloud,大家都应该知道注册中心,而对于我们从过去到现在,SpringCloud中用的最多的注册中心就是Eureka了,所以深入Eureka的原理和源码,接下来我们要进行讲解下eureka的源码分析,由此应运而产生的本章节的内容. 基本原理 Eureka Server提供服务注册服务,各个节点启动后,会在Eureka Server中进行注册,这样Eureka Server中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到. Eur…
1.为什么要服务发现? 服务实例的网络位置都是动态分配的.由于扩展.失败和升级,服务实例会经常动态改变,因此,客户端代码需要使用更加复杂的服务发现机制. 2.常见的服务发现开源组件 etcd—用于共享配置和服务发现的高可用性.分布式.一致的键值存储.使用etcd的两个著名项目是Kubernetes和Cloud Foundry.consul-发现和配置服务的工具.它提供了一个API,允许客户端注册和发现服务.领事可以执行健康检查,以确定服务的可用性.Apache Zookeeper——一个广泛使用…
feign:(推荐使用) Feign是受到Retrofit,JAXRS-2.0和WebSocket的影响,它是一个jav的到http客户端绑定的开源项目. Feign的主要目标是将Java Http 客户端变得简单.减少配置文件,实现基于注解零配置调用 源码分析: feign的实现: 1>启动类加注解:@EnableFeignClients 2> feign实现: 3> 接口调用 这是feign的实现过程:这是代码实现,注意还需要配置文件,又不懂的参考我博客 springcloud 入门…
摘要: 原创出处 https://www.cnkirito.moe/spring-security-4/ 「老徐」欢迎转载,保留摘要,谢谢! 4 过滤器详解 前面的部分,我们关注了Spring Security是如何完成认证工作的,但是另外一部分核心的内容:过滤器,一直没有提到,我们已经知道Spring Security使用了springSecurityFilterChain作为了安全过滤的入口,这一节主要分析一下这个过滤器链都包含了哪些关键的过滤器,并且各自的使命是什么. 4 过滤器详解 4.…
文章首发于微信公众号<程序员果果> 地址:https://mp.weixin.qq.com/s/47TUd96NMz67_PCDyvyInQ 简介 Eureka是一种基于REST(Representational State Transfer)的服务,主要用于AWS云,用于定位服务,以实现中间层服务器的负载平衡和故障转移.我们将此服务称为Eureka Server.Eureka还附带了一个基于Java的客户端组件Eureka Client,它使与服务的交互变得更加容易.客户端还有一个内置的负载…