Dubbo日志打印剖析(自适配) - 残刃O的个人空间 - 开源中国

Dubbo 的日志打印机制============= 在以往的业务系统项目中,经常引入我们想接入的日志输出POM依赖, 利用相应的Logger API 输出日志或想打印的信息。但在依赖Spring Framework,Dubbo 或者其他项目时发现,只需要引入Logger相关Jar包依赖,就可以自适配Log 输出,利用适配后的日志输出系统打印相关信息。 它们的自适配是如何实现的呢?这些框...
阅读全文

说一说 Spring AOP 中 @Aspect 的高级用法 - 小刀爱编程的个人空间 - 开源中国

1 切点复合运算支持在切点定义中加入以下运算符进行复合运算:运算符说明`&&`与运算。`!`非运算。`||`或运算。2 切点命名一般情况下,切点是直接声明在需要增强方法处,这种切点的声明方式称为匿名切点,匿名切点只能在声明处被使用 。  如果希望在其它地方可以重用这个切点,我们可以通过 @Pointcut 注解及切面类方法来命名它。public ...
阅读全文

重新来认识你的老朋友SPRING框架 - Ala6的个人空间 - 开源中国

Spring这个词对于开发者想必不会陌生,可能你每天都在使用Spring,享受着Spring生态提供的服务,理所当然的用着SpringIOC和SpringAOP去实现老板交给你的功能 ,唔 它就是这样使用的(类声明为Bean组件,然后注入),没错 能完成老板任务,没毛病。如果向你提问什么是Spring,Spring有什么核心功能呢,你会想:这太简单了,Spring就是框架嘛,Spring核心功能就...
阅读全文

分布式系统消息中间件——RabbitMQ的使用思考篇 - Ala6的个人空间 - 开源中国

前言    前面的两篇文章,我们简单介绍了消息中间件与RabbitMQ的一些基本概念、基础用法以及常用的几个特性。但如果我们想更好的去结合我们的业务场景使用好RabbitMQ,我们还需要思考一些问题。比如:何时去创建队列,RabbitMQ的持久化,如何保证消息到达RabbitMQ,以及消费者如何确认消息...... 一、何时创建队列    从前面的文章我们知道,RabbitMQ可以选...
阅读全文

SpringBoot | 第二十九章:Dubbo的集成和使用 - oKong | 趔趄的猿 - 开源中国

前言 今年年初时,阿里巴巴开源的高性能服务框架`dubbo`又开始了新一轮的更新,还加入了`Apache孵化器`。原先项目使用了`spring cloud`之后,已经比较少用`dubbo`。目前又抽调回原来的行业应用部门,可能还会使用`dubbo`进行服务调用。趁着编写教材的机会来进行学习下。而且目前`Dubbo`也出了`springboot`的`starter`项目了,借着`SpringB...
阅读全文

SpringBoot2 项目缓存从 Redis 切换到 j2cache - JillLiu的个人空间 - 开源中国

首先添加依赖,此处有坑。刚开始添加的是 <artifactIdj2cachespringbootstarter</artifactId,一直报错,后来发现springboot2工程需要使用 <artifactIdj2cachespringboot2starter</artifactId.```<dependency <groupIdnet.oschina.j2cache</groupId...
阅读全文

kotlin使用spring data redis(二) - weidedong的个人空间 - 开源中国

自定义序列化器1.标准json序列化器,时间类型禁用时间戳```import com.fasterxml.jackson.core.JsonProcessingExceptionimport com.fasterxml.jackson.databind.ObjectMapperimport com.fasterxml.jackson.databind.SerializationFea...
阅读全文

微服务架构下的服务关联图 - 杨尚川的个人页面 - 开源中国

在微服务架构下,服务之间的关系是非常复杂的,是一个典型的有向有环图,在一个中等规模的项目中,一般会有100多个服务,而大型项目中,则会有数百个服务。假设我们有如下6个服务:每个服务都指定了自己依赖的服务:AaaSvc:BbbSvc:CccSvc:DddSvc:EeeSvc:FffSvc:我们如何把如上6个服务中跟服务AaaSvc相关的...
阅读全文

一步步编写自己的PHP爬取代理IP项目(三) - 浩翔的个人空间 - 开源中国

上一章节我们讲完了自动加载,现在我们正式进入爬虫核心代码的编写中,首先我们需要先看看整个目录 config.php        这个是我们的配置文件加载文件 ProxyPool.php  这个是爬虫的核心处理文件 Queue.php       这个是队列操作的处理文件 Requests.php   这个是发起请求的处理文件然后我们在回忆一下入口文件的代码```...
阅读全文

转换器(Converter)设计模式 - tsmyk0715的个人空间 - 开源中国

在日常开发的时候,需要在对象之间进行值的 copy,如 POJO,DTO,VO,对象之间有相同的属性,想把一个对象的值 copy 到另一个对象中去,如 从数据库中查询出我们的 POJO 对象的数据,又有个对象是对 POJO 进行包装DTO,现在想把查询出来的 POJO 的值 copy 到 DTO 中相应的属性中去,之后再扩展其属性,对此,一般可以有三种方式进行解决:setter,转换器模式和反射,...
阅读全文