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. python二维列表排序
  2. java retentionpolicy_Java注解之如何利用RetentionPolicy.SOURCE生存周期
  3. 生成对抗网络学习笔记4----GAN(Generative Adversarial Nets)的实现
  4. sql server 连接工具_SQL on file 工具
  5. PHP 5.3.1 安装包 VC9 VC6 区别是什么
  6. A guide to convolution arithmetic for deep learning中译版
  7. Python 5 运算符
  8. MS UC 2013-2-Deploy Microsoft Exchange Server 2013-1-Prerequisites
  9. torchvision中Transform的normalize参数含义, 自己计算mean和std,可视化后的情况,其他必要的数据增强方式
  10. 看《Java就业培训教程》--孙孝祥著有读书笔记
  11. iOS动画和特效(二)UIKit力学行为
  12. Linux系统入门学习
  13. 【解决】maven install出现fatal error compiling
  14. dolphinscheduler 3.0.1 资源中心
  15. 轻松恢复U盘隐藏文件
  16. 单模光纤最大传输距离为多少_单模光纤的最长传输距离是多少?单模光纤和多模光纤的区别在于什么?...
  17. QT遇到“常量中有换行符”的问题
  18. 深入理解时区概念:GMT,UTC,UTS和AOE
  19. 理解promise、promise.all、promise.race
  20. item_get - VVIC根据ID取商品详情 API

热门文章

  1. Java 反射 理解
  2. android 陀螺仪源码,陀螺仪源码 android
  3. Linux下socket编程:TCP连接
  4. java中使用length获取二维数组的长度
  5. 全网: Mac安装ansible
  6. pox.xml有些包下载不了的原因
  7. Cookie同域,跨域单点登录
  8. Ins照片墙下载工具:4K Stogram for Mac
  9. (五)JMeter 断言
  10. JAVA线上问题排查及常用命令