geek_go_tasks

module
v0.0.0-...-5023f9f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2022 License: MIT

README

go进阶训练营作业

第二周作业

/week_2_task

问: 我们在数据库操作的时候,比如 dao 层中当遇到一个 sql.ErrNoRows 的时候,是否应该 Wrap 这个 error,抛给上层。为什么,应该怎么做请写出代码?

答: 应该Wrap这个error。记录具体sql操作导致sql.ErrNoRows的日志,方便归因。可以在处理错误的地方加入更详细的堆栈信息,方便定位以及解决问题。

第三周作业

/week_3_task

问: 基于 errgroup 实现一个 http server 的启动和关闭 ,以及 linux signal 信号的注册和处理,要保证能够一个退出,全部注销退出。

答: 首先实现 HTTP server 的启动和关闭, 监听 linux 的 signal信号,支持 kill -9 或 Ctrl+C 的中断操作操作, errgroup 实现多个 goroutine 的级联退出。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL