murmurHash使用方法
1将url生成短链码
public static long murmurhash32(String url){
long murmurhash= Hashing.murmur3_32().hashUnencodedChars(url).padToLong();
return murmurhash;
}
将url生成短链后转成64
@Component
public class ShortLinkComponent {
private static final String CHARS = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
public String createShortlinkCode(String param){
long murmurhash32 = CommonUtil.murmurhash32(param);
String code = endcodeToBase62(murmurhash32);
//转成62进制
return code;
}
private String endcodeToBase62(long num){
//StringBuffer是线程安全的
StringBuffer sb=new StringBuffer();
do {
int i= (int) num%62;
sb.append(i);
num=num/62;
}while (num>0);
String s = sb.reverse().toString();
return s;
}
}
murmurHash使用方法相关推荐
- 在 Oracle Enterprise Linux 和 iSCSI 上构建您自己的 Oracle RAC 11g 集群
作者:Jeffrey Hunter 了解如何以低于 2,700 美元的费用在 Oracle Enterprise Linux 上安装并配置 Oracle RAC 11g 第 2 版开发集群. 本指南中 ...
- Java面试题大全2021版
一.Java 基础 JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java Run ...
- 一致性哈希算法原理、避免数据热点方法及Java实现
一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用的简 单哈 ...
- java murmurhash实现_一致性哈希算法与Java实现
一致性哈希算法是分布式系统中常用的算法.比如,一个分布式的存储系统,要将数据存储到具体的节点上,如果采用普通的hash方法,将数据映射到具体的节点上,如key%N,key是数据的key,N是机器节点数 ...
- openresty中应用murmurHash
介绍: MurmurHash 是一种非加密型哈希函数,适用于一般的哈希检索操作.由Austin Appleby在2008年发明,并出现了多个变种,都已经发布到了公有领域(public domain). ...
- 哈希算法——murmurhash一致性哈希算法
Murmurhash: 是一种非加密型哈希函数,适用于一般的哈希检索操作.高运算性能,低碰撞率,由Austin Appleby创建于2008年,现已应用到Hadoop.libstdc++.nginx. ...
- 关于uthash库的终级使用方法。
关于uthash的说明,可以参考网址 https://github.com/troydhanson/uthash 为了方便,我这里直接上uthash的库,大家可以直接使用 /* Copyright ( ...
- AI之AutoML:Ludwig(无需编写代码/易于使用的界面和可视化自动机器学习工具)的简介、安装、使用方法之详细攻略
AI之AutoML:Ludwig(无需编写代码/易于使用的界面和可视化自动机器学习工具)的简介.安装.使用方法之详细攻略 目录 Ludwig的简介 Ludwig(无需编写代码/易于使用的界面和可视化自 ...
- 【算法】哈希算法——murmurhash一致性哈希算法
Murmurhash: 是一种非加密型哈希函数,适用于一般的哈希检索操作.高运算性能,低碰撞率,由Austin Appleby创建于2008年,现已应用到Hadoop.libstdc++.nginx. ...
最新文章
- python二维列表排序
- java retentionpolicy_Java注解之如何利用RetentionPolicy.SOURCE生存周期
- 生成对抗网络学习笔记4----GAN(Generative Adversarial Nets)的实现
- sql server 连接工具_SQL on file 工具
- PHP 5.3.1 安装包 VC9 VC6 区别是什么
- A guide to convolution arithmetic for deep learning中译版
- Python 5 运算符
- MS UC 2013-2-Deploy Microsoft Exchange Server 2013-1-Prerequisites
- torchvision中Transform的normalize参数含义, 自己计算mean和std,可视化后的情况,其他必要的数据增强方式
- 看《Java就业培训教程》--孙孝祥著有读书笔记
- iOS动画和特效(二)UIKit力学行为
- Linux系统入门学习
- 【解决】maven install出现fatal error compiling
- dolphinscheduler 3.0.1 资源中心
- 轻松恢复U盘隐藏文件
- 单模光纤最大传输距离为多少_单模光纤的最长传输距离是多少?单模光纤和多模光纤的区别在于什么?...
- QT遇到“常量中有换行符”的问题
- 深入理解时区概念:GMT,UTC,UTS和AOE
- 理解promise、promise.all、promise.race
- item_get - VVIC根据ID取商品详情 API