为什么你需要一个短链接服务
在游戏发行领域,推广链接往往承载了大量的追踪参数——渠道标识、广告计划ID、创意素材编号、回调地址等。一条完整的推广链接动辄超过200个字符:
这样的长链接带来的问题是显而易见的:
单条短信仅70字,一条链接就占去大半空间,推广内容被严重压缩
微信、QQ等平台对长链接展示不友好,用户看到乱码般的URL缺乏点击意愿
链接越长二维码越密集,低端设备扫码识别率下降
无法直观统计每条推广链接的真实点击效果
市面上的短链接服务主要分为两类:
ShortLink 正是为解决上述问题而生。 它脱胎于真实的游戏发行业务场景,经过多个项目验证,现在作为开源项目提供给整个行业使用。无论你是游戏公司、电商平台还是内容创作者,只要你有推广链接管理的需求,ShortLink 都能帮助你。
为高并发场景而生的企业级短链接方案
ShortLink 采用 Redis 缓存 + MySQL 持久化 的双层存储架构。每次 302 跳转请求优先查询 Redis,命中率超过 99%,平均响应时间在 1-3 毫秒。即使缓存未命中,MySQL 查询走唯一索引,回源耗时也控制在 5 毫秒以内,同时自动回写缓存。
短码生成采用 雪花算法(Snowflake)+ Base62 编码 方案。相比 MD5 截取方案,完全无哈希冲突风险;相比自增 ID 方案,不暴露业务数据量,且天然支持分布式多节点部署。
每个节点通过配置不同的 machine-id(0-1023),即可独立生成唯一短码,无需分布式锁或中心化 ID 服务,部署扩展极为简单。
推广不只是生成链接,更重要的是效果追踪。ShortLink 内置完整的点击统计:
识别真实用户分布
区分设备类型和操作系统
追踪流量来源
分析访问时段规律
实时展示每条短链接效果
所有统计数据通过异步通道写入,采用 buffered channel(容量 10,000)+ 定时批量插入,单条跳转请求不产生任何同步写操作。
提供完整的 Web 管理后台,基于 Vue3 + Element Plus 构建:
与第三方 SaaS 不同,ShortLink 支持完全私有化部署。你的推广数据、用户访问行为全部存储在自己的服务器上,不经过任何第三方,完全符合数据安全合规要求。对于游戏公司而言,推广数据就是核心商业机密,私有化是刚需。
经典分层架构,Redis + MySQL 双层存储
ShortLink 采用经典的分层架构,Go + Gin 提供 API 服务,Redis 作为缓存层,MySQL 作为持久层:
GET /aB3xKm 请求sl:aB3xKm)点击统计是短链接服务的核心需求,但绝不能阻塞跳转请求。ShortLink 的统计设计:
ShortLink 的短码生成由两部分组成:
现代、精简、生产就绪的技术选型
一分钟启动,三分钟接入
克隆项目
修改配置
填入 MySQL 和 Redis 连接信息
启动服务
服务启动后自动建表
响应示例:
如果你使用 gin-vue-admin 作为管理后台框架,ShortLink 提供了开箱即用的模块集成方案。只需将 background 目录下的模块文件复制到你的项目中,重启服务即可自动完成: