Go语言中文网 为您找到相关结果 233

常用的 Go 框架、库和软件中文收录大全????

背景介绍 大多数 Gopher 应该对于 Awesome-go 应该都不陌生。 Awesome-go 是个很优秀的项目,里面收录了很多优秀的用 Go 编写的开源库、框架、软件 截至目前,Awesome-go 已经收录了Web框架、机器学习、分布式系统、编译器、物联网、持续集成等方方面面共计 81 类大项, 1777 个用 Go 编写的仓库,很多我们平常开发上所需要的库都能在上面能找到,为我们省去了不少时间。 Awesome-go Web框架收录部分 Awesome-go 使用痛点 虽然 Awesome-go 收录的内容确实很丰富,但是英文原版的使用体验上却是差强人意,我们所遇到的痛点大体如下 : 仓库重要信息丢失。在英文版 Awesome 下,因为收录的库较多,可选择性也比较大,虽然这是个优...阅读全文

博文 2019-06-28 12:04:17 应杲臻

Artifactory清理未使用的二进制品的最佳实践

Artifactory充分利用了基于Checksum的存储,但是这种机制无法代替常规的工件清理任务。软件开发可能很杂乱,很多时候Artifactory中的许多工件都从未使用过。例如,许多CI / CD构建都配置为基于源代码控制“提交”运行,并且一旦将这些快照构建发送到Artifactory,就永远不会实际下载它们。 考虑到软件开发的动态性质,大多数组织都有自己的数据保留策略。由您决定可以清除哪些数据,但是内置工具可以覆盖大多数情况。通常,在Artifactory中使用三种技术来管理工件存储:–限制保留多少SNAPSHOT–清除超大缓存–删除未使用的工件限制保留多少SNAPSHOTArtifactory具有内置机制来限制构建的“快照”。该系统的目的是确保在覆盖“release”工件之前将其从“...阅读全文

博文 2020-03-10 19:09:52 JFrogChina

建站宝盒到底有多大的威力令人为之痴迷?

