短链服务改造
2018-08-15 16:57:30 0 举报
短链服务
作者其他创作
大纲/内容
2、查询短链
服务端收到请求,根据 key 去映射表查 secret ,然后用同样的算法,验证签名。服务端在验证请求时若 timestamp 超过失效日期则直接返回错误。
客户端
N
scrm_short_url (短链web应用)
5、根据条件更新短链数据
短链点击信息表
4、新增短链
3、删除短链
表结构:
api接口(调用API 时需要对请求参数进行签名验证):
5、更新短链
签名验证失败,返回错误提示
2、根据条件定位一条短链数据
根据api key、sign、timestamp、long_url 调用api
scrm-short-url-service(短链service服务)
在scrm_short_url 过滤器中根据长链接生成短链
后续拓展:
long_url
短链服务使用流程(以生成短链为例):
项目结构:
rocketmq-utils(使用消息队列定时处理短链访问信息)
3、根据条件查询多条短链数据
id 自增idkey api keysecret 参与签名的secretuser 使用者expiration_date 失效日期
api key /secret 映射表
DB(短链数据库)
rpc接口:
7、根据条件查询多条短链访问记录
id 自增idpv 访问次数uv 访问人数ip 访问ipcity_code 城市编码province_code 省份编码
1、根据条件查询secret并返回相关信息
id 自增id short_url 短链接long_url 长链接short_url_long 整型短链接create_time 创建日期update_time 更新日期
scrm-core(spring + mybatis核心框架)
短链信息表
common-utils(使用scrm的common-util还是自己封装待定)
概要:1、增加短链api接口签名验证,保证接口安全性。 2、将短链项目服务化重构,方便后续扩展,如统计访问信息。3、增加一个简单的web页面,方便查询,编辑,删除。申请api-key等操作。
6、插入短链访问数据并返回自增id
cache-utils(redis集群缓存)
6、批量获取短链
不需要使用myCat
调用util,根据规则将所有请求参数串联起来并用 secret 生成签名 sign
4、插入短链数据并返回自增id
8、根据条件查询一条短链访问记录
7、短链统计(统计用户点击,基于访问ip,形成报表)
Y
收藏
收藏
0 条评论
下一页