随笔分类 -  个人作品

摘要:# 一、背景 前段时间了解了泛化调用这个玩意儿,又想到自己之前写过一个RPC框架(参考《[手写一个RPC框架](https://www.cnblogs.com/2YSP/p/13545217.html)》),于是便想小试牛刀。 # 二、泛化调用简介 **什么是泛化调用** 泛化调用就是在不依赖服务方 阅读全文
posted @ 2023-06-27 13:40 烟味i 阅读(950) 评论(2) 推荐(0) 编辑
摘要:# 一、前言 2018年写过一篇分库分表的文章《[SpringBoot使用sharding-jdbc分库分表](https://www.cnblogs.com/2YSP/p/9746981.html)》,但是存在很多不完美的地方比如: - sharding-jdbc的版本(1.4.2)过低,现在gi 阅读全文
posted @ 2023-06-12 10:17 烟味i 阅读(2489) 评论(14) 推荐(6) 编辑
摘要:一、Sentinel简介 Sentinel是阿里开源的面向服务流量治理的框架,官方原文是Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 Sen 阅读全文
posted @ 2023-04-18 09:37 烟味i 阅读(362) 评论(3) 推荐(1) 编辑
摘要:一、背景 作为Java开发,经常需要根据数据库某个字段获取对应的枚举类,然后就要在枚举类添加如下的方法: public static TestEnum getByCode(Integer code) { return Arrays.asList(values()).stream().filter(i 阅读全文
posted @ 2023-03-01 09:56 烟味i 阅读(1186) 评论(0) 推荐(3) 编辑
摘要:一、背景 21年发布的开源项目ship-gate收获了100+start,但是作为网关它还缺少一项重要的能力——集群化部署的能力,有了这个能力就可以无状态的横向扩展,再通过nginx等服务器的反向代理就能极大提升网关的吞吐量。 本文主要介绍如何实现ship-gate的集群化改造,不了解该项目的童鞋可 阅读全文
posted @ 2023-02-12 17:48 烟味i 阅读(171) 评论(0) 推荐(0) 编辑
摘要:一、背景 之前写了一篇《手写事件发布订阅框架》,虽然可以用但代码写的比较粗糙,且存在优化的空间,于是对其进行了重构主要包括以下几点: 面向接口编程,包结构更加清晰。 框架改成spring-boot-starter的形式实现即插即用。 对核心类EventManager的代码进行了部分剥离,使其更符合职 阅读全文
posted @ 2022-05-09 23:04 烟味i 阅读(267) 评论(0) 推荐(0) 编辑
摘要:一、前言 ​ 发布订阅模式也叫观察者模式,利用该模式可以进行代码解耦,很多框架都用到该设计模式,比如Spring的事件机制,guava的EventBus(事件总线)等,不清楚观察者模式的话可以查看本人之前写的博客《设计模式之观察者模式》。 ​ 为了更好的了解现有的事件框架实现原理,便手写了一个简单的 阅读全文
posted @ 2022-04-23 16:46 烟味i 阅读(615) 评论(0) 推荐(1) 编辑
摘要:一、前言 ​ 最近在github上看了soul网关的设计,突然就来了兴趣准备自己从零开始写一个高性能的网关。折腾了大概三周时间,网关ship-gate核心功能基本都已完成,写这篇文章是记录我是如何从零开始手写一个网关的。 二、设计 2.1技术选型 网关是所有请求的入口,所以要求有很高的吞吐量,为了实 阅读全文
posted @ 2021-01-02 20:52 烟味i 阅读(3976) 评论(9) 推荐(4) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起