摘要: Go语言中的goroutine是一种轻量级的线程,其优点在于占用资源少、切换成本低,能够高效地实现并发操作。但如何对这些并发的goroutine进行控制呢? 一提到并发控制,大家最先想到到的是锁。Go中同样提供了锁的相关机制,包括互斥锁sync.Mutex和读写锁sync.RWMutex;除此之外G 阅读全文
posted @ 2024-01-27 19:26 落雷 阅读(240) 评论(0) 推荐(2) 编辑
摘要: 1. 获取本地IP地址 使用 net 包可以获取本地机器的 IP 地址。以下是一个获取本地 IP 地址的简单示例: package main import ( "fmt" "net" ) func main() { // 获取所有网络接口 interfaces, err := net.Interfa 阅读全文
posted @ 2023-12-06 13:57 落雷 阅读(310) 评论(3) 推荐(0) 编辑
摘要: 在 Go 语言中,主要的条件控制语句有 if-else、switch 和 select。以下是对它们的简单介绍: 1. if 语句: if 语句用于根据条件执行不同的代码块。它的基本形式如下: if condition { // code block } else if condition2 { / 阅读全文
posted @ 2023-12-06 11:25 落雷 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 微服务(Microservices)是一种软件架构设计风格,其中应用程序由一组小型、独立、自治的服务组成,这些服务共同工作以构建整体应用。每个服务都专注于一个特定的业务功能,可以独立部署、扩展和维护。微服务架构旨在提高系统的灵活性、可维护性和可扩展性,并促使敏捷开发和交付。 选择使用微服务架构是基于 阅读全文
posted @ 2023-12-01 07:11 落雷 阅读(24) 评论(0) 推荐(0) 编辑
摘要: gRPC(gRPC Remote Procedure Call)是由 Google 开发的开源 RPC 框架,它基于 HTTP/2 标准,使用 Protocol Buffers 作为接口定义语言(IDL)。gRPC 提供了一种高效、跨语言、跨平台的远程过程调用(RPC)解决方案,被广泛应用于构建分布 阅读全文
posted @ 2023-11-29 17:01 落雷 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 存储大规模数据集需要仔细设计数据库模式和索引,以便能够高效地支持各种查询操作。在面对数亿条数据,每条数据包含数百个字段的情况下,以下是我能想到的在设计数据库的时候需要注意的内容,不足之处欢迎各位在评论区批评指正: 1. 数据库设计 表结构设计 垂直分割:将大的表分割成多个相关性较小的表,以减少单个表 阅读全文
posted @ 2023-11-21 18:31 落雷 阅读(1434) 评论(0) 推荐(2) 编辑
摘要: 使用 Go 语言开发网络代理服务可以通过以下步骤完成。这里,我们将使用 golang.org/x/net/proxy 包来创建一个简单的 SOCKS5 代理服务作为示例。 步骤 1. 安装 golang.org/x/net/proxy 包 使用以下命令安装 golang.org/x/net 包,该包 阅读全文
posted @ 2023-11-20 09:27 落雷 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 在 Go 语言中,panic、recover 和 defer 是用于处理异常情况的关键字。它们通常一起使用来实现对程序错误的处理和恢复。 1. defer 语句 defer 用于在函数返回之前执行一段代码。被 defer 修饰的语句或函数会在包含 defer 的函数执行完毕后执行。defer 常用于 阅读全文
posted @ 2023-11-18 10:59 落雷 阅读(73) 评论(0) 推荐(0) 编辑
摘要: Go语言中的上下文(Context)是一种用于在 Goroutines 之间传递取消信号、截止时间和其他请求范围值的标准方式。context 包提供了 Context 类型和一些相关的函数,用于在并发程序中有效地传递上下文信息。 在Go语言中,上下文通常用于以下场景: 请求的传递:当一个请求从客户端 阅读全文
posted @ 2023-11-17 08:47 落雷 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 原文在这里。 由 Russ Cox, for the Go team 发布于2023年11月10日 今天,我们庆祝Go开源发布的第十四个生日!Go在过去一年里取得了巨大的进展,发布了两个功能丰富的版本,并实现了其他重要的里程碑。 我们发布了Go 1.20 in February和Go 1.21 in 阅读全文
posted @ 2023-11-13 18:38 落雷 阅读(88) 评论(0) 推荐(0) 编辑