1将url生成短链码

public static long murmurhash32(String url){

long murmurhash= Hashing.murmur3_32().hashUnencodedChars(url).padToLong();

return murmurhash;

}

  1. 将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使用方法相关推荐

  1. 在 Oracle Enterprise Linux 和 iSCSI 上构建您自己的 Oracle RAC 11g 集群

    作者:Jeffrey Hunter 了解如何以低于 2,700 美元的费用在 Oracle Enterprise Linux 上安装并配置 Oracle RAC 11g 第 2 版开发集群. 本指南中 ...

  2. Java面试题大全2021版

    一.Java 基础 JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java Run ...

  3. 一致性哈希算法原理、避免数据热点方法及Java实现

    一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用的简 单哈 ...

  4. java murmurhash实现_一致性哈希算法与Java实现

    一致性哈希算法是分布式系统中常用的算法.比如,一个分布式的存储系统,要将数据存储到具体的节点上,如果采用普通的hash方法,将数据映射到具体的节点上,如key%N,key是数据的key,N是机器节点数 ...

  5. openresty中应用murmurHash

    介绍: MurmurHash 是一种非加密型哈希函数,适用于一般的哈希检索操作.由Austin Appleby在2008年发明,并出现了多个变种,都已经发布到了公有领域(public domain). ...

  6. 哈希算法——murmurhash一致性哈希算法

    Murmurhash: 是一种非加密型哈希函数,适用于一般的哈希检索操作.高运算性能,低碰撞率,由Austin Appleby创建于2008年,现已应用到Hadoop.libstdc++.nginx. ...

  7. 关于uthash库的终级使用方法。

    关于uthash的说明,可以参考网址 https://github.com/troydhanson/uthash 为了方便,我这里直接上uthash的库,大家可以直接使用 /* Copyright ( ...

  8. AI之AutoML:Ludwig(无需编写代码/易于使用的界面和可视化自动机器学习工具)的简介、安装、使用方法之详细攻略

    AI之AutoML:Ludwig(无需编写代码/易于使用的界面和可视化自动机器学习工具)的简介.安装.使用方法之详细攻略 目录 Ludwig的简介 Ludwig(无需编写代码/易于使用的界面和可视化自 ...

  9. 【算法】哈希算法——murmurhash一致性哈希算法

    Murmurhash: 是一种非加密型哈希函数,适用于一般的哈希检索操作.高运算性能,低碰撞率,由Austin Appleby创建于2008年,现已应用到Hadoop.libstdc++.nginx. ...

最新文章

  1. 比特币钱包(1) 钱包协议总览
  2. boost::container实现显式实例化平面集测试程序
  3. python中文件路径如何读取提示nosuch file_Python 解决相对路径问题:No such file or directory...
  4. 用户体验岗如何说服其他部门_为什么我们应该说服用户更新他们的浏览器-这是双赢的。...
  5. 【CodeForces - 745B】Hongcow Solves A Puzzle (思维,乱搞,字符串)
  6. 学会使用 GDB 调试 Go 代码
  7. openGauss 上海 Meetup:把企业级数据库能力带给用户
  8. ibm db2获取目标时间与当前时间的差值_【学术论文】高帧频视觉实时目标检测系统...
  9. cr3格式是什么意思_尼康DX镜头是什么意思
  10. Flutter基础—绘画效果之装饰容器
  11. 如何使用JavaScript阻止关闭窗口
  12. java求指数与对数
  13. 微服务架构实战(二):使用API Gateway
  14. php foreach 传值还是传引用
  15. 《跟阿铭学Linux》第12章 shell脚本中的变量:课后习题与答案
  16. View Agent Direct-Connection注册表
  17. Qt QComboBox 下拉框样式修改
  18. 安卓打造自己的日历控件
  19. 似然比和p值不同的原因_二代P值:传统P值的升级 | 社论前沿
  20. 支持向量机(股票)——Python量化

热门文章

  1. Annex-B和AVCC
  2. 权限系统的基本概念和架构
  3. Learning to Rank基于pairwise的算法(一)——Ranking SVM、MHR、IRSVM
  4. 扶贫工作-结对帮扶公示牌 自动化填写
  5. (16)业务数据导入HDFS
  6. Java SE、Java ME、Java EE是什么以及关系
  7. 前端面试不用怕!一分钟带你了解es6的解构赋值
  8. 微软工业计算机主机怎么样,微软Surface Pro 4到底值不值得买?
  9. python以图搜图api_网络图片搜索-以图搜图【最新版】_自动识别接口_图像识别_数据API-云市场-阿里云...
  10. 公式法求递归算法的时间复杂度