一道golang

Go语言Golang DevOps运维开发实战集训营,高级运维必修

Go语言Golang DevOps运维开发实战集训营,高级运维必修 Go语言简介 Go语言,也称为Golang,是一门由Google开发的开源编程语言。它的设计目标是提供一种高效、简洁、安全且支持并发的编程语言,适用于构建可靠且高性能的软件系统。Go语言在短短的时间内迅速走红,成为开发者们喜爱的选择 ......
实战 语言 Golang DevOps

Golang中Defer知识点

1:defer的执行顺序 多个defer出现的时候,它是一个“栈”的关系,也就是先进后出。一个函数中,写在前面的defer会比写在后面的defer调用的晚 package main import "fmt" func main() { defer func1() defer func2() defe ......
知识点 知识 Golang Defer

分享一个项目:`learning_go_plan9_assembly`, 学习 golang plan9 汇编

作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 近期在学习 golang plan9 汇编,总算基本做到了手写汇编,并整理了很多笔记。 plan9 汇编的资料少,难学,难用。可能也有想学习汇编的人会遇到与我 ......

Golang语言快速上手到综合实战-高并发聊天室、豆瓣电影爬虫

Golang语言快速上手到综合实战-高并发聊天室、豆瓣电影爬虫 我们公司需要快速迭代一款产品,当时,我们团队的后端框架是spring mvc ,该框架结构清晰,上手快,但是由于我们的产品迭代速度快,底层数据库操作接口变动频繁,导致service层工作量巨大,不胜其烦。另外,随着项目的成长,代码量越来 ......
爬虫 豆瓣 实战 聊天室 语言

[转]golang读取pdf

PDF简介The Portable Document Format (PDF) is a file format used to present documents in a manner independent of application software, hardware, and oper ......
golang pdf

Golang(Go语言)IP地址转换函数

String形式的IP地址和Int类型互转函数 1 package main 2 3 import ( 4 "fmt" 5 "strconv" 6 "strings" 7 ) 8 9 func main() { 10 ip1 := `172.16.1.2` 11 ipInt1 := 28867299 ......
函数 语言 地址 Golang

理解Golang的闭包

闭包是指一个函数值(function value),它可以引用其函数体之外的变量 闭包代码示例 func makeSuffix() func(str string) string { var suffix = ".jpg" return func(str string) string { if st ......
闭包 Golang

Golang 面向对象深入理解

1 封装 Java 中封装是基于类(Class),Golang 中封装是基于结构体(struct) Golang 的开发中经常直接将成员变量设置为大写使用,当然这样使用并不符合面向对象封装的思想。 Golang 没有构造函数,但有一些约定俗成的方式: 提供 NewStruct(s Struct) * ......
对象 Golang

golang常用json库的选择

Sonic 如果对性能要求非常高,可以使用Sonic。但是Sonic有一些要求,高性能必然带来特例化,官方也介绍了,对CPU架构和系统等都有要求。其底层使用了一些汇编和c的代码实现,所以如果不是对性能要求特别高,可以不用。 fastjson fastjson介绍就是非常快,不过功能相对较少。好久已经 ......
常用 golang json

golang gin框架使用endless实现热更新原理和操作步骤

最近在学习go的Gin Web Framework,其中一个知识点是:【优雅地重启或停止】,原文截图: 这里说的其中一个方法是使用【fvbock/endless】是实现,记录下自己的实操步骤! Gin Web Framework文档地址:https://gin-gonic.com/zh-cn/doc ......
框架 步骤 原理 endless golang

[题解][ARC167C]一道申必的数数题

这道题目千岩万转,需要用到多次转化,其中有一些转化较为常见,有一些则需要思考。 首先观察原问题:给定数列 \(a\),对于所有 \(1\sim n\) 的排列 \(p\),构建一张只有 \(j-i\le k\) 的 \((i,j)\) 之间有权值为 \(\max\{a_{p_i}, a_{p_j}\ ......
题解 一道 167C ARC 167

Golang中log日志包的使用(转)

1.前言 作为后端开发人员,日志文件记录了发生在操作系统或其他软件运行时的事件或状态。技术人员可以通过日志记录进而判断系统的运行状态,寻找导致系统出错、崩溃的成因等。这是我们分析程序问题常用的手段。 2.log包介绍 在Golang中记录日志非常方便,Golang提供了一个简单的日志记录包log,包 ......
Golang 日志 log

golang flag的使用

package main import ( "backend-service-api-scripts/utils" "database/sql" "flag" "fmt" "log" "os" ) var ( db *sql.DB = utils.ConnectData() // 这里的连接数据库需 ......
golang flag

打印空心金字塔_Golang实现

* * * * * * * * * * * * * * * * * * * * * * * * 需求:在控制台打印如上图所示的效果图 解题思路: 首先简化问题,先打印出实心金字塔,然后可观察得知,层数与star(星号)数量保持着一定关系(奇数队列),1、3、5、7……2n-1 然后,格式化打印效果, ......
金字塔 金字 Golang

一道简单的加密逆向(纯新手)

import string def encode(string,string2): tmp_str = str() ret = str() bit_string_str = string.encode() remain = len( string ) % 3 remain_str = str() f ......
一道 新手

Golang后端大厂面经!

大家好,我是阳哥。专注Go语言的学习经验分享和就业辅导。 之前分享了很多 Golang 后端的大厂面经,不少同学在催更新,这篇给大家继续安排。 本文来自一位同学的投稿,面试深X服的面经汇总,前半部分主要是Go语言相关,后半部分也涉及微服务和Redis。 Slice扩容 slice切片扩容机制?为什么 ......
Golang

一个轻量级golang ORM框架gdbcTemplate

今天介绍一个自己写的轻量级golang ORM框架gdbcTemplate, 目前支持mysql, postgresql等数据库 项目地址位于 https://github.com/guoapeng/gdbctemplate 以下摘自readme文件, 里面有示例供参考. 1. readme fil ......
轻量 轻量级 gdbcTemplate 框架 golang

golang 中使用 writev (sendmsg) 系统调用来一次发送多块数据

作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 writev,或者说 sendmsg 等系统调用,能够发送多个数据块。从节约系统调用次数的角度说,这个 api 非常好。 下面演示如何在 golang 中使用 ......
sendmsg 数据 golang writev 系统

云端golang开发,无需本地配置,能上网就能开发和运行

不想装golang,不想装IDE,还想有个流畅的运行环境,最重要的是一分钱都不想花,嗯嗯,GitHub云开发环境全部满足你,一切操作尽在本文 ......
能开发 云端 golang

一道东京大学数学题

定义集合\(S\)(大小为\(m\))(\(S\)是\(\{0,2,.....n-1\}\)的子集)的权值:\(2^{S_1}*2^{S_2}*....*2^{S_m}\) 定义\(a_{n,m}\):\(S\)的所有选法的权值之和。 (2)定义多项式\(f_n(x)=a_{n,0}+a_{n,1} ......
数学题 一道 数学 大学

golang 获取 mongo 数据库状态

命令行模式 navicat golang package main import ( "context" "encoding/json" "fmt" "log" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo ......
状态 数据库 数据 golang mongo

每天一道面试题:Linux下查找文件并删除的命令

找到目录下所有一test开头的文件并删除: 1. find ./ -name "test*" | xargs rm -rf 2. find ./ -name "test*" -exec rm -rf {}\; 3. rm -rf $(find ./ -name "test*") 如果想指定递归深度, ......
一道 命令 文件 Linux

golang的Leaf框架安装步骤

最近在学习golang的Leaf游戏服务器框架(官方github),官方的安装步骤,非常简单,如下图: 我在安装的时候也遇到一些疑问,因此记录下来我的实操步骤! 1、我的现有GOPATH=E:\Go,src目录下有一些做过的项目 2、获取LeafServer,我在src目录下clone的,遵循以前的 ......
框架 步骤 golang Leaf

linux下安装golang的方法

文章地址 https://cloud.tencent.com/developer/article/1721945?from=15425 不同版本: https://golang.google.cn/dl/ ......
方法 golang linux

golang validator 检验工具的使用指北

golang validator 包的使用指北 原创 阿兵云原生 阿兵云原生 2023-09-10 09:27 发表于广东 看到 validator 咱们第一反应会想起啥?见名知意我就可以知道他是一个验证器,如果用过 gin web 框架的同学,自然是用过 gin 里面的 validator,只不过 ......
validator 工具 golang

Golang Map底层实现简述

Go的map是一种高效的数据结构,用于存储键值对。其底层实现是一个哈希表(hash table),下面是有关map底层实现的详细介绍: 哈希表: map的底层实现是一个哈希表,也称为散列表。哈希表是一个数组,其中每个元素被称为"桶",用于存储键值对。 哈希表的大小是可动态调整的,当存储的键值对数量达 ......
底层 Golang Map

Golang logrus用法

package xlog import ( "bufio" "fmt" "github.com/sirupsen/logrus" rotatelogs "github.com/lestrrat-go/file-rotatelogs" "github.com/rifflock/lfshook" "os ......
Golang logrus

Golang viper读取配置

go get github.com/spf13/viper config.toml title = "toml exaples" redis = "127.0.0.1:3300" [mysql] host = "192.168.1.1" ports = 3306 username = "root" ......
Golang viper

Golang sync包中errgroup的使用详解

WaitGroup 主要用于控制任务组下的并发子任务。它的具体做法就是,子任务 goroutine 执行前通过 Add 方法添加任务数目,子任务 goroutine 结束时调用 Done 标记已完成任务数,主任务 goroutine 通过 Wait 方法等待所有的任务完成后才能执行后续逻辑 pack ......
errgroup Golang sync

golang之xorm简单使用

go get github.com/go-xorm/xorm package main import ( "fmt" _ "github.com/go-sql-driver/mysql" "github.com/go-xorm/xorm" ) type PointInfo struct { Id i ......
golang xorm