自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(306)
  • 收藏
  • 关注

原创 BeanFactory动态注入到Interface

有时候代码需要灵活的返回需要的一些对象,这时候我们往往用接口去承载返回的对象。尤其像spring这种框架,可以用@Resource的name属性进行区别。但是这种需要开发者在注入ioc中就提前申明name属性,在针对多个实现的情况下。作者今天看到另外一种姿势,主要是通过BeanFactory接口以及ApplicationContextInitializer、BeanDef...

2022-04-08 23:00:52 427

原创 Spring的缓存机制探索

好久没有写博客了,这段时间尽炒股了。作为一个靠技术吃饭的人,多少有种不无正确的感觉。每当闲暇的时候我总在想,如何才能真正的提升自我,最终我得出的结论是写笔记,记录思维,探索自己疑惑,直到解...

2021-11-21 18:22:09 708

原创 ServletContextListener的流程笔记

在之前我们学习springboot的时候大概的讲过启动tomcat的过程。说到tomcat也就是servlet容器的问题,至于今天所说的ServletContextListener其实有很...

2021-08-27 21:53:18 620

原创 file2Udp增量日志转出Udp简介

https://gitee.com/tianjingle/file2udp很多时候服务产生的日志需要进行汇总,这种统一日志处理的方式有elb,而且很多日志组件也支持日志转出的能力。但是从广义上来说是定制化的,我们需要一个小工具实现tail -f的能力,将增量日志转到udp,然后通过logstash进行集中汇总进行外发。基于此,作者利用周末开发file2Udp工具,实现日志文件增量tai...

2023-11-12 19:27:43 511

原创 ApachePulsar原理解析与应用实践(学习笔记一)

随着时代的发展,软件设计的理念也在不断发展,从单体服务、面向服务、微服务,发展到云原生以及无服务。其演变的过程是一个能力不断增强,领域边界不断微分细化的过程。比如无服务就是将函数作为服务,就类似dns模式的服务设计。大数据系统往往需要处理流式数据,通过消息队列将数据进行采集和汇总,然后导入大数据计算引擎或者存储。目前各种云原生技术都比较丰富,但是消息中间件MQ的云原生技术目前了解到的只有pulsa...

2023-09-04 23:14:26 534

原创 曲线背后的阴阳观

最近想日间交易策略时,发现一个有意思的曲线。因为策略的买卖信号,本应为非正既负,然而现实往往是一串的正或者一串负,亦或者正与负的随机组合。单纯的突变正是我想要的,不过连续的正或负的组合突变确实让人应该好好考虑​一下其背后的意义。​出去散步一会儿,看着熙熙阳光,树荫婆娑,突然一念映入大脑。一日之中阳的强度,是瞬间未来的阳量对瞬间过去阳量的梯度,根据这个定义,我们大概可以想一下阴阳互补的曲线。子时阳为...

2023-04-30 17:27:20 209

原创 K线与固定换手率情绪化换手率的一些思考

刚才突然有个想法,想法的基础是k线与换手率的关系,观察k和成交额会发现k线的max与min价差的大小与成交量有关系,一般是大阳线对应放量,大阴线也是放量,十字星往往是缩量。所以我理解放量是因为股价的波动达成了更多的有效交易,所以量能增大。而横盘或者小十字星缩量就对应对盘口扫描不充分,就我个人来说,卖出的话,我希望挂的高一点,买入的话我希望挂的低一点。这样小十字星走势我可能一天也拿不到筹码。想到这里...

2023-04-20 09:22:27 218

原创 SpringBoot扫包排除指定包(配置文件形式)

1、背景​在有些时候,不同环境可能需要用代码不同模块的能力,但是不同环境的项目包是一致的。这块我们想到的最简单的办法是在maven打包的时候打不同的模块,但是这样往往需要出多个包,虽然这种方式是正路但运维同学嫌麻烦。第二种方式是在spring扫包时候排除指定的排除的类或者模块,针对模块来说则需要自己实现,作者经过测试发现这种方式存在很大的问题,网上大面积是这种解决方案,基本都是乱抄。第三种方式则是...

2023-04-18 23:20:34 3215

