zoukankan      html  css  js  c++  java
  • 10:哈希算法

    1、防止数据库中的用户信息被脱库

    2、将任意长度的二进制值串映射为固定长度的二进制值串,这个映射的规则就是哈希算法,而通过原始数据映射之后得到的二进制值串就是哈希值。

    3、应用

    安全加密==》MD5、SHA

    唯一标识==》如果要在海量的图库中,搜索一张图是否存在,我们不能单纯地用图片的元信息(比如图片名称)来比对,因为有可能存在名称相同但图片内容不同,或者名称不同图片内容相同的情况。可以给每一个图片取一个唯一标识,或者说信息摘要。比如,我们可以从图片的二进制码串开头取 100 个字节,从中间取 100 个字节,从最后再取 100 个字节,然后将这 300 个字节放到一块,通过哈希算法(比如 MD5),得到一个哈希字符串,用它作为图片的唯一标识。通过这个唯一标识来判定图片是否在图库中,这样就可以减少很多工作量。可以把每个图片的唯一标识,和相应的图片文件在图库中的路径信息,都存储在散列表中

    数据校验==》BT下载  基于P2P协议

    散列函数

    负载均衡==》轮询、随机、加权轮询  如何实现会话粘滞的负载均衡算法?(需要在同一个客户端上,在一次会话中的所有请求都路由到同一个服务器上)  可以通过哈希算法,对客户端 IP 地址或者会话 ID 计算哈希值,将取得的哈希值与服务器列表的大小进行取模运算,最终得到的值就是应该被路由到的服务器编号

    数据分片==》针对海量数据的处理问题,都可以采用多机分布式处理。借助这种分片的思路,可以突破单机内存、CPU 等资源的限制。

    分布式存储==》为了提高数据的读取、写入能力,一般都采用分布式的方式来存储数据,比如分布式缓存

  • 相关阅读:
    git线上操作
    IDEA快捷方式
    Java 四种线程池
    java 获取当前天之后或之前7天日期
    如何理解AWS 网络,如何创建一个多层安全网络架构
    申请 Let's Encrypt 通配符 HTTPS 证书
    GCE 部署 ELK 7.1可视化分析 nginx
    使用 bash 脚本把 AWS EC2 数据备份到 S3
    使用 bash 脚本把 GCE 的数据备份到 GCS
    nginx 配置 https 并强制跳转(lnmp一键安装包)
  • 原文地址:https://www.cnblogs.com/liushoudong/p/13509478.html
Copyright © 2011-2022 走看看