本文详细讲述了 Golang 中,堆栈设计理念以及演变过程。描述了从 Segment stack 到 Contiguous Stack 、初始堆栈大小从 8Kb 到 2Kb 的原因。 Illustration created for “A Journey With Go”, made from the original Go Gopher, create ......
262
0
0
2023-08-22
一、目录:1、 kafka 是什么?主要应用场景有哪些?2、和其他消息队列相比、 kafka 的优势在哪里?3、什么是 producer、consumer、broker、topic、partition ?4、 kafka 多副本机制 了解吗?5、 kafka 多分区( partition )以及多副本( replica )机制有什么好处呢?6、 zook ......
285
0
0
2023-08-22
gRPC 越来越流行,相关的插件也很多,今天介绍的就是一个 gRPC 插件。 gRPC-Gateway 是一个插件,它为 gRPC 服务生成反向代理服务器,将 Restful/JSON 转换为 gRPC,反之亦然。 换句话说,gRPC-Gateway 将在你的 gRPC 服务上创建一个层,该层将充当客户端的 Restful/JSON 服务。gRPC- ......
379
0
0
2023-08-22
本文让我们一起来学习 golang Context 的使用和标准库中的Context的实现。golang context 包 一开始只是 Google 内部使用的一个 Golang 包,在 Golang 1.7的版本中正式被引入标准库。下面开始学习。简单介绍在学习 context 包之前,先看几种日常开发中经常会碰到的业务场景:业务需要对访问的数据库, rp ......
294
0
0
2023-08-22
非正式解决方案 思考链接价值,非正式解决方案,既扯高大上如人工智能、大数据,也关注码农日常如分布式、 Java 和golang,每天分享瞎想的东西。MVC 应用一般结构 目录结构说明如下名称内容model模型层目录,类比Java 中的entityview视图层,存放所有templete模板ctrl控制器层, 存放全部控制器service服务层,类比Java ......
270
0
0
2023-08-21
前言一个基本的go项目一般会有cmd, internal, pkg三个基础目录来分层,当然这不是官方go核心开发团队定义的标准。但这个确实是目前go生态系统中比较常见的布局形式,不管从之前的和还是现在开发项目的分层来看。这些基础目录同样适用更大的项目,并且还有一些小的增强功能。如果你创建一个项目来学习go或你开发的是一个PoC或很小的项目,这种分层就没必要使 ......
324
0
0
2023-08-19
背景gRPC是Google开始的一个RPC服务框架, 是英文全名为Google Remote Procedure Call的简称。 广泛的应用在有RPC场景的业务系统中,一些架构中将gRPC请求都经过一个gRPC服务代理节点或网关,进行服务的权限限制,限流,服务调用监控,增加请求统计等等诸多功能。 如下以Golang和gRPC为例,简要分析gRPC的转发原 ......
407
0
0
2023-08-19
自推出以来,Google的Go 编程语言 (Golang)一直受到主流用户的欢迎。 在2016年12月的一项调查中,在3595名受访者中,有89%的人声称他们在工作中或工作外使用Go语言编程。此外,就专业知识和偏好而言,Go在编程语言中排名最高。 2017年7月,Go在”年度Tiobe年度编程语言”中排名第10,从去年的第55位跃升至第10位。显然,Go吸 ......
421
0
0
2023-08-19
Golang编程时间中,为了便于调试和代码质量和安全性检查。利用该方法可以在开发周期的早期捕获错误,并且检查团队编程风格,提高一致性。这对团队协作开发特别有用,可以提高开发的效率,保持代码质量和安全性。 概述Linting代码是可以做的最基本的事情之一,以确保项目中的编码实践一致。通过捆绑 gofmt ,Go 已经比大多数其他编程语言走得更远,这是一 ......
317
0
0
2023-08-19
Go语言最吸引人的地方是它内建的并发支持。Go语言并发体系的理论是C.A.R Hoare在1978年提出的通信顺序进程(Communicating Sequential Process,CSP)。CSP有着精确的数学模型,并实际应用在了Hoare参与设计的T9000通用计算机上。从Newsqueak、Alef、Limbo到现在的Go语言,对于对CSP有着2 ......
263
0
0
2023-08-16
golang使用grpc的快速入门教程创建工程mkdir grpc_test cd g RPC _test go mod init //使用github的grpc替换gp的grpc go mod edit -replace=google.golang.org/grpc=github.com/grpc/grpc-go@latest go mod ed ......
325
0
0
2023-08-16
云联壹云是完全自研的一套融合云平台,Golang是主要的开发语言,本文主要介绍介绍在迭代过程中关于Golang的经验以及在Golang上积累的框架和库。 在开发过程中,我们也积累了Golang的库函数,并基于这些库函数去开发框架以及平台,当然还有库的特点,实现库的原因及其优点。 背景介绍 融合云平台—云联壹云是从2017年开始逐步迭代开 ......
266
0
0
2023-08-15
作为一款网红编程语言,Go语言还十分年轻,很多程序员无法及时了解到Go语言的框架、库和软件应用。近日,Github用户avelino分享了一张非常完整且庞大的表单,包括命令行、数据库、Web框架、机器学习、自然语言处理……以下是部分内容截取,感谢avelino的分享。标准CLI 用于构建标准或基本命令行应用程序的库。argv – 使用 bash 语法将库命令 ......
280
0
0
2023-08-15
1、 Cookie 简介介绍完了 Go 语言的 HTTP 请求和响应处理,接下来,我们来看看 Go 语言中 Cookie 技术的实现,由于 HTTP 协议本身是无状态的,所以引入了 Cookie 来实现客户端用户识别和状态管理,关于 Cookie 本身这里不多做介绍,你可以在维基百科或者阅读 HTTP 报文首部字段(五):扩展字段篇(Cookie)这篇教程 ......
330
0
0
2023-08-15
这是Go应用程序项目的基础布局。这不是Go核心开发团队定义的官方标准;无论是在经典项目还是在新兴的项目中,这都是Go生态系统中一组常见的项目布局模式。这其中有一些模式比另外的一些更受欢迎。它通过几个支撑目录为任何足够大规模的实际应用程序提供一些增强功能。 如果你正准备学习Go、正在构建PoC项目或编写玩具项目,那么按照这个项目进行布局就大材小用了。从一些正真 ......
279
0
0
2023-08-15