Golang适合高并发场景的原因分析

典型的两个现实案例: 我们先看两个用Go做消息推送的案例实际处理能力。 360消息推送的数据: 16台机器,标配:24个硬件线程,64GB内存 Linux Kernel 2.6.32 x86_64 单机80万并发连接,load 0.2~0.4,CPU 总使用率 7%~10%,内存占用20GB (res) 目前接入的产品约1280万在线用户 2分钟一次GC,停顿2秒 (1.0.3 的 GC 不给力,直接升级到 tip,再次吃螃蟹) 15亿个心跳包/天,占大多数。 京东云消息推送系统 (团队人数:4...阅读全文

阅读:5164 评论:0

一个有关Golang变量作用域的坑

一个有关Golang变量作用域的坑 一 13 bigwhite技术志 Go, Golang, scope, 作用域, 函数, 变量作用域, 坑 4 Comments 临近下班前编写和调试一段Golang代码,但运行结果始终与期望不符,怪异的很,下班前依旧无果。代码Demo如下: //testpointer.go package main import ( "fmt" ) var p *int func foo() (*int, error) { var i int = 5 return &i, ...阅读全文

阅读:42897 评论:9

Go实战--golang实现MP4视频文件服务器(nareix/joy4)

生命不止,继续 go go go !!! 有点忙,有点懈怠,继续。 关于golang实现的静态文件服务器之前有写过: Go实战–golang实现静态文件服务器(文件查看,文件上传,文件下载) 正好,最近在做视频方面的东西,那么先来个简单的,实现一个提供mp4视频文件的服务器吧,并且通过浏览器访问播放。 MP4文件服务器 package main import ( "log" "net/http" "os" "time" ) func ServeHTTP(w http.ResponseWriter...阅读全文

2017-09-21 16:38 wangshubo1989
阅读:8951 评论:0

Go 中 defer 的 5 个坑 - 第一部分

> 通过本节的学习以避免掉入基础的 defer 陷阱中 本文只适合想要进阶学习 Golang 的新手阅读,大牛请绕道。 ## #1 -- defer nil 函数 如果一个延迟函数被赋值为 `nil` , 运行时的 [`panic`](https://golang.org/ref/spec#Handling_panics) 异常会发生在外围函数执行结束后而不是 `defer` 的函数被调用的时候。 例子 ```go func() { var run func...阅读全文

阅读:17958 评论:9

GoLang并发控制(上)

GoLang并发控制(上) 在go程序中,最被人所熟知的便是并发特性,一方面有goroutine这类二级线程,对这种不处于用户态的go程的支持,另一方面便是对并发编程的简便化,可以快捷稳定的写出支持并发的程序。 先回顾进程or线程之间的通信方式 inte-process communication(IPC) 其中Go支持的IPC方法有管道、信号和socket。篇(shui)幅(ping)有限,一张图引入回忆。 ipc图解.jpg 并发和并行 简单来讲 并发就是可同时发起执行的程序,并行就是可以在...阅读全文

2018.10.16 23:55 不喜欢夜雨天
阅读:1231 评论:0

《Go语言四十二章经》第四十二章 WEB框架(Gin)

# 《Go语言四十二章经》第四十二章 WEB框架(Gin) 《Go语言四十二章经》第四十二章 WEB框架(Gin) 作者:李骁 ## 42.1 有关于Gin Gin是Go语言写的一个web框架,API性能超强,运行速度号称较httprouter要快40x。开源网址:https://github.com/gin-gonic/gin 下载安装gin包: ```go go get -u github.com/gin-gonic/gin ``` 一个简单的例子: ...阅读全文

2018-10-18 21:55:38 roteman
阅读:1341 评论:0

初学者入门 Golang 的学习型项目,go入门项目

我觉得学习一门语言最重要的就是做到三点,第一看基础知识,第二学习抄代码,第三学习写代码第一点,很多人都觉得上来就动手写,但是你基础的东西都没掌握,怎么写呢?欲速则不达,所以基础的东西还是必须要先掌握好。这里推荐几个基础的入门材料:https://tour.golang.org/#1邢星翻译的 https://github.com/mikespook/Learning-Go-zh-cnGo byExample :https://gobyexample.com/我觉得你把这几个基础掌握之后就可以开始...阅读全文

2019.01.24 14:04 一直安静bg
阅读:2288 评论:0