[Golang]strconv包常用函数笔记解释

strconv strconv.Quote(s string)string -> 返回字符串在go语法下的双引号字面值表示,控制字符和不可打印字符会进行转义(\t,\n等) strconv.QuoteToASCII(s string)string -> 返回字符串在go语法下的双引号字面值表示,除了上面的和非ASCII字符会进行转义 strconv.QuoteRune(r rune)string -> 返回字符r在go语法下的单引号字面值表示,控制字符,不可打印字符会进行转义(\n,\t,\xF...阅读全文

简书 2020-11-26 03:32:46 _小老虎_

goproxy 模块代理,解决 timeout 问题

一、问题复现 执行以下命令: go run main.go 发现报错 go: github.com/astaxie/beego@v1.12.2: Get "https://proxy.golang.org/github.com/astaxie/beego/@v/v1.12.2.mod": dial tcp 34.64.4.17:443: i/o timeout。 此时查看 Go 环境变量,发现 GOPROXY 这个设置的地址很容易断掉,因此需要更换 goproxy,执行下面命令: go env ...阅读全文

简书 2020-11-26 03:32:46 Wonz

一文读懂channel设计

在Go中,要理解channel,首先需要认识goroutine。 一、为什么会有goroutine 现代操作系统中为我们提供了三种基本的构造并发程序的方法:多进程、I/O多路复用和多线程。其中最简单的构造方式当属多进程,但是多进程的并发程序,由于对进程控制和进程间通信开销巨大,这样的并发方式往往会很慢。 因此,操作系统提供了更小粒度的运行单元:线程(确切叫法是内核线程)。它是一种运行在进程上下文中的逻辑流,线程之间通过操作系统来调度,其调度模型如下图所示。 1.png 多线程的并发方式,相较于多...阅读全文

简书 2020-11-26 03:32:45 机器铃砍菜刀s

Linux 运行 go 项目报错:copy_file_range: bad file descriptor

这两天在 Linux 环境部署一个 Go 项目遇到一个报错:copy_file_range: bad file descriptor。网上查找各种方法,花了两天的时间,经过一番折腾后才解决,觉得非常有必要记录一下过程。 一、问题复现 安装完 Go、配置完 Go 环境以及 Beego 框架运行 Go 项目,一直报下面的错: image 期间经过 Go 卸载重装、代码修改等一系列网上查找的解决方法,都无济于事,最终通过降 Go 版本成功运行项目,解决此问题。 二、解决方法 1. Linux 环境卸载...阅读全文

简书 2020-11-26 03:32:40 Wonz

使用client-go连接k8s集群

实验介绍: 使用client-go连接k8s集群,并获取default名称空间下面的Deployment的资源列表 基础环境准备: 本次实验是在ubuntu的操作系统上面安装部署了一个单节点的k8s集群,通过client-go连接集群并操作其资源 1.使用 client-go 在 k8s 集群外操作资源,首先需要通过获取 kubeconfig 配置文件用来建立连接集群 // 声明三个变量 var err error var config *rest.Config var kubeconfig *...阅读全文

51CTO博客 2020-11-25 14:48:43 哆先生

一文读懂Channel设计

在Go中,要理解channel,首先需要认识goroutine。一、为什么会有goroutine现代操作系统中为我们提供了三种基本的构造并发程序的方法:多进程、I/O多路复用和多线程。其中最简单的构造方式当属多进程,但是多进程的并发程序,由于对进程控制和进程间通信开销巨大,这样的并发方式往往会很慢。因此,操作系统提供了更小粒度的运行单元:线程(确切叫法是内核线程)。它是一种运行在进程上下文中的逻辑流,线程之间通过操作系统来调度,其调度模型如下图所示。多线程的并发方式,相较于多进程而言要快得多。但...阅读全文

Segmentfault 2020-11-29 14:32:35 机器铃砍菜刀

2020全新升级版-Google资深工程师深度讲解Go语言

2020全新升级版-Google资深工程师深度讲解Go语言 超清原画 完整无密 MP4格式2020全新升级版-Google资深工程师深度讲解Go语言Go作为专门为并发和大数据设计的语言,在编程界占据越来越重要的地位!不论是c/c++,php,java,重构首选语言就是Go~本次课程特邀谷歌资深工程师,将Go语言使用经验总结归纳,从Go语言基本语法到函数式编程、并发编程,最后构建分布式爬虫系统,步步深入,带你快速掌握Go语言! 适合人群及技术储备要求如果你已经掌握了一门编程语言,想转型Go语言工程...阅读全文

51CTO博客 2020-11-24 21:50:31 mb5fba276727810

六星教育:哪些程序员需要学习GO语言?PHP工程师首当其冲

前段时间工作中遇到一个开发场景,PHP项目里需要使用一个第三方的功能,恰好是有一个用Golong写好的类库,如何实现不同语言之间的通信?一般来说,cat与Golang通信,使用的是单向管道。即:只能从cat向Golang传入数据,Golang输出的数据并没有传回给cat,而是直接输出到屏幕。当PHP与Golang通信时,必须引入双向管道,这样就可以形成php要传数据给Golang,同时Golang也必须把执行结果返回给php的局面。在越来越多的项目开发中,我们经常会用到多种语言,其中PHP与GO...阅读全文

简书 2020-11-25 15:46:49 最新技术分享

Hyperledger Fabric 存储结构

1 基本知识点 1.1 账本数据 记账节点的账本数据存储目录一般是 /var/hyperledger/production/ledgersData/chains/chains 超级账本包含以下元素: 账本编号:快速查询存在哪些账本; 账本数据:实际的区块数据存储; 区块索引:快速查询区块/交易; 状态数据:最新的时间状态数据; 历史数据:跟踪键的历史; 每个Peer节点会维护4个DB,分别是: idStore:存储chainID; stateDB:存储world state; historyDB...阅读全文

简书 2020-11-25 15:46:35 小蜗牛爬楼梯

统一接入层架构的演进

本文系云原生应用最佳实践杭州站活动演讲稿整理。杭州站活动邀请了 Apache APISIX 项目 VP 温铭、又拍云平台开发部高级工程师莫红波、蚂蚁金服技术专家王发康、有赞中间件开发工程师张超,分享云原生落地应用的经验心得,以下是张超《有赞统一接入层架构演进》分享内容。 张超,有赞中间件团队开发工程师,网关、Service Mesh 领域的专家,热衷技术,对 Golang、Nginx、Ruby 语言等有深入的研究。 大家好,我是来自有赞的张超,有赞中间件团队的开发工程师。今天给大家带来有赞接入层...阅读全文

简书 2020-11-25 15:43:23 又拍云

如何用Prometheus监控十万container的Kubernetes集群

概述 不久前,我们在文章《如何扩展单个Prometheus实现近万Kubernetes集群监控?》中详细介绍了TKE团队大规模Kubernetes联邦监控系统Kvass的演进过程,其中介绍了针对规模较大的集群,我们是如何通过修改Prometheus代码来实现横向扩缩容的。经过方案上的改进,Kvass目前已经支持以Sidecar的方式实现Prometheus集群化,而不是修改Prometheus代码。由于方案对社区有一定价值,团队决定将项目开源出来,分享给社区。项目地址 本文首先将给出Promet...阅读全文

简书 2020-11-25 15:42:24 腾讯云原生

代付系统开发(搭建)【支付宝-四大行自动代付】

下载地址 系统图截 系统安装1. CentOS7.2以上系统2. 安装Nginx,将站指向程序中的path/daifu/web目录3. 安装Postgresql,并建创建数据库名称:pay,将Postgres密码修改为:devops,数据库备分见:path/daifu/doc/db.sql4. 运行path/daifu/cmd/main数据服务,及可以正常运行开发技术1. Golang+CentOS+Postgres+Nginx+ReactJS2. 商户API对接文档见doc/dev.html3...阅读全文

简书 2020-11-25 15:34:30 ckakarotto

云原生应用Go语言:你还在考虑的时候,别人已经应用实践

摘要:在近日于上海召开的第六届Gopher China大会上,华为云微服务首席架构师田晓亮分享了《华为云的Go语言云原生实战经验》,讲述如何构建韧性、高可靠、安全的云原生应用系统,并孵化云原生应用开发框架Go chassis,以提升团队开发效能。Gopher China作为国内最权威和最实力干货的Go大会,致力于为广大的Gopher提供一线分享交流机会,也为众多一线互联网公司大咖深入探讨Go语言的应用发展提供契机。在近日于上海召开的第六届Gopher China大会上,华为云微服务首席架构师田晓...阅读全文

Segmentfault 2020-11-29 11:32:35 华为云开发者社区

go-zero 如何扛住流量冲击(二)

本篇文章承接上一篇go-zero 如何扛住流量冲击(一)。上一篇介绍的是 go-zero 中滑动窗口限流,本篇介绍另外一个 tokenlimit ,令牌桶限流。使用const ( burst = 100 rate = 100 seconds = 5 ) store := redis.NewRedis("localhost:6379", "node", "") fmt.Println(store.Ping()) // New tokenLimiter limiter := limit.NewTok...阅读全文

Segmentfault 2020-11-28 22:32:33 kevinwan

市值管理机器人、自动跑k线机器人开发

  市值管理机器人它是通过设置各种参数,来使机器人按照所设定的特定指令进行自动化交易。在达到一个设定的条件后,它可以自动的卖出又或者说买入,不需要你长时间的盯着股盘。自动跑k线机器人则是:1.可以不受约束,在任何一个特定持续的时间以内进行多个交易。2.可以跨多个交易所来进行同时交易,还能以最微小的价格变换来获取最大的利益。3.可以在实行自动化交易的同时记录完整的交易报告和实时情况,并自动结算收益情况,减少损失。4.可以在多个市场上进行不间断的运行,在达到预设参数后会持续运行,大大增加了利润收益。...阅读全文

Go语言中文网 2020-11-25 11:59:38 T13823115967

区块链应用场景有哪些?区块链应用开发

在“十四五规划”后,区块链正式被国家纳入“新基建”范围,各行各业的应用场景纷纷落地。就目前国内已有一部分区块链产业先行者开始跨入金融、物流、版权、政务、溯源、物联网等多个应用场景范围内。 1.区块链应用场景有哪些? 在新基建下,区块链技术正打造全新一代物联网数据平台。在目前已有多个区块链应用落地,比如: 1.供应链金融、拓展新的金融业务,减少风险; 2.供应链溯源、以此来树立公民信任力,构建一个公正透明的交易过程; 3.数字资产、有易于防伪、管理,并打破地域之间的限制的特点...阅读全文

Go语言中文网 2020-11-25 11:58:42 T13823115967

2020-11-24:n个物品每个物品都有一定价值,分给2个人,怎么分两个人的价值差最小?

福哥答案2020-11-24: 背包问题:背包容量是SUM/2. 每个物体的体积是数的大小,然后尽可能的装满背包。 golang代码如下: package main import ( "fmt" ) //https://blog.csdn.net/qq_26222859/article/details/69335310?utm_source=blogxgwz4 ;背包问题变种:将数组分成两部分使得两部分的和的差最小 func main() { //vec := []int{1, 2, 3, 4,...阅读全文

简书 2020-11-25 02:32:45 福大大架构师每日一题

Protobuf的安装使用

在gRPC开发过程中,我们常常需要与Protobuf打交道,而在编写了.proto文件后,还需要用到一个编译器那就是protoc。protoc是Protobuf的编译器,是用C++编写的,其主要功能就是编译.proto文件。1.安装protoc 编译器下载地址:https://github.com/google/protobuf/releaseswindow:下载: protoc-3.3.0-win32.zip解压后将bin目录下的protoc.exe复制到GOPATH/bin下,GOPATH/...阅读全文

简书 2020-11-25 02:32:44 就是耍帅