网套加工机器设备,关键字优化策略,wordpress 本地 域名,对京东网站建设的总结输入可能是
一个冗长的域名#xff0c;过期时间和自定义的别名输出
自定义别名或者随机生成的短域名#xff0c;在过期时间到来之前访问都可以被重定向到冗长的域名上约束条件
1.过期后就失效
2.短域名是唯一的
3.自定义短域名长度在7个字符#xff08;不包含域名长度过期时间和自定义的别名输出
自定义别名或者随机生成的短域名在过期时间到来之前访问都可以被重定向到冗长的域名上约束条件
1.过期后就失效
2.短域名是唯一的
3.自定义短域名长度在7个字符不包含域名长度由[0-9,a-z,A-Z]等字符组成
4,延迟
5.存储如何增加过期时间处理 1.延迟惰性删除2,定时删除维持大量定时器3.轮训删除对延迟要求高并且存储空间占用少延迟删除在db建的表里加入过期时间的时间戳列写入时计算读取比较过期就删除如何保证短域名的唯一性
写时消重
如何设置唯一id生成算法
1.uuid -》和 murmurhash 哈希以后可能不一样但是截取的时候不能保证截取的不相同
2.设置自增id利用数据库自增主键单机吞吐量扛不住可以增加负载均衡侧落分片副本等等
延迟优化可以在
存储层
1.存储介质没必要用关系型可以用持久形kv,比如rocksdb
2,构建索引长短域名都要做索引可以在redis做两份存储,互为kv类似倒排索引缓存层
1.读多写少使用缓存可以大大降低延迟减少网络请求延迟2.对于判断长域名是否存储过以及短域名是否分配过可以用布隆过滤器3.如果对延迟非常苛刻可以使用本地缓存维护一个lru业务层
1.通过尾号分片将id生成器分布式化基于预处理的思想给不同的维护不同区间保证自增但是不保证连续性
2.分布式id生成算法可靠性
异地容灾一主多从安全性
1.如果自增id可能会人逐个遍历取走
2.使用murmurhash可能有哈希冲突重定向
301永久重定向会缓存无法统计访问次数但是会减少服务端压力选用302 因为要统计长域名的访问量