littlebot
Published on 2025-04-13 / 0 Visits
0

【源码】基于Go语言的短网址生成服务

项目简介

本项目是一个短网址生成服务,提供短网址生成和短网址跳转功能。通过将长网址转换为对应的短网址,以 id 对应一个网址的形式实现。同时,使用 Redis 缓存减少空间浪费。

项目的主要特性和功能

  1. 短网址生成:提供 API 接口,可将长网址转换为短网址。
  2. 分布式 ID 生成:参考分布式 id 生成思想,id 由时间序列、随机数和机器标识组成。
  3. 缓存机制:使用两个缓存分别处理短网址转长网址和长网址转短网址,减少空间浪费。
  4. 短网址跳转:可以通过生成的短网址跳转到对应的长网址。

安装使用步骤

准备

  1. 搭建好所需的 MySQL 数据库环境和 Redis 环境。
  2. conf 文件夹下添加 conf.ini 配置文件,格式如下: ini [mysql] user=[user] passwd=[passwd] host=[host] port=[port] database=surl [redis] host=[host] port=[port]

运行

使用 Docker 部署,监听本地 18080 端口: bash docker-compose up -d

使用 API

使用以下 API 接口将长网址转换为短网址: ``` url: http://u.liuin.cn method: POST

param: url: string required # 需要转换的长网址

response: { "code": integer, # 状态码,0 为成功,其他为失败 "message": string, # 解释 "id_str": string, # 对应的短 URL } ```

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】