技术架构

2022-2024商城业务技术总结

2022-2024商城业务技术总结
提要:ugrow相关工作总结, 包含相关的开源组件。正文:技术方案部分:casbin 可支持模型的RBAC的鉴权组件有多个语言实现, 后端基于db的策略装载器实现不统一,部分API有些小问题(角色权限被清空等)仔细使用jakesgordon / javascript-state-machine  js状态机用于复杂订单售后单流转处理airbyte……继续阅读 »

cyanprobe 2周前 (05-07) 19浏览 0评论0个赞

golang

Go业务框架从Gin-Api到Kratos

Go业务框架从Gin-Api到Kratos
前言之前业务侧从node过度到go, 由于基本的业务逻辑由业务中台来承载, 复杂度不算高, 包括公司内SRE的管理基建模块也是用gin搭建的, 内部使用是没问题,但对外的复杂的业务逻辑对于gin的封装还远远不够。Gin第一版用的是 https://github.com/xinliangnote/go-gin-api 这个项目对于gin的封装主要拿来改了……继续阅读 »

cyanprobe 2年前 (2022-04-21) 2199浏览 0评论57个赞

各种折腾

技术分享PPT和奇怪的Google Ads http问题我放弃了

技术分享PPT和奇怪的Google Ads http问题我放弃了
前言:最近轮到了技术分享,大佬们该讲的都讲了, 其他领域没得讲,我干脆直接区块链….另外分享一个问题, 已经百思不得其解, 有懂的大佬们给我科普下。正文奇怪的google ads http 问题:事情是这样的, 几天前一个时段elk看到大量鉴权失败的log。第一反应排查链路问题,用户没有访问session(种植cookie)授权接口……继续阅读 »

cyanprobe 2年前 (2021-12-11) 1639浏览 0评论24个赞

golang

从ping++和某支付来看支付服务设计

从ping++和某支付来看支付服务设计
前言:最近在做一个独立于中台的聚合支付服务, 来聚合海外的三方支付, 类似于ping++, 中台接入这个聚合支付服务, 使国际区域上的业务接入不再依赖中台做集成。由于这个聚合服务也相当于一个三方支付SDK, 所以要接入三方服务, 聚合成为类似于ping++这种服务, 我写的也相当于三方聚合服务。内容:1.大概流程流程图大概如下: 2.服务实现……继续阅读 »

cyanprobe 2年前 (2021-12-11) 1323浏览 0评论0个赞

CDN和OSS加速两三事
CDN和OSS加速两三事
Nodejs

Nodejs的RSA-MD5-PSS 签名方式

Nodejs的RSA-MD5-PSS 签名方式
前言:最近接入一个rsa-md5-pss模式签名的接口,给了java ,go的案例,发现nodejs并没有,最后折腾了半天看文档,OpenSSL有实现终于对上了。RSA signature and encryption schemespss填充每次的签名字串是不同的,具体下面链接https://www.cryptosys.net/pki/manpki……继续阅读 »

cyanprobe 4年前 (2020-08-14) 1878浏览 0评论37个赞

innodb

Innodb mtr buf 模块的源码阅读记录

Innodb mtr buf 模块的源码阅读记录
前言:记录下最近gbdb折腾时阅读innodb源码的记录。正文:之前说过Mtr,有很多书写的Mtr能够控制memo内的锁结构,然而加锁过程其实来自于buf 下的 buf_page_get_gen 函数, mtr_memo_push 不包含加锁流程,而mtr中有释放锁的方法mtr_memo_slot_release 这个方法可用于处理获得page的锁及其……继续阅读 »

cyanprobe 5年前 (2019-09-03) 4241浏览 1评论2个赞

innodb

最近看innodb部分记录

最近看innodb部分记录
前言:瞎写了一阵子gbdb,发现问题很多,瞅着时间看了下innodb的代码。主要是缓存池和mtr部分。记录:buffer_pool 初始化过程 开辟内存空间block 绑定 frame(包含页方法)  由于开辟的空间是连续的所以可以通过block的内存空间指针来寻址,然后查找对应的frame就能拿到页的信息(学到了…之前一直还在传递页和sp……继续阅读 »

cyanprobe 5年前 (2019-06-15) 1713浏览 0评论0个赞

innodb

最近接触的间隙锁

最近接触的间隙锁
前言: 写一下关于最近接触到的问题.正文: 间隙锁问题: 间隙锁产生原因检索范围或者不存在的记录. 例如 检索id 为1-8,或者检索 id = 16 但此记录不存在.无论rc还是rr隔离级别,检索不存在的记录都会产生间隙锁(即使是非范围的索引).锁定的范围是上一个id索引存在记录到下一个索引存在记录如 id = 13 存在……继续阅读 »

cyanprobe 5年前 (2019-04-18) 2084浏览 1个赞