• golang 高并发下 tcp 建连数暴涨的原因分析

     发表于 1 个月 前

     背景:服务需要高频发出GET请求,然后我们封装的是 golang 的net/http 库, 因为开源的比如req 和gorequsts 都是封装的net/http ,所以我们还是...

  • 用 debugger 学习 golang

     发表于 1 个月 前

    常见的工程语言可分为解释型和编译型两种,比如写 php 的,一般就不怎么在乎 debugger 之类的东西。为什么?如果真出了问题,我可以临时把出问题的服务机器从线上服务中摘除出来...

  • 6行代码解决golang TCP粘包

     发表于 1 个月 前

    什么是TCP粘包问题以及为什么会产生TCP粘包,本文不加讨论。本文使用golang的 bufio.Scanner 来实现自定义协议解包。...

  • Go 1.10中值得关注的几个变化

     发表于 2 个月 前

    曾几何时, 这是很多Gopher在Go 1.8、Go 1.9时猜测是否存在的那个版本,毕竟minor version即将进化到两位数。从Go语言第一封设计mail发出到现在的十年间...

  • Go语言中的Interface

     发表于 2 个月 前

    最近在看Go语言的面向对象的知识点时,发现它的面向对象能力全靠 interface 撑着,而且它的 interface 还与我们以前知道的 interface 完全不同。故而整个过...

  • 我与 Go 语言的这十年

     发表于 4 个月 前

    2007 年 9 月 20 日,关于设计一门全新语言的讨论正式开始,这门全新的语言,就是后来的 Go。时至今日,Go 语言已经发布到 1.9 版本,走过了整整十年的历程。在这十年间...

  • Golang消息中间件NSQ深入与实践

     发表于 6 个月 前

    最近在研究一些消息中间件,常用的MQ如RabbitMQ,ActiveMQ,Kafka等。NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,由bitly公司开源...

  • 【译】Go 中如何进行单元测试

     发表于 6 个月 前

    在这篇文章中,我将尝试回答这个问题,首先解释什么是测试,然后我会用 Go 去深入实际编写测试。在编写测试时,我将通过编写自定义 main 包,使用 testing 包以及更复杂的功...

  • Go 在证券行情系统中的应用

     发表于 6 个月 前

    本文内容包含三个部分:证券行业系统背景介绍,证券行情业务特点,行情系统开发遇到的挑战。...

  • Go 1.9中值得关注的几个变化

     发表于 6 个月 前

    我们还是来看看Go 1.9究竟有哪些值得我们关注的变化,虽然我个人觉得Go1.9的变动的幅度并不是很大^0^。...

  • 性能优化实战:百万级WebSockets和Go语言

     发表于 7 个月 前

    大家好!我的名字叫Sergey Kamardin。我是来自 Mail.Ru 的一名工程师。这篇文章将讲述我们是如何用Go语言开发一个高负荷的WebSocket服务。即使你对WebS...

  • Golang Context源码学习

     发表于 7 个月 前

    最近学习golang框架的时候发现许多地方都用到了context的概念,比如grpc请求 etcd访问等许多地方。 本着追根溯源搞清楚实现方式的劲头,决定研究下实现原理。...

  • 如何用Go语言每分钟处理100万个请求

     发表于 7 个月 前

    作者结合自身工作经历,以一个项目为案例,通过多个Go语言程序实例的尝试,阐述了Go语言是如何每分钟可以处理100万个请求的,以下是译文。...

  • 使用 pprof 和火焰图调试 golang 应用

     发表于 7 个月 前

    Profiling 这个词比较难翻译,一般译成 画像 。比如在案件侦破的时候会对嫌疑人做画像,从犯罪现场的种种证据,找到嫌疑人的各种特征,方便对嫌疑人进行排查;还有就是互联网公司会...

  • [译] 如何使用 Go 构建开发高负载 WebSocket 服务器

     发表于 7 个月 前

    Mail.Ru有很多有状态的系统。 用户电子邮件存储是其中之一。 跟踪系统中的状态变化和系统事件有几种方法。 这主要是通过定期系统轮询或关于其状态变化的系统通知。...

  • raft源码分析

     发表于 7 个月 前

    一个 Server 结构代表 Raft 网络中的一个 节点 。节点会创建一个 Server ,并且通过 端(peers) 接口的方式暴露给其他节点。...

  • Go包管理的前世今生

     发表于 7 个月 前

    说实话,Golang对一个新人真的挺不友善的,因为一上手要了解的概念。你看人家Java,上来一个项目mvn install一下就完事了,干净利落。但是Golang就麻烦了,你得先了...

  • 如何把Go调用C的性能提升10倍?

     发表于 7 个月 前

    目前,当Go需要和C/C++代码集成的时候,大家最先想到的肯定是CGO。毕竟是官方的解决方案,而且简单。...

  • Go语言的那些坑

     发表于 7 个月 前

    Golang是我最喜欢的一门语言,它简洁、高效、易学习、开发效率高、还可以编译成机器码…...