摘要: 篇幅较长,所以首先列举结果,也就是我们的目的 核心目的为探索特定场景对不同类型数据进行统一抽象,并达到足够高性能,也就是一份代码实现,对不同类型数据依然高性能 以下为结果,也就是我们的目的: 对1w行 csv 数据的string进行 RFC4180 csv标准进行解析, string 类型 csv 阅读全文
posted @ 2024-02-27 23:03 victor.x.qu 阅读(387) 评论(1) 推荐(5) 编辑
摘要: 上一篇 用 HexColor 作为示例,可能过于简单 这里再补充一个 ini 解析的示例 由于实在写不动用其他库解析 ini 了, 春节都要过完了,累了,写不动了, 所以随意找了一份解析ini的库, 仅供参考,对比不准确,毕竟完整库包含了更多功能 先看看结果 BenchmarkDotNet v0.1 阅读全文
posted @ 2024-02-15 17:05 victor.x.qu 阅读(271) 评论(0) 推荐(1) 编辑
摘要: 前因 在春节前了解到 Rust语言有一个叫 nom 的解析库 它可以让你创建安全的解析器,而不会占用内存或影响性能。 它依靠 Rust 强大的类型系统和内存安全来生成既正确又高效的解析器,并使用函数,宏和特征来抽象出容易出错的管道。 nom 核心是解析器组合器,而解析器组合器是高阶函数,可以接受多个 阅读全文
posted @ 2024-02-13 21:57 victor.x.qu 阅读(805) 评论(2) 推荐(3) 编辑
摘要: Ulid ULID :Universally Unique Lexicographically Sortable Identifier(通用唯一词典分类标识符) c# 实现库 : https://github.com/Cysharp/Ulid ULID特性 ulid() # 01ARZ3NDEKTS 阅读全文
posted @ 2023-11-10 13:12 victor.x.qu 阅读(1843) 评论(2) 推荐(7) 编辑
摘要: openresty 中如何使用 wasm WASM 是什么? WebAssembly是一种运行在现代网络浏览器中的新型代码,并且提供新的性能特性和效果。它设计的目的不是为了手写代码而是为诸如C、C++和Rust等低级源语言提供一个高效的编译目标。 对于网络平台而言,这具有巨大的意义——这为客户端ap 阅读全文
posted @ 2023-02-14 16:55 victor.x.qu 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 如何给openresty打patch 由于很多功能实现的限制,我们不得不修改openresty,但我们又不一定能持续维护一个 openresty 分支,所有有了patch 这一操作。 patch是怎么补“漏洞”的? patch 中文含义为补丁,给大家的感觉就像在原来的基础上修复漏洞,就像小时候旧衣服 阅读全文
posted @ 2023-02-11 11:05 victor.x.qu 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 动态插件 之前已经拆解细点逐个介绍了 tcp 、http 代理相关核心点,现在介绍一个让 api gateway 变得很灵活的功能实现: 动态插件。 由于 lua 的动态语言特点,我们可以比较方便做到动态插件机制。 首先我们来了解这一切的基石:lua 模块加载机制。 lua 模块加载机制 一个模块是 阅读全文
posted @ 2023-02-10 10:10 victor.x.qu 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 配置中心 在之前 tcp的yaml配置 介绍了如何监听yaml文件变化然后更新配置。 当然假如我们有很多实例,那么yaml改动将是非常痛苦的事情,那么如何做到配置文件统一管理,实时更新呢? 我们可以引入配置中心,从而达到这样的效果。 业界已经有非常多配置中心了,这里为了简化内容,将选用etcd作为配 阅读全文
posted @ 2023-02-09 17:33 victor.x.qu 阅读(448) 评论(0) 推荐(0) 编辑
摘要: Healthcheck 由于服务无法保证永远不会下线,而且下线时不一定能有人员能及时发现, 所以api gateway 一般会引入一个监工 Healthcheck, 像大家每年体检一样定时确认服务是否存活。 这样就可以在上游节点发生故障或者迁移时,将请求代理到健康的节点上,最大程度避免服务不可用的问 阅读全文
posted @ 2023-02-09 10:58 victor.x.qu 阅读(456) 评论(0) 推荐(1) 编辑
摘要: 什么是负载均衡 负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行 以下为几种负载均衡策略介绍 1.随机(Random) 大家很多时候说到随机的负载均衡都会想到 Round Robin, 其实 Round Robin并非随机, Rand 阅读全文
posted @ 2023-02-07 11:20 victor.x.qu 阅读(547) 评论(0) 推荐(0) 编辑