2020最佳人气项目之Go Web框架
Authorization的两种方式
[TOC]
session vs jwt
背景知识:
Authentication和Authorization的区别:
Authentication:用户认证,指的是验证用户的身份,例如你希望以小A的身份登录,那么应用程序需要通过用户名和密码确认你真的是小A。Authorization:授权,指的是确认你的身份之后提供给你权限,例如用户小A可以修改数据,而用户小B只能阅读数据。
由于http协议是无状态的,每一次请求都无状态。当一个用户通过用户名和密码登录了之后,他的下一个请求不会携带任何状态,应用程序无法知道他的身份,那就必须重新认证。因此我们希望用户登录成功之后的每一次http请求,都能够保存他的登录状态。
目前主流的用户认证方法有基于token和基于session两种方式。
go-zero 服务自适应降载保护设计
一致性hash算法
redis参考
[TOC]
REmote DIctionary Server(Redis) ,它通常被称为数据结构服务器。比memcache强在:
- 支持丰富的数据类型:
String,List,Set,Sorted Set,Hash等。- 支持2种持久化:快照和追加。
- 支持主从复制。 这个比memcache强多了。挂了1个节点不会影响整体的缓存。
由于redis支持持久化,所以不光是缓存,同时也是一个数据库。
本篇介绍一些基本的使用。

