Casbin学习笔记
简介
Casbin是一个权限控制的开发库,它的特性包括:
- 支持多种编程语言,包括Go、Java、Node.js、PHP、Python等
- 支持ACL、RBAC、ABAC等多种访问控制模型
- 支持以典型的 {subject, object, action}形式,或者自定义的形式来定义策略,allow/deny授权均支持
- 支持处理访问控制模型,及其策略的存取(和存储后端交互)
- 支持管理角色-用…
4 years ago
0
2
基于本地gRPC的Go插件系统
Go插件化
Go语言缺乏好用的动态加载代码的机制,Go程序通常是单个自包含的二进制文件,因此难以实现类似于Java那样的插件系统。
两种方式
编译期插件
这种插件直接编译到二进制文件中。典型的例子是database/sql包中的数据库驱动。这种插件都是通过空白导入…
阅读全文
4 years ago
2
5
Ginkgo学习笔记
简介
Ginkgo /ˈɡɪŋkoʊ / 是Go语言的一个行为驱动开发(BDD, Behavior-Driven Development)风格的测试框架,通常和库Gomega一起使用。Ginkgo在一系列的“Specs”中描述期望的程序行为。
Ginkgo集成…
阅读全文
4 years ago
2
4
Kubernetes故障检测和自愈
前言
在Kubernetes日常运维过程中,会出现各种各样的问题,例如:
- 节点CNI不可用,其它节点无法连接到故障节点的Pod
- Subpath方式挂载的Configmap,特定条件下出现Pod无限重启的问题
- 集群DNS服务器无法通过上游DNS解析外部名称
- 节点假死,…
5 years ago
0
6
OpenAPI学习笔记
简介
OpenAPI是一套API规范( OpenAPI Specification ,OAS),用于定义RESTful API的接口。OpenAPI最初来自SmartBear的Swagger规范。
OpenAPI 目前的版本是3.0,当前Swagger和Ope…
阅读全文
5 years ago
0
1
SOFAStack学习笔记
简介
SOFAStack(Scalable Open Financial Architecture Stack,可扩展开放金融架构栈)是蚂蚁金服开源的技术栈,国内多家金融和互联网公司在生产环境使用了此技术栈。
SOFABoot
基于Spring Boot,额外提…
阅读全文
5 years ago
0
1
Istio Mixer与Envoy的交互机制解读
前言
在前些日子的文章Istio Pilot与Envoy的交互机制解读中我们详细研究了Istio Pilot如何基于xDS协议和Envoy代理进行各种配置信息的交换。Istio的另一个核心组件是Mixer,它提供三类功能:
- 遥测报告(Telemetry Reporting),该功能是服务网格可观察性的基础。…
5 years ago
0