[TOC] 从哪学 官方教程,有中文,提供给交互式练习,注意网络环境 https://kubernetes.io/zh/docs/tutorials/ 概念 Pod:一个抽象的应用实例,含义上约等于 docker 里 container 的一层 wrapper,但是因为有
3 分钟阅读时间
项目管理
大概从小开始就没有时间观念,毕竟穷人的时间不值钱。上学时经常通宵敲代码,除了兴趣外,也有时间管不好的原因:大不了拖到晚上搞。最后就一直成了习
之前遇到了很多 timeout,但是仔细看错误提示好像不完全一样,于是就做了个简单的试验: Client 上看到的错误 找不到服务器(no such host)的几种情
7 分钟阅读时间
项目管理
先说下标题,所谓独立推项目跟之前的推项目(最多只能叫跟项目)区别在哪里。 跟项目 推项目 项目来源 主版本的大项目,分了一小块给我来跟 由我向上面发起
Go 让人吐槽的点之一就是动态特性低,比如不支持泛型、反射鸡肋等等。所以长期以来一直觉得搞一些动态功能是一件很酷的事情。 这里主要做了两件事: 运行
先说说背景,为什么MacBook还在吃灰,又开始折腾Linux Desktop了 家里组了台PC,只打游戏太浪费,且实在搞不定windows写代
3 分钟阅读时间
最佳实践
今年接手了一个新项目,不算vendor包,大概6W行代码,接的时候信心满满准备大干一场。结果半年内线上出了100多个bug。 粗糙统计下,80
2 分钟阅读时间
最佳实践
最开始的项目目录 $ tree . ├── ./api/ ├── ./service/ ├── ./dao/ ├── ./model/ ├── main.go func main(){ flag.Parse() artemis := NewArtemis(flag.String(`config`)) // artemis 是我们的框架,类似beego log.init() service.init() dao.init() worker.init() api.Route(artemis.Router) artemis.Run() } 写个测试吧 packege dao func TestGetNote(t *testing.T){
3 分钟阅读时间
最佳实践
原以为浮点数是计算机编程的基础知识,后来发现个奇怪的现象:很多人都说浮点很坑,千万不要用,至于为什么却说不出个所以然。更有甚者,以专业民科的
3 分钟阅读时间
最佳实践
原文地址:https://romatic.net/post/avoid_npe_in_go/ 空指针异常 NPE 在所有编程语言里都是个很麻烦的事情,
缘起 写代码里有个绕不开的话题就是如何写构造函数 Java 里有 JavaBean 作为标准,空构造参数 + 自定义的 setter C++ 里靠重载实现任意场景的构造 Python 里可以可以支持传你需要的
起因是因为犯懒,随手在一个函数体内定义一个类型 func foo() { type Article = map[string]interface{} } 看起来好像也很正常,突然有一天在 gowatch 的控制台里看到了 runtime: goroutine stack exceeds 1000000000-byte limit fatal error: stack overflow runtime stack: runtime.throw(0x1a556a1, 0xe)
2 分钟阅读时间
最佳实践
项目逐渐都切到了 go mod,用的时候遇到了各种奇奇怪怪的坑,记录一下。 流程实践 语义化版本 Go mod 在设计时没有支持诸如 >2.0, ~3.4, ^4.0 这样场景的语法。而是以语
2 分钟阅读时间
简书,
随笔
迁移自简书,格式可能未经校对。 事件经过: 收到反馈测试环境某个服务打开 swagger ,进程会卡死 根据经验,初步判定是有死循环。 在本地启动该服务,打开 swagger ,发
2 分钟阅读时间
简书,
随笔
[TOC] 背景 最近想写一些简单的非技术文章,希望能给其他行业的说明白计算机所能和所不能,方便大家用好计算机这个工具。 为什么数据都有了,但是不让我查询
2 分钟阅读时间
简书,
随笔
以前在引入第三包的时候,为了兼容性和定制扩展的考虑,一般会浅浅地封装一层。自从入了 Go 坑,发现连标准库也得小心再小心了。 decode(map) 之后 int 会变成 float64 思考一
迁移自简书,格式可能未经校对。 越来越多的应用里需要依赖大量的对外请求(内部服务或第三方平台)。但是很多的 client 只有基本的请求,这在复杂的场景里根
迁移自简书,格式可能未经校对。 场景还原 先说个场景: APP上某个操作出现了 系统异常。错误码:abc012,我们收到错误码之后,可以一次性查出这