首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Go语言相关
vivo高启强
创建于2022-04-01
订阅专栏
Go语言相关
等 66 人订阅
共25篇文章
创建于2022-04-01
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Go语言 基于gin框架从0开始构建一个bbs server(八)- 部署
docker 部署一个简单的 web app 新建一个 简单的web工程 然后新建我们的Dockerfile 看下目录结构: 然后输入命令: docker build . -t simple_go_w
Go语言 基于gin框架从0开始构建一个bbs server(七)- 接口文档,限流,单元测试,压测
源码地址 今天这篇文章涉及到的编码内容很少,主要是介绍一个项目上线之前 需要做哪些工作,新手可以看看这篇文章以后心里有个底,有需要的话 这文章里面每一个方向 都值得花时间 深入搞一下 生成接口文档 h
Go语言 基于gin框架从0开始构建一个bbs server(六)- redis点赞功能,最新最热列表
源码地址 redis 数据库 设计 假设业务逻辑 是 点赞 给点赞数+1 点踩 给点赞数-1 使用zset 有序集合 来设计 数据库 就可以了 zset A: valus 是帖子id score 帖子
Go语言 基于gin框架从0开始构建一个bbs server(五)- 帖子详情,帖子列表分页,id失真
源码 帖子详情 这个比较简单了,之前做过多次。 注册路由: controller: logic dao: 看下效果 优化帖子详情接口 上述的帖子接口其实还有些问题 主要是 返回的数据里面只有 作者id
Go语言 基于gin框架从0开始构建一个bbs server(四)- 板块与发帖
github源码地址 帖子板块的设计 通常一个bbs 会分很多板块, 我们这里可以先设计一下 板块的表结构: 改写路由 通常我们的api 上线之后 可能会做一些升级 比如v1 v2 之类的,所以我们可
Go语言 基于gin框架从0开始构建一个bbs server(三)-中间件,makefile与air
jwt 中间件 前面介绍了jwt的基本使用,但是那种写法比较不方便 你要是每个路由 都要增加这个特性,要复制粘贴很多代码,这里我们可以使用中间件来优化 这样可以直接用 ,会方便不少 也可以增加一个方法
Go语言 基于gin框架从0开始构建一个bbs server(二)-用户登录
完善登录流程 上一篇文章 我们已经完成了注册的流程,现在只要 照着之前的方法 完善我们的登录机制 即可 定义登录的参数 定义 登录的controller 定义 登录的logic 最后 看下登录的dao
Go语言 基于gin框架从0开始构建一个bbs server(一)-用户注册
建立user 表 建表语句如下: 这里要说下为啥 不能用id 这个自增字段 来代表 用户id 主要是因为 如果你用自增字段来代表用户id 那么竞争对手 可以通过你这个id的值 来判断 你的用户规模 另
Go语言 基于gin定义一个简单的web server 开发框架(三)
之前的问题 之前的代码问题就在于 不支持命令行参数,这会导致 程序的运行比较死板。比如常见的是 我们的可执行文件和 对应的配置文件不在一个目录下的时候 就会出现读不到配置文件的问题 又或者是上述的场景
Go语言 基于gin定义一个简单的web server 开发框架(二)
路由 这个比较简单,就是注册路由的作用了 启动流程 这个之前也介绍过,就是一个稍微复杂一点的优雅重启方案, 优化代码-db 不要对外暴露 之前的代码里 把db 对外暴露 其实不合适,最好的方案还是 提
Go语言 基于gin定义一个简单的web server 开发框架(一)
基本流程 一个简单的web server开发框架,不管是哪种语言 其实都是遵循着下面的思路: 初始化配置文件 初始化日志库 连接mysql数据库 连接redis数据库 注册路由 启动server 我们
Go语言 viper与web服务的关机,重启
基本使用 主要就是来读写配置文件的,和方便的库,应该说是目前go语言中 最成熟的一个配置方案了 https://github.com/spf13/viper 唯一要注意的是 vipe的 设置是有优先级
Go语言 zap日志系统与gin继承
基本演示 定制Logger 这里的ts 代表时间戳,但是这个时间戳可读性是在是太差,当然也可以修改这个配置的 我们甚至可以在日志中打印 是哪个方法 调用了日志所在的方法 只要修改如下的方法即可: 日志
Go语言 go-redis与watch
对redis 命令很熟悉的 可以直接跳过,因为这个库的api 命名基本上都和命令一一对应上了,很容易记 redis 数据库连接 https://github.com/go-redis/redis 初学
Go语言 sqlx 简单介绍
sql操作的系统函数 如果你觉得用起来比较啰嗦的话 你还可以选择开源库,这里简单介绍下sqlx这个开源库 sqlx 的连接数据库 sqlx的查询 可以看出来,这查询就比之前的原生的查询要简单很多,使用
Go 语言 MySql 基本操作
基本使用 首先是 导入 驱动包 go get -u github.com/go-sql-driver/mysql 然后连接本地的mysql 但是大家要注意了 上述的代码 并不会真正的链接一个数据库 o
Go 语言 常用标准库 介绍
httpclient 之前介绍过 http server的写法。这次来看看 client怎么写 我们请求一个百度首页 打印下他的返回 这里可能有人会奇怪 为啥要string(s) 来看下dump 这个
Go语言 并发-select 与 锁
select 基本使用 看下执行结果,实际上 这个select 关键字的作用就是 先从哪个chan 拿到值 就走哪个case 仅此而已。 n个chan 里面 选择一个 最先到达的。 atomic 大部
Go语言 并发-Channel
协程的基本概念 注意 协程的概念 每个语言都有所不同,这里只说下go的概念 简单来说 go的协程 具有下面几个特点 轻量级,比线程要小很多。 非抢占式 啥叫非抢占式? 线程是抢占的,因为线程的调度 会
Go语言 测试与文档
go中的测试基础 相对于其他语言,go语言写一些测试代码是非常容易的,不需要引入其他任何框架 就可以很方便的完成一些单元测试 比如说 我们写一个简单的add 函数 我们想测试一下这个函数 稍微注意一下
下一页