原创 什么是幸福?

随着年纪变大,每当虚度时光后,我总是陷入沉思。什么是快乐吗?什么是幸福?我是否曾拥有幸福?这些虚空的问题对我来说很重要!被他人爱慕,享受。我想不出其他可以表现于脸上的欲拒还留的状态了,可那或许并不是幸福。幸福应该是预期得到兑现的感觉!缘起于心,行动于手,结束于心。我还是对自己的观点充满自信,对我们来说最重要的是指导我们如何获得幸福?缘起于心的高层形态是综合思考各种形势下,有正向意义的事,低级形态是...

2023-01-08 23:50:21 106

原创 URL基础理论思考

宇宙很大,但是组成宇宙的元素或许是可知的。人的思维是无限的,计算机是思维的产物,客观的说具有模拟宇宙万物的能力。比如一个水分子,由两个氢原子和一个氧原子结合而成。如果我们将视角放到氢原子上,那么氢原子的组成成分又会变成质子中子电子,这些组成成分又成为一种资源。相反如果我们把视角放到宏观,那么所有物质都是由基本的粒子拼接而成。我们不断的对宏观物体放大最终都有已知物质相对应。因此我们的URL理论其实应...

2022-10-31 00:30:33 208

原创 《隐入烟尘》观后感笔记

​上次看无声电影还是«夹边沟记事»。作者也是西北人,今天超着流量也把电影看完了。故事以老四有铁结婚开始,以他的婚姻结束为尾声。看完之后,我更多的感觉是电影中包含了很多深意。有铁人老实,一直是兄嫂家里的长工。电影开片时,有铁的家人对有铁更多的是一种关爱智障的眼神。贵英也是兄嫂长年虐待中长大的,一直住在漏风漏雨的窝棚里,从此落下了病根,常常小便失禁,而且不能生育。两人都是传统家族里不受待见的苦命人。在...

2022-09-10 21:24:53 265

原创 logstash-filter-verifiter学习笔记

​背景:最近架构师让我调研一个小工具。这个工具要实现检验logstash配置的运行结果是否达到预期。我们知道logstash的运行主要是要启动进程的。比如:./logstash -f x.conf 如果我们大量的要检测是否达到预期,那么启动大量进程,资源耗费巨大,时间尺度太长。最后在架构师的指点下,作者主要调研了logstash-filter-verifiter这个工具。​简介:​简单介绍一下:这...

2022-09-02 22:46:49 180

原创 SpringAop源码学习笔记

Aop是我们开发中经常要用到的一种技术,其背后的思想是面向切面编程思想。但是它的解决思路是如何实现的?最近作者在工作中发现项目中Aop用的比较乱,所以写了一篇文档。这里再总结一下。​1、开启注解​在使用aop的时候,我们需要开启的注释。@EnableAspectJAutoProxy 所以此注解就成为我们探究其原理的一个出发口。在此我们可以思考下,如果让我们自己来设计一套Aop,我们怎么做?​2、后...

2022-08-16 21:35:04 111

原创 Java的SPI机制学习笔记

SPI的全称为service provider interface,最初是提供给厂商做插件开发的,概况来说就是java提供了一种插件的方式,通过修改项目之外的一些配置即可做到代码逻辑的变动。这块我们学习一下java定义的这种特性如何使用。Java spi使用了策略模式,一个接口多种实现。我们只需申明接口,具体的实现并不在程序中直接确认,而是有程序之外的配置决定。具体的实现...

2022-08-13 22:35:23 151

原创 Dubbo缓存机制

通过之前的学习,我们大概了解到Dubbo服务在启动的时候会全量从注册中心获取所有的服务信息,但是我们不可能每次每次都是全量的从注册中心获取,否则会导致注册中心的压力很大,所以增量是一个关键的话题。我们在写业务代码也是同样的道理,要合理的利用cache这种理念,将80%的非关键流量拦截在cache层面。Dubbo册中心的缓存是实现在AbstractRegistry抽象类中的...

2022-08-10 22:48:10 602

原创 Dubbo注册中心之Redis原理概述

