在日常办公和开发工作中,用户经常需要在不同设备间复制粘贴文本内容。传统剪贴板功能局限于单设备,且无法满足用户长期保存的需求。
另一方面通过聊天工具传递,在新设备、新场景中不是那么友好(需要下载安装),第三方在线文档对数据安全又有隐忧,尤其涉及账号密码信息时。
该项目旨在解决以上痛点,提供一个便捷、安全的Web界面来保存、查询和管理文本内容,支持单文件的私有化部署,无其他安装依赖。
点击空白处退出提示
在日常办公和开发工作中,用户经常需要在不同设备间复制粘贴文本内容。传统剪贴板功能局限于单设备,且无法满足用户长期保存的需求。
另一方面通过聊天工具传递,在新设备、新场景中不是那么友好(需要下载安装),第三方在线文档对数据安全又有隐忧,尤其涉及账号密码信息时。
该项目旨在解决以上痛点,提供一个便捷、安全的Web界面来保存、查询和管理文本内容,支持单文件的私有化部署,无其他安装依赖。
1. 内容管理功能
- 支持剪贴板内容的添加、更新、查询和删除
- 支持粘贴内容自动保存,防止信息丢失
- 提供内容历史记录查询,便于追溯和恢复
- 支持清空列表和获取最新内容等快捷操作
2. 用户认证功能
- 提供管理员登录界面和认证流程
- 支持记住登录状态选项,提升用户体验
- 实现基于Cookie的会话管理
技术栈
- 编程语言 :Go语言,利用其高并发性能和简洁的语法特性
- Web框架 :Gin框架,提供高性能的HTTP路由和中间件支持
- 配置管理 :go-ini库,实现灵活的配置文件处理
- 数据存储 :基于本地文件的自定义数据表实现,B+树优化数据检索性能,AES加密保证数据安全
架构亮点
1. 多进程设计 :采用主进程、守护进程和工作进程的三层架构,提高系统稳定性和可靠性
- 主进程负责启动守护进程后退出,避免终端依赖
- 守护进程监控工作进程状态,自动重启异常退出的工作进程
- 工作进程负责实际业务逻辑处理,支持优雅退出
2. 双索引机制 :同时实现哈希表和B+树索引,满足不同查询场景需求
- 哈希表索引提供O(1)的精确查询性能
- B+树索引支持高效的范围查询和排序操作
3. 数据安全增强
- 多层加密机制 :结合RSA和AES加密算法,保护数据传输和存储安全
- 访问控制 :通过严格的权限控制,确保只有授权用户能够访问和修改数据
- 实现令牌桶限流功能,防止恶意的登录尝试
4. 私有化部署支持 :架构设计充分考虑私有化部署需求
- 最小化外部依赖,所有资源自嵌入,编译后仅一个可执行程序即可部署,简化部署流程
- 提供完整的配置选项,适应不同部署环境
- 数据完全存储在本地,确保数据主权
评论