自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 Go 中的性能分析和执行跟踪

Go 提供了一些优秀的诊断工具来帮助我们深入分析应用程序的执行情况。这篇文章核心关注点是:分析和执行跟踪器。 这两个工具都非常重要,它们应该成为任何对优化感兴趣的 Go 开发人员的核心工具集的一部分。

2023-03-20 09:38:26 155

原创 2592小时后,Golang将为你闪烁

浸~! 泡~!经历了短暂的乱纪元后,终于迎接来了令人期待的恒纪元。第八届 Gopher China 大会终于要和大家见面了。

2023-02-22 15:25:10 115

原创 Ristretto 简介: 一个高性能GO缓存

Ristretto 简介: 一个高性能GO缓存

2023-02-16 12:05:31 573

原创 在 Go 中定义结构体

在 Go 中定义结构体目录在 Go 中导入包理解 Go 中包的可见性如何在 Go 中编写条件语句如何在 Go 中编写 Switch 语句如何在 Go 中构造 for 循环在循环中使用 Break 和 Continue如何在 Go 中定义并调用函数如何在 Go 中使用可变参数函数了解 Go 中的 defer了解 Go 中的 init用构建标签定制 Go 二进制文件了解 Go 中的指针在 Go 中定义结构体在 Go 中定义方法如何构建和安装 Go 程序如何在 Go 中使用结构体标签如何在 Go 使用 in

2023-02-15 11:50:57 333

原创 了解 Go 中的指针

了解 Go 中的指针目录在 Go 中导入包理解 Go 中包的可见性如何在 Go 中编写条件语句如何在 Go 中编写 Switch 语句如何在 Go 中构造 for 循环在循环中使用 Break 和 Continue如何在 Go 中定义并调用函数如何在 Go 中使用可变参数函数了解 Go 中的 defer了解 Go 中的 init用构建标签定制 Go 二进制文件了解 Go 中的指针在 Go 中定义结构体在 Go 中定义方法如何构建和安装 Go 程序如何在 Go 中使用结构体标签如何在 Go 使用 int

2023-02-11 11:32:36 271

原创 在循环中使用 Break 和 Continue

在循环中使用 Break 和 Continue目录在 Go 中导入包理解 Go 中包的可见性如何在 Go 中编写条件语句如何在 Go 中编写 Switch 语句如何在 Go 中构造 for 循环在循环中使用 Break 和 Continue如何在 Go 中定义并调用函数如何在 Go 中使用可变参数函数了解 Go 中的 defer了解 Go 中的 init用构建标签定制 Go 二进制文件了解 Go 中的指针在 Go 中定义结构体在 Go 中定义方法如何构建和安装 Go 程序如何在 Go 中使用结构体标签

2022-12-25 11:43:51 105

原创 如何在 Go 中编写 Switch 语句

如何在 Go 中编写 Switch 语句目录在 Go 中导入包理解 Go 中包的可见性如何在 Go 中编写条件语句如何在 Go 中编写 Switch 语句如何在 Go 中构造 for 循环在循环中使用 Break 和 Continue如何在 Go 中定义并调用函数如何在 Go 中使用可变参数函数了解 Go 中的 defer了解 Go 中的 init用构建标签定制 Go 二进制文件了解 Go 中的指针在 Go 中定义结构体在 Go 中定义方法如何构建和安装 Go 程序如何在 Go 中使用结构体标签如何在

2022-12-18 15:08:59 132

原创 理解 Go 中包的可见性

理解 Go 中包的可见性目录在 Go 中导入包理解 Go 中包的可见性如何在 Go 中编写条件语句如何在 Go 中编写 Switch 语句如何在 Go 中构造 for 循环在循环中使用 Break 和 Continue如何在 Go 中定义并调用函数如何在 Go 中使用可变参数函数了解 Go 中的 defer了解 Go 中的 init用构建标签定制 Go 二进制文件了解 Go 中的指针在 Go 中定义结构体在 Go 中定义方法如何构建和安装 Go 程序如何在 Go 中使用结构体标签如何在 Go 使用 i

2022-11-27 17:25:24 204

原创 在 Go 中导入包

在 Go 中导入包目录在 Go 中导入包理解 Go 中包的可见性如何在 Go 中编写条件语句如何在 Go 中编写 Switch 语句如何在 Go 中构造 for 循环在循环中使用 Break 和 Continue如何在 Go 中定义并调用函数如何在 Go 中使用可变参数函数了解 Go 中的 defer了解 Go 中的 init用构建标签定制 Go 二进制文件了解 Go 中的指针在 Go 中定义结构体在 Go 中定义方法如何构建和安装 Go 程序如何在 Go 中使用结构体标签如何在 Go 使用 inte

2022-11-22 09:49:15 1884

原创 在 Go 中处理恐慌