Redis注册中心也沿用了Dubbo抽象的root、service、type、url四层结构。但是由于redis属于noSql数据库,数据都是用k-v形式保存的,并不能像zookeeper一样实现树状的目录结构。因此redis使用key/map结构实现这个需求,root、service、type组合形成redis的key,redis的value是一个map结构,url作为...

2022-08-09 07:20:15 309

原创 Dubbo注册中心之ZK原理概述

无论采用那种组件作为注册中心,多多少少有数据结构的不一致的问题。所以dubbo-registry-api包也只能给一个总体的框架和流程,数据结构和实现往往需要具体问题具体分析。这块我们跟随书来学一下ZK和redis的原理。1、Zookeeper原理概述我们知道ZK是树状的结构的注册中心,用ZK做分布式锁也是判断叶子节点存在与否的过程。之前我们也讲过,ZK节点有好多中类型,...

2022-08-08 05:20:04 2052

原创 Dubbo 注册中心学习笔记

在Dubbo微服务体系中,注册中心是其核心组件之一,Dubbo通过注册中心实现了分布式环境中各个服务之间的注册和发现,是各个分布式节点之间的纽带,主要的作用如下:1、动态加入。一个服务提供者通过注册中心可以动态的把自己暴露给其他消费者,无需消费者逐个去更新配置文件。2、动态发现,一个消费者可以动态的感知新的配置,路由规则和新的服务器提供者,无需重启服务使之生效。3、动态调...

2022-08-07 21:46:52 139

原创 BDD与单元测试相关问题介绍

java的单元测试原理原理描述java进程的启动依赖于唯一的main函数,java中的junit采用插件隐藏main函数的方式,我们右键运行某测试用例。其本质上传入的是测试用例的路径。而插...

2021-12-19 10:34:28 782

原创 Apace dubbo学习笔记(一)

Dubbo是阿里巴巴开发的一个开源的高性能、高可用、可扩展的分布式RPC调用框架,致力于提供高性能和透明化的 RPC 远程调用服务解决方案。作为阿里巴巴 SOA 服务化治理方案的核心框架,...

2021-10-14 14:39:45 116

原创 SPI浅析

SPI全称Service provider interface,是一种服务发现机制。其通过resource/META-INF/services文件来查找具体的实现类,并加载到jvm中,因此...

2021-10-11 12:53:51 119

原创 金融街小游

眼看假期要结束了,不敢落寞的心又燃起了到处游玩的气焰。可是到底去哪儿就又开始纠结了,去爬山体验大自然的鬼斧神工还是去城里边看时空交错的摩天大楼。考虑到山里边往往道路单一所以堵车是常态,随随...

2021-10-07 21:16:35 148

原创 应用架构演化进程

那么应用架构主要有哪些阶段呐?这里作者凭着自己的理解粗糙的讨论一下。算是对这个问题的一种探索吧!1.单体时代首先我们要明确是一点是什么是应用,应用按理应该包括展示、业务逻辑呵数据存储。所以...

2021-09-21 22:17:13 242

原创 Typora学习笔记

Typora基本是程序员的日常工作的一种非常实用的工具了吧。其效果还是非常好的。这块我们也系统的学习一下吧。以上是typora相关的一些学习笔记截图。当然作为md文件,一些常见的的标记还是...

2021-09-18 15:03:23 1149

原创 推广位的设计思路

大型网站因为其优良的价值导向和优秀的功能吸引很多用户去访问。因此大型网站往往具有流量导向的功能,而流量导向的一种方式就是推广位,一般来说推广位和广告位是一样的。都是宣传和吸引潜在的用户去点...

2021-08-24 23:08:16 119

原创 写几个java反射工具方法

在java中使用反射是常规操作,我们经常需要面对未知的属性或者经过层层代理或者委派等情况下的属性值,在不能给对方定性的基础上,我们就可以采用一刀切的方式去解决问题。毕竟根本的这些属性均在于...

2021-08-21 15:45:29 112

原创 Mybatis拦截器实现读写分离的思路和实践

上次文章我们采用原生的方式做了mybatis的多数据源,多数据源势必要决定采用那种数据源了,当然这里说的是数据一样的数据源了,也就是主从或者主备之类的,为啥要做读写分离就是因为业务读写压力...

