随笔分类 -  手把手系列

主要是专注于基础的文章
摘要:引言 redis大家在项目中经常会使用到。官网也提供了多语言的客户端供大家操作redis,如下图所示 但是,大家有思考过,这些语言操作redis背后的原理么?其实,某些大神会说 只要按照redis的协议,发送指定数据给redis,监听返回值即可。 确实,本质原理就是如上面那句话所说。博主也是以这种思 阅读全文
posted @ 2018-07-23 09:07 孤独烟 阅读(4501) 评论(5) 推荐(16) 编辑
摘要:引言 什么是网关?为什么需要使用网关? 如图所示,在不使用网关的情况下,我们的服务是直接暴露给服务调用方。当调用方增多,势必需要添加定制化访问权限、校验等逻辑。当添加API网关后,再第三方调用端和服务提供方之间就创建了一面墙,这面墙直接与调用方通信进行权限控制。 本文所实现的网关源码抄袭了 Oh,不 阅读全文
posted @ 2018-06-25 07:49 孤独烟 阅读(13659) 评论(29) 推荐(22) 编辑
摘要:引言 自上一篇《 "自己动手实现牛逼的单例模式" 》问世之后,得到了不错的评价。于是博主在五一放弃出去游玩机会,赶制了这篇《自己动手循序渐进实现观察者模式》,依然还是一步一步推导出最终版的观察者模式。 观察者模式 定义: 在许多设计中,经常涉及多个对象都对一个特殊对象中的数据变化感兴趣,而且这多个对 阅读全文
posted @ 2018-04-29 19:13 孤独烟 阅读(1974) 评论(15) 推荐(10) 编辑
摘要:引言 其实写这篇文章之前,我犹豫了一下,毕竟单例大家都知道,写这么一篇文章会不会让人觉得老掉牙。后来想想,就当一种记录吧。先来一副漫画吧,如下图所示 ok,我们回顾下小灰的遭遇,上述漫画所提出的那些问题主要有以下三点: 1. 为什么静态内部类的单例模式是最推荐的? 2. 如何在反射的情况下保证单例? 阅读全文
posted @ 2018-04-25 20:42 孤独烟 阅读(4536) 评论(22) 推荐(12) 编辑
摘要:引言 本文利用java自带的socket编程实现了一个简单的静态资源服务器,可以响应静态资源。本文一共有两个版本的源码。第一个版本名为Server_v1,该版本实现了一个简单的socket的服务器,帮助读者回忆socket编程。第二个版本名为Server_v2,该版本是对第一版的改良,给出了改良思路 阅读全文
posted @ 2018-04-19 21:18 孤独烟 阅读(2260) 评论(12) 推荐(6) 编辑
摘要:引言 本文利用java自带的socket编程实现了一个简单的rpc调用框架,由两个工程组成分别名为battercake provider(服务提供者)、battercake consumer(服务调用者)。 设计思路如下: 1、在battercake provider中,写一个服务叫BatterCa 阅读全文
posted @ 2018-04-11 22:40 孤独烟 阅读(3006) 评论(8) 推荐(6) 编辑
摘要:引言 项目结构如下图所示,maven项目 1、JDK动态代理 先来一段jdk动态代理的demo, 首先创建一个接口,Person 然后写一个实现类PersonImpl 然后写个使用类PersonInvocationHandler 最后 再写个测试类 输出如下 接下里我们不使用JDK的API,自己实现 阅读全文
posted @ 2018-04-09 00:44 孤独烟 阅读(2647) 评论(20) 推荐(5) 编辑