接口权限模型
OAuth2认证流程和授权模式
随着微服务的兴起,OAuth2也火了起来,由于其自身的优势,俨然已成为微服务API服务接口安全防护的首选。
基于jwt的token认证
JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案。
- JWT 默认是不加密,但也是可以加密的。生成原始 Token 以后,可以用密钥再加密一次。
- JWT 不加密的情况下,不能将秘密数据写入 JWT。
- JWT 不仅可以用于认证,也可以用于交换信息。有效使用 JWT,可以降低服务器查询数据库的次数
- JWT 的最大缺点是,由于服务器不保存 session 状态,因此无法在使用过程中废止某个 token,或者更改 token 的权限。也就是说,一旦 JWT 签发了,在到期之前就会始终有效,除非服务器部署额外的逻辑。
- JWT 本身包含了认证信息,一旦泄露,任何人都可以获得该令牌的所有权限。为了减少盗用,JWT 的有效期应该设置得比较短。
- 为了减少盗用,JWT 不应该使用 HTTP 协议明码传输,要使用 HTTPS 协议传输。
数据库和缓存数据双写一致问题
文本搜索神器rg的使用教程
说到文本搜索工具,大家一定会知道 grep, 它是 linux 最有用并最常用的工具之一。但如果在一个大的工程项目中搜索某个关键词,它会有些耗时。
如果有更好的替代工具, 最出名的应该是 Ack,Ag , 而现在一个新的替代者 Ripgrep, 简称rg
, 比它们更快, 更省电.
解决git clone github下载慢龟速的问题
github 在家天天下载十几k, 忍你好久了, 实在是忍不了了..
mysql索引机制和建索引原则
1. 索引基础
1.1 分类
- 按底层数据结构划分
- B-Tree 索引 (B-Tree/B+Tree):
- 哈希索引 (Hash Index): 基于哈希表实现,对索引列计算哈希值,然后存储哈希值和行指针。
- 全文索引 (Full-Text Index):它使用“倒排索引”等更复杂的数据结构。
- 空间索引 (R-Tree Index):用于处理地理空间数据(如坐标、区域),能高效地进行范围和邻近查询。
- 按与数据物理存储的关系划分
- 聚集索引 (Clustered Index):
- 非聚集索引 (Non-Clustered Index / Secondary Index):
- 按应用和逻辑功能划分
- 主键索引 (Primary Key Index): 索引列的值必须唯一且不允许为 NULL。
- 唯一索引 (Unique Index):索引列的值必须唯一,但允许有 NULL 值(可以有多个 NULL)。
- 普通索引 (Normal/Regular Index):
- 联合索引 (Composite/Compound Index):