2021-08-17 22:18:59 880

原创 Mybatis配置多数据源

在项目中经常会存在操作不同数据库得情况,最为典型就是后管系统,如果不走接口进行调用,那么势必会有多个数据源作为数据管理的得突破口。在此我们可以想一下到底是微服务接口暴露模式的后管好还是基于...

2021-08-16 20:34:54 3695

原创 Idea开发maven插件

今天又是远程上班,早上起来没啥事写一篇博客吧。咋就把这个写文章当干饭一样,写一篇就是一篇。今天我们来学一下maven插件的开发,首先说一下maven有什么用吧,我们知道maven有clea...

2021-08-13 09:16:18 1671

原创 DataFrame数据的平移和绝对值方法小记

昨天突然觉得自己不会dataframe的数据平移。今天赶早学一下,这个python数据平移还是很重要的,尤其是你想处理一个数据的时候,如果把数据转成简单的数组那就南辕北辙了,在现有的技术上...

2021-08-12 09:38:24 2751

原创 Idea远程debug代码

疫情又来了,于是大家又开始了AB班(摸鱼)模式,今天安排我居家办公。远程吧,哎呀好卡呀,闲了吧像演示一波如何远程debug线上代码,可惜这个vpn老是不稳定,还是本地演示一波吧,效果是一样...

2021-08-11 16:22:25 163

原创 代码发布平台的设计

代码上线如果采用人工方式,那就有点熬人了。尤其像咋这种粗心又大意的小伙伴,一不小心发个bug甚至直接把rm指令当mv的用,那妥妥的要挨打。所以我们需要一条途径让我们的代码上...

2021-07-29 22:00:07 384

原创 轻量级Rpc框架Hessian学习笔记

1.Hessian简介Hessian是一个轻量级的远程http工具,采用binaray Rpc协议,适合发送二进制数据,同时具有防火墙穿透能力,hessian一般通过web应用来提供服务。...

2021-07-28 21:34:19 426

原创 EnvironmentPostProcessor自定义配置

我们想着这块把spring相关的有用的接口都过一下,相当于二次消化吧。其实仔细反思我们这一路的学习,我们发现java这块还是有很多要学的,就日常开发的spring来说,就咋写的那些笔记呀,...

2021-07-24 00:14:44 1484

原创 SpringBoot自定义Banner

在使用springBoot的时候,我们经常看到启动的那个spring广告栏,如图所示。在有些项目中人家换了一个姿势就让萌新觉得这项目好像都没有用springBoot,难不成是自己搞的一套,...

2021-07-21 11:14:23 122

原创 ApplicationInitlizer接口与Spring工具类

项目中要灵活使用static来标记一些常用得类,static得作用就是跨对象得存在性。只要类没有被卸载掉,那么static修饰得属性就一直在。因此我们可以用static来标记一些引用,因为...

2021-07-20 14:11:33 103

原创 BeanDefinitionRegistryPostProcessor接口学习

之前我们学习过SpringBoot得工厂后置处理器得排序注册得文章,https://mp.weixin.qq.com/s/VXHd98g7CW6VcngMitzXHw。当时说BeanDef...

2021-07-19 19:30:03 285

原创 SpringBoot注入Map<String,Bean>

为什么突然写这样一篇文章呐,因为作者在看项目的时候发现老代码中的多数据源用的很六,而多数据的配置基础配置信息存储在Map数据结构中,也就是本次文章的标题。在看代码中,作者觉的人家这种想法非...

2021-07-16 21:26:11 1891

原创 日志框架Log4j的学习小记

Java项目的框架基本就是slf4j,slf4j提供了一套规范,也就是门面,而至于后边是如何实现的只要按照人家定义的接口去做就行了。常见的日志框架又springboot自带的logback...

2021-07-15 07:00:00 285

原创 RunTime的回调钩子

项目运行结束得时候可能需要对一些现有得信息进行保存。比如说我们在java进程退出得时候要保存一些数据,下次启动得时候要用到这些数据得情况。Java在1.3得时候就支持了这种特性。这种特性得...

2021-07-14 08:34:40 134

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除