Open post Go Library

Go 编程实践|从零到一:创建、测试并发布自己的 Go 库

为什么需要开发自己的 Go 库

在编程语言中,包(Package)和库(Library)是代码组织和复用的重要工具。在 Go 中,包是代码的基本组织单位,每个 Go 程序都由包构成。包的作用是帮助组织代码,提供封装和代码复用的机制。

Go 包可以包含函数、类型、变量和常量等,这些元素可以被其他包引用和使用。例如,Go 的标准库提供了大量的包,如 net/http 包提供了 HTTP 客户端和服务器实现,fmt 包提供了格式化、I/O 函数等。

而库是一种特殊的包,不包含 main 函数,不能被直接运行,但可以被其他程序引用。库通常包含一些常用的功能或算法,如字符串处理、数学计算、网络通信等。

开发自己的 Go 库的优点:

  1. 复用性:当在多个项目中需要使用相同的功能时,可以将这些功能封装在一个库中,然后在需要的地方引用他。这样可以避免重复编写相同的代码,提高编程效率。
  2. 可维护性:当需要修改某个功能时,只需修改对应的库,而不需要在多个地方进行修改,这样可以使代码更易于理解和维护。
  3. 可测试性:为每个库编写单元测试,确保他们的功能正确。修改代码时,可以运行这些测试来检查是否引入了新的错误。

"Go 编程实践|从零到一:创建、测试并发布自己的 Go 库"继续阅读

Open post API

开放实验室 · API 文档

工具类接口服务提供天气查询、IP与位置查询、短链接生成及代理转发功能。通过 GET 请求获取指定城市的天气以及请求者的 IP、位置和天气信息。POST 请求支持长链接转换为短链接和代理转发请求,解决跨域限制问题。所有接口均返回执行结果、信息和数据。

短链接生成原理

介绍了短链接的生成与访问流程。通过将长链接转换为 MD5 HASH 值,检查数据库是否存在对应记录,若无则存入数据库并返回自增 ID。ID 转换为 26 进制字符串作为短链接的 Key。访问短链接时,服务器解析 Key,重定向至长链接。提供了 Node.js 代码示例,展示了 SQL 结构及 10 进制到 26 进制的转换方法。

使用 Docker 部署 Node.js 服务

介绍了在 CentOS 系统上安装和配置 Docker 的步骤,包括 Docker 安装、创建 Dockerfile、构建镜像、运行容器及关闭容器的方法。通过编写 Node 项目脚本和 DockerBuild.sh 脚本,实现自动化构建与运行容器,开放宿主机端口并测试服务运行状态,适用于快速部署和管理项目环境。

Redis 查看所有 Key

介绍了使用 Redis 的基本命令,包括通过 redis-cli 进入交互界面,查看所有键 (keys *),获取指定键的值 (get {key}),删除指定键 (del {key}),以及设置键值对 (set {key} {value}) 的操作方法,便于管理数据。