짧 은 인터넷 주소 시스템 (1) 원리 분석

2062 단어 프로젝트 실전
머리말
짧 은 인터넷 주 소 는 이미 상투적인 화제 가 되 었 다. 우리 의 링크 는 항상 다양한 인 자 를 휴대 해 야 하거나 업무 가 증가 함 에 따라 점점 길 어 지기 때문이다.사용자 에 게 너무 긴 링크 체험 은 반드시 좋 지 않 고 짧 은 사이트 도 이에 따라 생 겨 날 것 이다.그 원 리 는 대체적으로 원래 의 링크 와 짧 은 링크 를 일일이 대응 시 켜 사용자 가 짧 은 링크 를 방문 한 후에 원래 의 링크 로 다시 방향 을 바 꾸 는 것 이다.짧 은 링크 는 주로 몇 가지 역할 이 있 습 니 다.
  • 원래 의 링크 길 이 를 단축 시 키 고 마 케 팅 홍보 에 편리 하 다
  • 데이터 통 계 를 통 해 방향 을 바 꾸 는 과정 에서 PV, UV 등 데이터 통 계 를 실시한다
  • .
  • 원래 링크 도 메 인 이름 차단
  • 짧 은 링크 생 성 알고리즘
    짧 은 사이트 주소 에 일반적으로 포 함 된 문 자 는 a-z,A-Z,0-9 이 고 모두 62 글자 이다.
    자동 증가 시퀀스 알고리즘
  • 10 진법 의 자체 증가 변수 x 를 설정 하고 짧 은 링크 를 생 성 할 때 62 진법 의 수치 로 전환 합 니 다. 이 수 치 는 짧 은 링크 로 하고 다음 에 짧 은 링크 를 생 성 하면 x+1.이 알고리즘 은 저 진 회전 고 진 을 사용 하여 문자 수가 적어 지 는 원 리 를 사용 했다.

  • 예 를 들 어 현재 10 진법 의 증가 변수 값 은 20190519 이 고 62 진법 으로 전환 한 후에 값 은 BNBU3 이다.
    해시 알고리즘
    MD5 메시지 요약 알고리즘 (영어: MD5 Message - Digest Algorithm) 은 정보 전송 이 완전 하 게 일치 하도록 광범 위 하 게 사용 되 는 암호 해시 함수 입 니 다.MD5 암호 화 된 자릿수 는 보통 두 가지 이 고 16 비트 와 32 비트 입 니 다. 여 기 는 32 비트 를 사용 합 니 다.
  • 먼저 긴 링크 를 md5 를 통 해 32 비트 문자열 로 암호 화하 고 4 단 으로 나 누 어 8 바이트
  • 로 나눈다.
  • 이 네 단락 을 순환 처리 하고 8 개의 바 이 트 를 가 져 와 그 를 16 진수 문자열 과 0x3ffffff f (30 비트 1) 와 조작, 즉 30 비트 가 넘 는 무시 처리
  • 로 본다.
  • 매번 이 30 비트 의 끝부분 6 비트 와 16 진법 3D 을 연산 하여 & 보다 작은 수치 (16 진법 3D 10 진법 3D 를 얻 고 문자표 [a - zA - Z0 - 9] 에서 대응 하 는 문 자 를 얻는다.이 61 자 리 를 오른쪽으로 5 자리 옮 기 는 작업 을 하고 세 번 째 단 계 를 다시 진행 하면 길이 가 6 인 문자열 을 얻 을 수 있 습 니 다.그 중에서 왜 30 이지 61 가 아 닙 니까?문자열 을 가 져 올 때 아래 표 시 는 62 부터 시작 하기 때 문 입 니 다.
  • 총 4 단의 길이 가 6 인 문자열 을 얻 을 수 있 으 며, 하 나 를 취하 면 된다
  • 장단 점
  • 자체 증가 시퀀스 알고리즘 의 장점 은 간단 하고 이해 하기 쉬 우 며 중복 되 지 않 는 다 는 것 이다.그러나 이 알고리즘 은 안전 문제 가 있어 데 이 터 를 얻 기 쉽다.오픈 소스 0 에서 사용 하 는 것 이 바로 이런 알고리즘 이다.
  • 해시 알고리즘 이 얻 은 짧 은 링크 길 이 는 고정 되 어 있 지만 중복 가능성 이 있 습 니 다.

  • 참고:https://hufangyun.com/2017/short-url/ https://blog.csdn.net/is_zhoufeng/article/details/26503725

    좋은 웹페이지 즐겨찾기