建站宝盒是针对中小企业用户建站需求而打造的一款自助建站系统。用户只需通过在线申请账号和密码的方式建网站,不用自己上传源代码,只需登录网站管理系统即可选择网站模板风格、上传文字和图片内容、设置网站栏目、维护网站内容,其针对不同行业特点精心设计的网站栏目和网页风格。 此外,建站宝盒支持三种语言中文版网站、繁体版网站、英文版网站、运用功能强大的管理平台。建站宝盒大大节省建立网站的成本,极大地缩短了企业建站的时间。 ![5.jpg](https://static.studygolang.com/180427/a0738317884ddcaeebd9d5b132fd9a31.jpg) 简单易用 强大灵活 传统网站建设做出的网站管理后台功能简单,后期维护、网站建设周期长,修改...阅读全文

利用 ApsaraDB For SQL Server各版本高效而低廉地实现关键业务需求

1. 什么是SQL Server多版本 微软的SQL Server除了不断迭代的版本升级外,还有从功能差异上分为几个不同的版本。 SQL Server 2012有企业版、商务智能版、标准版、开发版、Web版,当然还有一个入门版本Express。SQL Server2014/2016,只有企业版、标准版、开发版、Web版,也有一个入门版本Express。这些版本的应用场景是不同的,这里有详细的解释: Enterprise 作为高级版本,SQL Server Enterprise 版提供了全面的高端数据中心功能,性能极为快捷、虚拟化不受限制,还具有端到端的商业智能 ,可为关键任务工作负荷提供较高服务级别,支持最终用户访问深层数据。 Standard SQL Server...阅读全文

golang-quick-sort

```go package main import ( "fmt" ) func main() { var arr = []int{6, 5, 5, 3, 1, 8, 7, 2, 4, 9} start := 0 end := len(arr) - 1 fmt.Println(arr) QuickSortRecursive(arr, start, end) } func QuickSortRecursive(arr []int, start int, end int) { if start >= end { return } k := arr[end] left := start right := end - 1 for left < right { for arr[left] < k &&...阅读全文

博文 2018-01-06 16:11:24 freedbg

Golang 优化之路——bitset

写在前面 开发过程中会经常处理集合这种数据结构,简单点的处理方法都是使用内置的map实现。但是如果要应对大量数据,使用map占用内存大的问题就会凸显出来。内存占用高又会带来一些列的问题,这里就不展开说了。还有就是,大量数据存放于map,查找的哈希算法消耗也会很高。这时就该考虑对数据结构进行优化。之前浏览awesome-go时发现了一种叫bitset的数据结构,今天就介绍一下它。 bitset 简介 首先这是一个数据结构。从名字set不难发现,这是一个集合的数据结构。bit的含义也比较好懂,通过set是通过bit实现的。如果你需要一个集合,正好集合内的元素都是正整数,那么用这个就没错了。 Example import "github.com/willf/bitset" var b bitset...阅读全文

节操,代码,修养,妹子和其他(Go语言版)

Festival & Fuck, Coding, Inner depth, Sister and Others. 某些文章会提到《为什么Go语言这么不受待见》,《真的没必要浪费心思在 Go 语言上》,《我为什么放弃Go语言》,《Why worse is better》等话题。经常重温这些话题,每次都会有新发现。最忌手里有了一个语言,心里便容不下另一个语言。 忽略细节、语法或者设计,Go语言各种好用。考虑到这些因素,Go被喷出翔都不为过。 本文不打算在细节、语法或者设计上扯淡,只举些例子,说一说如何用Go语言写出还凑合的代码。 类、对象、属性,可能还夹杂着一点设计模式 //代码来自 https://github.com/xgdapg/xconn/blob/master/xconn.go,已验证...阅读全文

doublejump - 快速、简洁的一致性哈希库,Google Jump 算法的改进版

Overview doublejump 的核心是 Google Jump 一致性哈希算法,这个实现弥补了该算法的最大缺点:不能删除节点。 传送门 https://github.com/edwingeng/doublejump Benchmark BenchmarkDoubleJumpWithoutLock/10-nodes 50000000 27.6 ns/op BenchmarkDoubleJumpWithoutLock/100-nodes 30000000 42.7 ns/op BenchmarkDoubleJumpWithoutLock/1000-nodes 30000000 54.1 ns/op BenchmarkDoubleJump/10-nodes 20000000 72.9 n...阅读全文

博文 2018-11-19 19:34:40 edwingeng

【跟着我们学Golang】Go语言全平台安装

学习Go语言的第一步当然是要先安装Go语言的环境,毕竟,没有这个环境咱们什么都做不了。但是在安装环境之前咱们先了解一下Go涉及到的环境变量。这里介绍几个比较常用的Go语言环境变量。 GOROOT Go的安装路径,windows默认安装在'c:/go'路径下,Linux/macos下默认安装在'~/go'路径下 GOPATH Go 语言源码文件、包文件和可执行文件的路径,换句话说,GOPATH指定的是存放项目相关的文件路径 GOOS 电脑的操作系统标识。如Mac下为“darwin“,windows下为”windows“ GOARCH 电脑的处理器架构,如386,arm或amd64 GOBIN 编译文件的安装位置,默认$GOROOT/bin 下面开始今天的正题,安装Go环境 Go语言的安装过程跟...阅读全文

博文 2019-04-15 17:34:41 搜云库技术团队

AC GO GO GO!!!

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/code12hour/article/details/46809457 新学期开始了,要继续哦 小紫书上的一道很烦的题:Uva 11809 Flloating-Point Numbers 要做的: CDOJ 1139 菲波拉契数制升级版 CDOJ 1301 Find the Stuff 未做的: HDU 5179 HDU 4788 ZOJ 3542 搜索: POJ 1606 HDU 5094 HDU 5077 HDU 4394 DP: POJ 3254 Corn Fields POJ 1185 炮兵阵地 CF 165E Compatible Numbers HDU 5045 Contes...阅读全文

博文 2018-08-27 14:31:05 code12hour

Mac下安装golang

前言:越来越多人开始走学习golang之路,包括我身边的一些技术同事给自己“充电”新技术,能在未来工作中更好的生存发展。个人使用Mac环境,下面大概简述一安装过程:一、准备工作官网下载安装包:备注:目前最新稳定版本是v1.9开发工具包又分为安装版和压缩版。安装版是Mac和Windows特有的,他们的名字类似于:go1.9.darwin-amd64.pkggo1.9.windows-386.msigo1.9.windows-amd64.msi安装版,有点傻瓜式安装,环境路径都默认好,操作起来比较简单方便。压缩版的就是一个压缩文件,可以解压得到里面的内容,他们的名字类似于:go1.9.darwin-amd64.tar.gzgo1.9.linux-386.tar.gzgo1.9.linux-amd...阅读全文

Ubuntu 19.10进入开发阶段 正式版将于10月17日到来

Canonical 今日宣布,Ubuntu 19.10 将于 10 月 17 日正式发布(测试版 9 月 26 日放出)。不过在此之前,开发者们已经可以提前参与测试体验。上周,Canonical 向公众测试人员推送了每日构建的 ISO 镜像,意味着 Ubuntu 19.10 已正式进入开发阶段。它将预装 Python 3.7 和 GCC 9 系列编译器,不过资源库中也提供了 Python 3.8 版本。 image Ubuntu 19.10 将于 10 月 17 日正式发布(题图 via Softpedia) 今年 8 月份的时候,我们有望迎来许多组件的升级,比如 Golang 1.12 和 OpenJDK 11 。 此外 Unicode 组件(ICU 软件包)将在 Ubuntu 19.10...阅读全文

博文 2019-05-02 11:34:38 菜鸟飞不动

kubernetes版本号是怎么生成的

通过源码编译kubernetes时,可以使用go build(或go install)单独编译某个组件,例如对于apiserver,可以cd到k8s.io/kubernetes/cmd/kube-apiserver,然后执行: go install -i -v -gcflags='-N -l' 编译结果安装到GOBIN下,即GOBIN/kube-apiserver,使用这种方式编译时有一个小问题,版本号是一段奇怪的字符串: kube-apiserver --version Kubernetes v0.0.0-master+$Format:%h$ 在遇到一些需要依赖kubernetes版本号的场景就会有问题,例如使用helm安装chart时,有些chart对kubernetes版本号有要求,就...阅读全文

配置Sia开发环境

(以 Ubuntu 桌面版开发环境为例)步骤1: 安装Go语言编译器 sudo apt install golang-go 上述命令在Ubuntu 17.04下默认将安装1.7版本的Go编译器. 安装完毕后可以运行 go version查看编译器版本号. 步骤2: Hello world 程序测试创建任意目录以便分类存放测试程序, 然后在自己新建的目录下创建一个测试程序, 这里我们新建一个文件并保存为 hello.go, 内容如下: package main import "fmt" func main(){ fmt.Println("hello world\n") } 进入Linux终端窗口, cd命令切换到 hello.go 所在的目录下, 输入go build命令编译源代码, 得到一个...阅读全文

博文 2017-07-04 03:06:34 阿群1986

golang 关于rabbmitmq 的简易连接池

说明:网上找了一圈好像没有rabbmitmq连接池的维护比较好的包,索性按照整理出来的自己写了一个简易版的,希望各位大神继续完善,目前只是实现了连接的一部分,具体tabbmitmq 的操作 按照 amqp的说明操作即可这里有大部分的ampq的实例https://blog.csdn.net/lastsweetop/article/details/91038836 /*************************************************** * @Time : 2019/11/21 6:46 下午 * @Author : ccoding * @File : rabbmitmq * @Software: GoLand **************************...阅读全文

博文 2019-11-22 15:54:52 ccoding

HyperLedger/fabric1.0.0正式版安装部署(Ubuntu版)

操作系统:Ubuntu 16.041、安装dockerapt-getinstall-ydocker.io2、安装docker-composeapt-getinstall-ydocker-compose3、安装gocd /usr/local/ wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz解压缩,解压后文件夹是go创建go的根目录,并修改配置文件mkdir/opt/gopathvi /etc/profile加入下面内容exportPATH=$PATH:/usr/local/go/binexportGOPATH=/opt/gopath使配置立即生效source/etc/profile4、下载fabric源...阅读全文

博文 2018-06-19 15:34:44 区块链技术潮

golang[43]-blockchain-serialize

真实比特币序列化1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374package mainimport ( "bytes" "encoding/binary" "log" "fmt" "encoding/hex" "crypto/sha256")//将类型转化为了字节数组func IntToHex(num int32) []byte{ buff := new(bytes.Buffer)//binary.LittleEndian 小端模式 err:= binary.Wr...阅读全文

博文 2018-12-13 23:35:58 jonson_jackson

Github CI/CD With Travis CI

CI/CD 是什么这里就不多介绍了。下面是我个人使用 GItHub + Travis 集成的 CI/CD 过程总结。 开发语言:golang 开发环境:Ubuntu 18.04 1. 安装 GitHub CI 平台插件。 github 支持很多的CI应用可以跳到 这里进行选择 我这里选择的是 Travis CI 20190903222024.png 点击 Travis CI 选择 下面的 Open Source (提供免费版),并点击 Install it for free。 如下图: 20190903222237.png 2. 选择 github repositories 接着根据页面的步骤接着执行安装插件操作即可。最后在GitHub的 settings->Applications 中找到...阅读全文

LINUX, GO GO GO!

计算机组成:CPU,存储设备,I/O设备,内存 linux发行版:slackware:SUSE Linux Enterprise Server (SLES)OpenSuse桌面debian: ubuntu, mintredhat: RHEL: RedHat Enterprise LinuxCentOS:兼容RHEL的格式Fedora:每6个月发行一个新版本ArchLinux:轻量简洁Gentoo:极致性能, 不提供传统意义的安装程序Linux的哲学思想:一切皆文件 在linux系统中,目录,配置文件,硬盘等等都是用文件来表示的 linux命令:pwd:显示当前工作目录echo:回显ifconfig:查看网卡信息tty:查看当前终端startx:切换图形界面export:设置或者显示系统环境变...阅读全文

Go语言入门(十一) 接口编程

接口 接口的定义 接口定义了一个对象化的行为规范 只定义规范,不实现 具体的对象需要实现规范的细节 实践 type 定义接口 interface 接口里面是一组方法签名的集合 type Animal interface { Talk() Eat() Run() } 实现 一个对象只要包含接口中的方法,那么就实现了这个接口 接口类型的变量可以保存实现该接口的任何类型的实例 type Animal interface { Talk() Eat() Run() } type Dog struct { name string } //一个对象只要包含接口中的方法,那么就实现了这个接口 func (d *Dog) Eat() { fmt.Printf("%s is eating\n",d.name) ...阅读全文

博文 2020-04-14 20:33:15 wx5b285b48ed74e

golang快速排序改进版

package main import ( "fmt" "math/rand" ) // 如果数量小于13直接用插入排序 func SortForMerge(arr []int, left, right int) { for i:=left; i<=right; i++ { temp := arr[i] var j int for j=i; j>left && temp < arr[j-1]; j-- { arr[j] = arr[j-1] } arr[j] = temp } } func swap(arr []int,i, j int) { // 数据交换 arr[i], arr[j] = arr[j], arr[i] } func QuickSortX(arr []int, left, ...阅读全文

博文 2019-08-16 18:02:42 发条家的橙子

【跟着我们学Golang】Go语言全平台安装

学习Go语言的第一步当然是要先安装Go语言的环境,毕竟,没有这个环境咱们什么都做不了。 但是在安装环境之前咱们先了解一下Go涉及到的环境变量。 这里介绍几个比较常用的Go语言环境变量。 GOROOT Go的安装路径,windows默认安装在'c:/go'路径下,Linux/macos下默认安装在'~/go'路径下 GOPATH Go 语言源码文件、包文件和可执行文件的路径,换句话说,GOPATH指定的是存放项目相关的文件路径 GOOS 电脑的操作系统标识。如Mac下为“darwin“,windows下为”windows“ GOARCH 电脑的处理器架构,如386,arm或amd64 GOBIN 编译文件的安装位置,默认$GOROOT/bin 下面开始今天的正题,安装Go环境 Go语言的安装过...阅读全文

博文 2019-04-17 21:34:41 搜云库技术团队

golang使用json格式实现增删查改

需求和思路 在一般的小项目或者一个小软件,例如客户端之类的小程序中,可能会需要数据的持久化.但是使用一般的数据库(Mysql)之类的不合适.使用sqlite3这种嵌入式的是个较好的方法,但是Go语言中sqlite3的库是C语言的,Cgo不支持跨平台编译.正是由于这种需求,才想到使用json格式将数据直接保存在文件中.具体的思路是怎么样呢? 在Go语言中如果要将数据转化成json格式的话,有两种格式 struct 和 map. 如果同时需要增删查改功能的话,将map作为中间格式是比较合适的.接下来我们就来实现它. 查询操作 这种操作的实现比较简单,直接将文件中的数据读取出来,使用json库反序列化就可以了. 代码如下 : type Product struct { Name string `j...阅读全文

博文 2020-05-21 11:32:45 xingyys

golang实现简化版桶算法

/** * 简化版桶算法 * 通过一维数组保存对应数字在一维数组中出现的个数,然后遍历一维数组达到排序的效果 * 这里一位数组是排序列表的范围,必须10以内的数字列表排序, 则一维数组大小为11 (N+1) * * 涉及知识点: * @随机数功能 * @时间处理和格式化 */ package main import ( "fmt" "math/rand" "time" ) func main() { var scoreList [11]int score := [5]int{5, 3, 5, 2, 8} for _, v := range score { scoreList[v]++ } fmt.Println(scoreList) var result []int // fmt.Print...阅读全文

博文 2020-05-25 03:32:49 全栈运维

维基链WICC | 项目进展周报第27期(3.18~3.24)

技术&产品周报应用建设维基时代APP v1.2.0发布:①维基时代国际版上线。(100%)②维基时代钱包更换新节点。(100%)③维基时代:任意第三方应用可调起维基时代统一签名接口,进一步提升开发者友好性。④维基时代“发现”版块上线。⑤用户行为数据统计计划上线。T2D2建设CTO陈晓东在CSDN平台直播分享《区块链技术架构与应用架构》,共119人参与直播答疑环节。完成Baas平台智能合约链上数据查询接口。 (100%)为海外开发者团队提供智能合约开发技术支持。(80%)为提升开发者开发效率的智能合约IDE工具 前端开发中。(50%)WRC20标准的智能合约demo持续优化。 (50%)区块链浏览器原型设计。(50%)公链建设解决golang钱包库投票接口相关问题。(100%)升级签名算法以提...阅读全文

博文 2019-03-26 13:34:41 维基区块链

Golang之go module开发系列二--使用伪版本和GoCenter

Go模块已经为Go开发带来了秩序,但也存在一些潜在的混乱。管理模块尤其是伪版本可能很困难,尤其是在要进行一些最新更改的情况下。 JFrog GoCenter是一个免费的版本话棋模块仓库,现在它包含了一些重要的更新,可以帮助你坚持这个最佳实践。首先让我们看看伪版本是如何工作的,以及您可以期望从这些更改中得到什么。我们还提供了一些指导,让您在升级到1.13或更高版本时保持Go的构建工作。 Go 的模块版本化 对Go模块进行版本化是一个关键特性,它为开发人员提供了一种方法来确保他们的应用程序使用他们想要的依赖项。在对模块进行版本控制时,应用程序可以指定依赖的模块版本,因为我们知道模块版本与其他组件运行时兼容问题。 Go模块版本是通过在底层源存储库中标记其修订来分配的。go命令使用标准形式vX.Y....阅读全文

博文 2020-04-25 04:33:13 JFrog中国

2-1、Centos7上Docker的bug

Cannot ssh into a running pod/container – rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container process caused “process_linux.go:110: decoding init error from pipe caused \“read parent: connection reset by peer\“” command terminated with exit code 126 #21590 一、Bug的影响 如果你使用的是 CentOS7,需要用到 kubectl exec ...阅读全文

博文 2020-05-11 19:32:47 xinput

Golang之go module开发系列二--使用伪版本和GoCenter

Go模块已经为Go开发带来了秩序,但也存在一些潜在的混乱。管理模块尤其是伪版本可能很困难,尤其是在要进行一些最新更改的情况下。JFrog GoCenter是一个免费的版本话棋模块仓库,现在它包含了一些重要的更新,可以帮助你坚持这个最佳实践。首先让我们看看伪版本是如何工作的,以及您可以期望从这些更改中得到什么。我们还提供了一些指导,让您在升级到1.13或更高版本时保持Go的构建工作。Go 的模块版本化对Go模块进行版本化是一个关键特性,它为开发人员提供了一种方法来确保他们的应用程序使用他们想要的依赖项。在对模块进行版本控制时,应用程序可以指定依赖的模块版本,因为我们知道模块版本与其他组件运行时兼容问题。Go模块版本是通过在底层源存储库中标记其修订来分配的。go命令使用标准形式vX.Y.Z的语义...阅读全文

博文 2020-04-25 01:32:56 JFrog杰蛙科技

golang准备

Go 环境变量export GOROOT=$HOME/goexport PATH=$PATH:$GOROOT/binexport GOPATH=$GOROOT/src:$HOME/Applications/Go安装目录清单/bin:包含可执行文件,如:编译器,Go 工具/doc:包含示例程序,代码工具,本地文档等/lib:包含文档模版/misc:包含与支持 Go 编辑器有关的配置文件以及 cgo 的示例/os_arch:包含标准库的包的对象文件(.a)/src:包含源代码构建脚本和标准库的包的完整源代码(Go 是一门开源语言)/src/cmd:包含 Go 和 C 的编译器和命令行脚本文档查看go doc fmt其它工具go install 是安装 Go 包的工具。主要用于安装非标准库的包文件...阅读全文

博文 2020-04-01 11:33:02 剧终的开始

揭秘!containerd 镜像文件丢失问题,竟是镜像生成惹得祸

导语 作者李志宇,腾讯云后台开发工程师,日常负责集群节点和运行时相关的工作,熟悉 containerd、docker、runc 等运行时组件。近期在为某位客户提供技术支持过程中,遇到了 containerd 镜像丢失文件问题,经过一系列分析、推断、复现、排查,最终成功找到根因并给出解决方案。现将整个详细处理过程整理成文分享出来,希望能够为大家提供一个有价值的问题处理思路以及帮助大家更好地理解相关原理。 containerd 镜像丢失文件问题说明 近期有客户反映某些容器镜像出现了文件丢失的奇怪现象,经过模拟复现汇总出丢失情况如下: 某些特定的镜像会稳定丢失文件; “丢失”在某些发行版稳定复现,但在 ubuntu 上不会出现; v1.2 版本的 containerd 会文件丢失,而 v1.3 不...阅读全文

博文 2020-05-22 12:34:22 腾讯云原生