首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
golang
wffeige
创建于2021-07-21
订阅专栏
golang
等 18 人订阅
共21篇文章
创建于2021-07-21
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
GO-Garbage Collection gc
现代高级编程语言管理内存的方式分为两种:自动和手动,像 C、C++ 等编程语言使用手动管理内存的方式,工程师编写代码过程中需要主动申请或者释放内存;而 PHP、Java 和 Go 等语言使用自动的内存管理系统,有内存分配器和垃圾收集器来代为分配和回收内存,其中垃圾收集器就是我们…
Go进阶- Runtime
Goroutine 是一个与其他 goroutines 并行运行在同一地址空间的 Go 函数或方法。 一个运行的程序由一个或更多个 goroutine 组成。 它与线程、协程、进程等不同。 Goroutines 在同一个用户地址空间里并行独立执行 functions,chann…
Golang进阶11-DNS & CDN & 多活架构
DNS(Domain Name System,域名系统),DNS 服务用于在网络请求时,将域名转为 IP 地址。能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的 IP 数串。 传统的基于 UDP 协议的公共 DNS 服务极易发生 DNS 劫持,从而造成安全问题。 …
Golang进阶10-日志&指标&链路追踪
https://github.com/golang/glog 是google 提供的一个不维护的日志库,glog 有其他语言的一些版本,对我当时使用 log 库有很大的影响。它包含如下日志级别: 没人看警告,因为从定义上讲,没有什么出错。也许将来会出问题,但这听起来像是别人的问…
Golang进阶9-Go网络编程
Go 语言在采用 I/O 多路复用 模型处理 I/O 操作,但是他没有选择最常见的系统调用 select。虽然 select 也可以提供 I/O 多路复用的能力,但是使用它有比较多的限制: I/O多路复用:进程阻塞于 select,等待多个 IO 中的任一个变为可读,selec…
Golang进阶8-分布式缓存 & 分布式事务
memcache 提供简单的 kv cache 存储,value 大小不超过1mb。 使用 memcache 作为大文本或者简单的 kv结构使用。 memcache 使用了slab 方式做内存管理,存在一定的浪费,如果大量接近的 item,建议调整 memcache 参数来优化…
Golang进阶6-评论系统架构设计
不要做需求的翻译机,先理解业务背后的本质,事情的初衷。 复制是没有灵魂的 理解背后的产品体系 搞清楚系统背后的背景,才能做出最佳的设计和抽象。 架构设计最重要的就是理解整个产品体系在系统中的定位。 我们往小里做就是视频评论系统,往大里做就是评论平台,可以接入各种业务形态。 发布…
Golang进阶5- Go 架构实践-微服务(微服务可用性设计)
隔离,本质上是对系统或资源进行分割,从而实现当系统发生故障时能限定传播范围和影响范围,即发生故障后只有出问题的服务不可用,保证其他服务仍然可用。 大到架构设计中的图片、静态资源等缓存加速。 本质上都体现的一样的思路,即加速/缓存访问变换频次小的。比如 CDN 场景中,将静态资源…
Golang进阶4-Go 工程化实践和配置中心
你将需要更多的结构,包括需要一个 toolkit 来方便生成项目的模板,尽可能大家统一的工程目录布局。 (例如,/cmd/myapp)。 不要在这个目录中放置太多代码。 如果你认为代码可以导入并在其 他项目中使用,那么它应该位于 /pkg 目录中。 如果代码不是可重用 的,或者…
Golang进阶3-Go语言实践-concurrency
操作系统会为程序创建一个进程。作为一个应用程序,它像一个为所有资源而运行的容器。 这些资源包括内存地址空间、文件句柄、设备和线程。 线程是操作系统调度的一种执行路径,用于在处理器执行我们在函数中编写的代码。一个进程从一个线程开始,即主线程,当该线程终止时,进程终止。这是因为主线…
Golang进阶2-Go语言实践-error
Go error 就是普通的一个接口,普通的值。 我们经常使用 errors.New() 来返回一个 error 对象。 基础库中大量自定义的 error。 errors.New() 返回的是 内部 errorString 对象的指针。 单返回值,一般通过传递指针作为入参,返回…
Golang进阶1-Go架构实践-微服务(微服务概览与治理)
尽管也是模块化逻辑,但是最终它还是会打包并部署为单体式应用。 其中最主要问题就是这个应用太复杂,以至于任何单个开发者都不可能搞懂它。 应用无法扩展,可靠性很低,最终,敏捷性开发和部署变的无法完成。 SOA面向服务的架构模式,它和微服务又是什么关系?可以把微服务想成是 SOA 的…
每天5分钟-玩转golang 第5节 结构体
定义结构体是由一系列属性组成的符合数据类型每个属性都具有名称、类型、值,结构体将属性组合在一起自定义类型
每天5分钟-玩转golang 第4节 包
1. 声明两个包,路径分别为 gpkgname/pkg01 和 gpkgname/pkg02 2. 创建gv/src/gpkgmain/main.go 调用gpkgname/pkg01和gpkgname/pkg02 7. 编译发布库文件 命令:go install ./... …
go分享-毛剑
尽量找比自己能力好的人 不要挑事做 只做技术挑战的事情 不解决实际问题 如何在技术趋势不断变化的过程中 把握机会? 底层基础知识打牢固 再去事 如何从技术高手成长为全面性的人才? 关注每个人的成长路线
每天5分钟-玩转golang,第3节 函数
1. 定义和调用
golang学习资料推荐
技术总监毛剑精选Go预习资料
每天5分钟-玩转golang,第2节 数据类型
1. 数组(array) 3. 映射 map
每天5分钟-玩转golang,第1节 基础
1. 基本操作 2. go命名规则 3. go的标识符 4. go关键字 5. 注释 6. print 8. 指针 9. 流控语句 10. for 循环
go攻城狮面试题
面试点(go本身的理解不会偏向一些经验性的)调度模型内存模型并发模型软实力沟通协作面试官不懂你的业务方向你怎么能够表述清楚语速慢一些将一些细节描述清楚务实不要浮夸不要吹要内敛一些讲一下你是怎么思考的执
下一页