在 Go 中处理恐慌目录如何在 Ubuntu 18.04 上安装 Go 和设置本地编程环境如何在 macOS 上安装 Go 和设置本地编程环境如何在 Windows 10 上安装 Go 和设置本地编程环境如何用 Go 编写你的第一个程序理解 GOPATH如何在 Go 中写注释理解 Go 的数据类型Go 中处理字符串的介绍如何在 Go 中格式化字符串介绍 Go 中的 Strings 包如何在 Go 中使用变量和常量如何在 Go 中转换数据类型如何用运算符在 Go 中做数学计算了解 Go 中的布尔逻辑理解

2022-11-13 18:48:38 1001

原创 在 Go 中创建自定义错误

在 Go 中创建自定义错误目录如何在 Ubuntu 18.04 上安装 Go 和设置本地编程环境如何在 macOS 上安装 Go 和设置本地编程环境如何在 Windows 10 上安装 Go 和设置本地编程环境如何用 Go 编写你的第一个程序理解 GOPATH如何在 Go 中写注释理解 Go 的数据类型Go 中处理字符串的介绍如何在 Go 中格式化字符串介绍 Go 中的 Strings 包如何在 Go 中使用变量和常量如何在 Go 中转换数据类型如何用运算符在 Go 中做数学计算了解 Go 中的布尔逻

2022-10-26 09:18:27 602

原创 理解 Go 中的 Map

理解 Go 中的 Map目录如何在 Ubuntu 18.04 上安装 Go 和设置本地编程环境如何在 macOS 上安装 Go 和设置本地编程环境如何在 Windows 10 上安装 Go 和设置本地编程环境如何用 Go 编写你的第一个程序理解 GOPATH如何在 Go 中写注释理解 Go 的数据类型Go 中处理字符串的介绍如何在 Go 中格式化字符串介绍 Go 中的 Strings 包如何在 Go 中使用变量和常量如何在 Go 中转换数据类型如何用运算符在 Go 中做数学计算了解 Go 中的布尔逻辑

2022-10-19 10:43:37 487

原创 理解 Go 中的数组和切片

理解 Go 中的数组和切片目录如何在 Ubuntu 18.04 上安装 Go 和设置本地编程环境如何在 macOS 上安装 Go 和设置本地编程环境如何在 Windows 10 上安装 Go 和设置本地编程环境如何用 Go 编写你的第一个程序理解 GOPATH如何在 Go 中写注释理解 Go 的数据类型Go 中处理字符串的介绍如何在 Go 中格式化字符串介绍 Go 中的 Strings 包如何在 Go 中使用变量和常量如何在 Go 中转换数据类型如何用运算符在 Go 中做数学计算了解 Go 中的布尔逻

2022-10-11 18:40:55 158

原创 Understanding_Data_Types_in_Go

