会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
crossoverJie
You never know what you can do till you try.
博客园
首页
新随笔
联系
管理
订阅
上一页
1
···
4
5
6
7
8
9
10
11
12
···
18
下一页
2022年6月28日
几百行代码实现一个 JSON 解析器
摘要: 前言 之前在写 gscript时我就在想有没有利用编译原理实现一个更实际工具?毕竟真写一个语言的难度不低,并且也很难真的应用起来。 一次无意间看到有人提起 JSON 解析器,这类工具充斥着我们的日常开发,运用非常广泛。 以前我也有思考过它是如何实现的,过程中一旦和编译原理扯上关系就不由自主的劝退了;
阅读全文
posted @ 2022-06-28 12:12 crossoverJie
阅读(1371)
评论(0)
推荐(9)
2022年5月31日
几百行代码实现一个脚本解释器
摘要: 前言 最近又在重新学习编译原理了,其实两年前也复习过,当初是为了能实现通过 MySQL 的 DDL 生成 Python 中 sqlalchemy 的 model。 相关文章在这里:手写一个词法分析器 虽然完成了相关功能,但现在看来其实实现的比较糙的,而且也只运用到了词法分析;所以这次我的目的是可以通
阅读全文
posted @ 2022-05-31 12:49 crossoverJie
阅读(733)
评论(1)
推荐(1)
2022年5月23日
分享一个 SpringCloud Feign 中所埋藏的坑
摘要: 背景 前段时间同事碰到一个问题,需要在 SpringCloud 的 Feign 调用中使用自定义的 URL;通常情况下是没有这个需求的;毕竟都用了 SpringCloud 的了,那服务之间的调用都是走注册中心的,不会需要自定义 URL 的情况。 但也有特殊的,比如我们这里碰到 ToB 场景,需要对每
阅读全文
posted @ 2022-05-23 17:50 crossoverJie
阅读(1568)
评论(2)
推荐(4)
2022年5月6日
撸了一个 Feign 增强包 V2.0 升级版
摘要: 前言 大概在两年前我写过一篇 撸了一个 Feign 增强包,当时准备是利用 SpringBoot + K8s 构建应用,这个库可以类似于 SpringCloud 那样结合 SpringBoot 使用声明式接口来达到服务间通讯的目的。 但后期由于技术栈发生变化(改为 Go),导致该项目只实现了基本需求
阅读全文
posted @ 2022-05-06 13:13 crossoverJie
阅读(409)
评论(1)
推荐(1)
2022年3月23日
Pulsar 也会重复消费?
摘要: 背景 许久没有分享 Java 相关的问题排查了,最近帮同事一起排查了一个问题: 在使用 Pulsar 消费时,发生了同一条消息反复消费的情况。 排查 当他告诉我这个现象的时候我就持怀疑态度,根据之前使用的经验 Pulsar 在官方文档以及 API 中都解释过: 只有当设置了消费的 ackTimeou
阅读全文
posted @ 2022-03-23 18:02 crossoverJie
阅读(297)
评论(0)
推荐(0)
2022年3月10日
5分钟学会 gRPC
摘要: 介绍 我猜测大部分长期使用 Java 的开发者应该较少会接触 gRPC,毕竟在 Java 圈子里大部分使用的还是 Dubbo/SpringClound 这两类服务框架。 我也是近段时间有机会从零开始重构业务才接触到 gRPC 的,当时选择 gRPC 时也有几个原因: 基于云原生的思路开发部署项目,而
阅读全文
posted @ 2022-03-10 18:15 crossoverJie
阅读(952)
评论(0)
推荐(0)
2021年12月28日
简单的 for 循环也会踩的坑
摘要: 前言 最近实现某个业务时,需要读取数据然后再异步处理;在 Go 中实现起来自然就比较简单,伪代码如下: list := []*Demo{{"a"}, {"b"}} for _, v := range list { go func() { fmt.Println("name="+v.Name) }()
阅读全文
posted @ 2021-12-28 00:43 crossoverJie
阅读(699)
评论(1)
推荐(2)
2021年12月20日
用 Go 实现一个 LRU cache
摘要: 前言 早在几年前写过关于 LRU cache 的文章: https://crossoverjie.top/2018/04/07/algorithm/LRU-cache/ 当时是用 Java 实现的,最近我在完善 ptg 时正好需要一个最近最少使用的数据结构来存储历史记录。 ptg: Performa
阅读全文
posted @ 2021-12-20 18:27 crossoverJie
阅读(297)
评论(0)
推荐(0)
2021年11月29日
撸了一个可调试 gRPC 的 GUI 客户端
摘要: 前言 平时大家写完 gRPC 接口后是如何测试的?往往有以下几个方法: 写单测代码,自己模拟客户端测试。 可以搭一个 gRPC-Gateway 服务,这样就可以在 postman 中进行模拟。 但这两种方法都不是特别优雅;第一种方法当请求结构体嵌套特别复杂时,在代码中维护起来就不是很直观;而且代码会
阅读全文
posted @ 2021-11-29 18:03 crossoverJie
阅读(763)
评论(2)
推荐(2)
2021年11月15日
编写一个接口压测工具
摘要: 前言 前段时间有个项目即将上线,需要对其中的核心接口进行压测;由于我们的接口是 gRPC 协议,找了一圈发现压测工具并不像 HTTP 那么多。 最终发现了 ghz 这个工具,功能也非常齐全。 事后我在想为啥做 gRPC 压测的工具这么少,是有什么难点嘛?为了验证这个问题于是我准备自己写一个工具。 特
阅读全文
posted @ 2021-11-15 17:40 crossoverJie
阅读(183)
评论(0)
推荐(0)
上一页
1
···
4
5
6
7
8
9
10
11
12
···
18
下一页
公告