Understanding_Data_Types_in_Go理解 Go 的数据类型介绍数据类型是指在编写程序时特定变量存储的值的类型。数据类型还决定对数据可以执行哪些操作。在本文中,我们将介绍 Go 本身的重要数据类型。本文并不是对数据类型的详尽调查,但将帮助你熟悉 Go 中可用的选项。理解一些基本数据类型将可以让你能够编写更清晰的代码,从而更有效地执行。背景了解数据类型的一种方法是考虑我们在现实世界中使用的不同类型的数据。现实世界中数据的一个例子是数字: 例如,我们可以使用无符号整数(0,1,

2022-08-10 13:16:56 61

原创 可使用 git 操作的数据库 dolt

可使用 git 操作的数据库 dolt什么是 dolt?Dolt 是一个 SQL 数据库,您可以像 git 存储库一样分叉、克隆、分支、合并、推送和拉取。像任何 MySQL 数据库一样连接到 Dolt 以使用 SQL 命令运行查询或更新数据,使用 Golang 语言编写。它与 MySQL 关系型数据库一样,具有表、视图等概念,支持数据的增删改查等操作。并且它提供了一个命令行工具,完美支持所有的 git 命令。快速使用安装最新版 polt或者下载二进制,并加入到 PATH 中sudo&n

2022-07-24 21:41:54 128

原创 [ 每周译Go ] 如何用 Go 编写你的第一个程序

Gopher们,今天我们就要开始一起进入编写程序的环节啦!!这次,我们要学习的是《如何用 Go 编写你的第一个程序》,电脑、脑子、本子准备好~如何用 Go 编写你的第一个程序前言“Hello, World!” 程序是计算机编程中的经典且历史悠久的传统。 对于初学者来说,这是一个简单而完整的第一个程序,它是一个确保你的环境配置正确的好方法。本教程将引导你在 Go 中创建此程序。 但是,为了使程序更有趣,你将修改传统的 “Hello, World!” 程序,以便它可以询问用户的姓名。 然后,你将在回复

2022-07-18 20:18:42 1776

原创 2022 GopherChina 出品人及演讲内容陆续揭晓···

2022 GopherChina 出品人及演讲内容陆续揭晓···出品人简介史斌 北京希姆计算科技有限公司,软件工程师。基础软件工具链从业者,目前致力于国产处理器软件生态。曾给Go和LLVM提交过100多个优化补丁,同时拥有两个项目官方git仓库的提交和代码审核权限。Go语言全球贡献者榜排名前50。《Go语言定制指南》作者。出品人专访请问史大是哪一年以及是什么原因接触Go语言的呢?史大 :2016年听说Go语言要自建基于SSA的编译器后端,因此发生兴趣。因为"自举"是编译器和编程语言开发者终

2022-07-13 15:23:56 1605

原创 编写go语言代码三条基本原则

这是一篇翻译文章,为了使读者更好的理解,会在原文翻译的基础增加一些讲解或描述。软件工程是当您添加时间和其他程序员时编程发生的事情。 — Russ CoxRuss 正在区分软件编程和软件工程。 前者是您为自己编写的程序,后者是随着时间的推移许多人会使用的产品。 工程师会来来去去,团队会扩大和缩小,需求会改变,功能会被添加,错误会被修复。 这是软件工程的本质。三条基本原则清晰可读化繁为简生产力你会注意到我没有说性能或并发性。 有些语言比 Go 快一点,但它们肯定不像 Go 那样简单。 有些语言

2022-07-12 10:23:47 64

原创 用 Go 跑的更快:使用 Golang 为机器学习服务

用 Go 跑的更快:使用 Golang 为机器学习服务因此,我们的要求是用尽可能少的资源完成每秒300万次的预测。值得庆幸的是,这是一种比较简单的推荐系统模型,即多臂老虎机(MAB)。多臂老虎机通常涉及从 Beta 分布 等分布中取样。这也是花费时间最多的地方。如果我们能同时做尽可能多的采样,我们就能很好地利用资源。最大限度地提高资源利用率是减少模型所需总体资源的关键。我们目前的预测服务是用 Python 编写的微服务,它们遵循以下一般结构:请求->功能获取->预测->后期处理-&

2022-07-05 11:42:54 1890

原创 调试利器 go-spew

对于应用的调试,我们经常会使用 fmt.Println来输出关键变量的数据。或者使用 log 库,将数据以 log 的形式输出。对于基础数据类型,上面两种方法都可以比较方便的满足需求。对于一些结构体类型数据通常我们可以先将其序列化后再输出。如果结构体中包含不可序列化的字段,比如 func 类型,那么序列化就会抛出错误,阻碍调试。go-spew上面的需求,go-spew 可以完美的帮我们实现。go-spew 可以以一种非常友好的方式输出完整的数据结构信息。如:s := "GoCN"

2022-06-27 20:42:11 219

原创 简单好用的缓存库 gcache

1.前言开发时,如果你需要对数据进行临时缓存,按照一定的淘汰策略,那么gcache你一定不要错过。 gcache golang的缓存库。它支持可扩展的Cache,可以选择 LFU,LRU、ARC等淘汰算法。2.特性gcache 有很多特性:支持过期淘汰算法Cache,比如 LFU, LRU和ARC。Goroutine安全。支持事件处理程序,淘汰、清除、添加。(可选)自动加载缓存,如果它不存在。(可选)… ….更多功能特性请查看:gcache3.快速安装直接get即可使用。$ go

2022-06-25 19:10:23 1776

原创 构建Go命令行程序工具链

偷懒的故事今天的推荐需要从一个偷懒的故事说起:话说,不久之前,需要输出一个按发布时间排序的酷Go推荐的历史文章列表,类似于这样于是乎,从GoCN上一篇一篇copy文章的标题吧,5篇下来,手眼已经不协调了,此时此刻才想起自己貌似是个码农,此情此景那必须coding一段,让代码来输出这个列表。思路很简单,看一下GoCN文章列表的API,再看下鉴权方式(看header是通过cookie),然后就可以coding了,通过API拉取文章数据,提取需要的字段再组装成MD输出就完事了!当准备一个main.go搞

2022-06-24 10:17:51 178

原创 Web全栈推拉能手Socket.IO库

Web全栈推拉能手Socket.IO库Web前端与后台的通信短轮询:通过不断发送http请求达到即时通信的目的长轮询:访问无资源并不会立刻返回,保持较长时间的通讯,直到获得数据或超时返回。WebSocket:基于TCP协议,兼容HTTP协议的基础上,做协议升级,在HTML5中提供client和server进行全双工通信。Socket.IOSocket.IO 是一个封装了 Websocket、基于 Node 的 JavaScript 框架,包含 client 的 JavaScript 和 serve

2022-06-18 20:06:59 991

原创 范型下,优雅的 Lodash 风

go 语言比较崇尚简单,所以在内嵌包中没有提供过多帮助性的函数,尤其在范型出来前想要写一个简单的对 slice 和 map 间互相转化的方法可能就需要很多行代码,并且这样并不是很优雅。如今,go 范型已经得到官方的正式发布,samber/lo 又提供了优雅的 lodash 风格的工具函数,正是代码重构的好时机。...

2022-06-10 10:12:41 221

原创 go全栈开发框架bud,go语言中的ruby on rails

Bud是一个go语言编写的全栈开发框架,类似ruby on rails,Bud的使命是降低构建、开发和维护web应用的成本。Bud提供了一整套文档完善的、充分测试的工具来降低web应用开发成本。

2022-06-05 18:35:06 259

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除