备战CKA每日一题——第1天 | CKA简介、考纲、Daemonset知识知识点初探

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 这两年 Kubernetes 已经成为容器编排的事实标准,预计未来两年内将全面普及,现在企业招这块人才需求也越来越大,工资也是很高的,未来这块的发展空间也很大。 最近正准备备考CKA,CKA是什么?有些人可能还不知道,这里简单普及一下: CKA 证书是云原生计算基金会 CNCF 组织的,考察的是你是否具备足够管理 Kubernetes 集群的必备知识。考试形式是上机直接在集群上操作,限时 3 小时,非常考验个...阅读全文

备战CKA每日一题——第2天 | Daemonset、对接存储CSI知识点

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 接上一篇备战CKA每日一题——第1天 昨日考题 以下 Daemonset yaml 中,哪些是正确的?(多选) A. apiVersion: apps/v1 kind: DaemonSet metadata: name: fluentd-elasticsearch namespace: default labels: k8s-app: fluentd-logging spec: selector: match...阅读全文

备战CKA每日一题——第3天 | 对接CSI存储知识

本活动在微信公众号【我的小碗汤】上举行,这里参与答题无效哦! 昨日考题 在Kubernetes PVC+PV体系下通过CSI实现的volume plugins动态创建pv到pv可被pod使用有哪些组件需要参与? A. PersistentVolumeController + CSI-Provisoner + CSI controller plugin B. AttachDetachController + CSI-Attacher + CSI controller plugin C. Kubel...阅读全文

后端开发人员的所需的技术路线图,看看哪些模块你还缺失?

欢迎关注文章系列 ,关注我 《提升能力,涨薪可待》 《面试知识,工作可待》 《实战演练,拒绝996》 也欢迎关注我的公 众 号:Ccww笔记,原创内容第一时间推送!! 如果此文对你有帮助、喜欢的话,那就点个赞呗,点个关注呗! 现在的 Web 开发与几年前完全不同了,有很多不同的东西可以轻易地把人拒之门外,这也是我们决定制作这个循序渐进指南的原因之一,并让任何人可以清楚地了解他们在 web 开发中扮演的角色。 可以在下面的图片中找到详细的路线图,而我也将在下面的描述中解释每一个步骤。 在开始之前,...阅读全文

备战CKA每日一题——第4天 | 熟练掌握kubectl命令进行创建资源对象操作,并从源码进行解析

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 昨日考题 通过单个命令创建一个deployment并暴露Service。deployment和Service名称为cka-1120,使用nginx镜像, deployment拥有2个pod 昨日答案 [root@liabio ~]# kubectl run cka-1120 --replicas 2 --expose=true --port=80 --image=nginx kubectl run --gen...阅读全文

golang程序/POSTMAN访问https链接无响应

https中证书起到身份验证和加密传输的作用. 后来证实是证书问题,访问站点证书有问题,无法确认所以无法建立连接并得到响应. golang如何不确认证书 以post方式为例,get类同 package main import ( "crypto/tls" "fmt" "io/ioutil" "net/http" "net/url" "strings" ) func main() { // InsecureSkipVerify 跳过证书确认 client := &http.Client{ Tran...阅读全文

2019 年 Python、Golang、Java、C++、Rust 该如何选择?

Python、Golang、Java、C++、Rust这几门编程语言都是2019非常火热的语言,这几门语言各有特点各有优劣,因此很多初学者总是纠结于如何在这五种语言间选择。实践出真知,下面分别推荐几个 Gitee 上的 Python、Golang、Java、C++、Rust 语言的优质开源项目,希望通过这十个项目帮助大家深入了解这五种语言:)Python:推荐项目1、web代码部署工具 walle-web walle 让用户代码发布终于可以不只能选择 Jenkins,支持各种web代码发布,ph...阅读全文

简书 2019-11-21 20:02:51

要优雅退出吗?dubbogo给你

dubbogo Apache Dubbo是由阿里开源的一个RPC框架,而dubbogo则是相对应的go语言版本: 之前dubbogo一直没有优雅退出的机制,终于有小伙伴忍不住了强烈要求我们实现这个部分。艰难摸鱼了两周之后,我才把这个搞完,该功能的PR是https://github.com/apache/dubbo-go/pull/255。 当我们讨论优雅退出的时候,最基本的要求是自动无损停机。它同时强调了自动和无损两个方面。 首先是自动,而与自动对应的则是手动了。手工介入的缺陷是显而易见的,它要...阅读全文

Golang学习笔记-Goroutines

并发 首先 go 是一个实现并发的语言,并非并行 并发 vs 并行 并行是在同一时间内,可以同时执行多个任务;并发则是在一个时间片内只能执行单一任务,并把一段时间切分为多个时间片,不同时间片执行不同任务,在宏观上看像是在一段时间内同时执行了多个任务。如下图: currency 并行不会总是导致更快的执行时间。这是因为并行运行的组件可能必须相互通信。在组件在多个内核中并行运行的情况下,此通信开销很高。因此,并行程序并不总是能够缩短执行时间 在golang 中使用 goroutines 和 chan...阅读全文

GoLang使用Redis

1、Redis 优势 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作 2、安装Redis 可前往官网:https://redis.io/,redis的安装、启动这里不多做介绍 3、安装redigo开源库 可使用命令行自动安装或者到github下载手动安装 go get github.com/garyburd/re...阅读全文

go mod 依赖管理的心路历程

在用kubebuilder写一个k8s operator defaultvm,主要是串起ovn网络和虚机的创建,为用户提供默认可用的虚机。 Kubebuilder 是一个基于 CRD 来构建 Kubernetes API 的框架,可以使用 CRD 来构建 API、Controller 和 Admission Webhook。 代码里面调用了 kubevirt.io/client-go 定义的 virtualmachine,使用go mod进行依赖管理,默认引用了 kubevirt.io/clie...阅读全文

Segmentfault 2019-11-22 03:02:39 manshu

golang 定时器mycron

Golang 实现游戏定时器 刚开始学习golang,发现Go没有游戏里定时器功能,有个cron库实现了golang版的cron功能。 但是里面用了是sort全排序,在游戏里,通常是存在数万个定时器,采用排序算法效率较低, 根据其实现思路,将其改成最小堆实现,同时去掉了一些游戏定时器不需要的内容。 其使用如下: // 创建定时器 c := cron.New() // 启动定时器 c.Start() // 停止定时器 c.Stop() // 延迟调用函数 ...阅读全文

Go语言中文网 2019-11-21 16:14:32 juine

Alpine 的 CGO 问题

Golang 很棒,静态编译十分方便。但是,它也不是 100% 静态编译的,因为它需要依赖glibc ( 标准C运行库 )。 而 Docker 最常用的 Apline 镜像,使用的是 musl 库,并不能愉快的运行 Go 程序 网上大部分教程都是教你,CGO_ENABLED=0 go build -a -installsuffix cgo,使用纯 Go 编译,不用 CGO 链接 glibc ,问题就可以解决了。 但是最麻烦的问题是,你需要引入 C/C++ 库的时候,你并不能禁用 CGO 。 幸好...阅读全文

2020 年,你学的编程语言价值多少?

编程语言是人们指导或控制机器的工具,其开发目的在于让操控机器的过程更加简单和顺畅。正因如此,数百种编程语言应运而生。然而,它们的命运却各不相同。一些语言已不复使用,或将在未来几年淘汰。相应地,一些语言将会被充分使用,还有一些崭新的编程语言正在逐渐被人们所接受。本文选取真实可信的调查、统计数据、搜索结果以及薪资等数据,预测 2020 年编程语言的发展趋势。这篇文章将帮助初学者选择适合自己的入门语言,并指导资深人士在切换语言和继续使用当前语言之间作出选择。 我通过两个表格总结了过去五年间编程语言的潮...阅读全文

为什么区块链是不可篡改的

区块链的数据结构是由包含事务信息的块按远近顺序排列的。块按远近顺序在这个链中链接,每个块都指向前面的块。 区块链通常被视为一个垂直堆栈,第一个块是堆栈底部的第一个块,然后将每个块放在前一个块的顶部。使用堆栈将块依次堆叠的概念可视化之后,我们可以使用一些术语,如“高度”来表示块与第一个块之间的距离;和“top”或“top”表示新添加的块。 每个块头生成一个SHA256加密散列来生成散列值。使用这个散列值,可以标识区块链中相应的块。同时,每个块可以通过其块头的“父块哈希值”字段引用前一个块(父块)。...阅读全文

Segmentfault 2019-11-22 03:02:39 真是很秃ran

认识 Go 语言中的数组

数组是具有相同唯一类型的一组已编号且长度固定的数据项序列。 声明方式 在 Go 语言中,数组的声明方式为 var identifier [len]type。 声明时没有指定数组的初始化值,因此所有的元素都会被自动初始化为默认值 0。 // 声明一个数组 var a1 [5]int 复制代码Go 语言中的数组是值类型,因此还可以用 new 来创建: var a2 = new([5]int) 复制代码new 返回类型的指针,因此 a1 与 a2 的区别在于:a1 的类型为 [5]int,a2 的类型...阅读全文

掘金 2019年11月21日 江不知

Go接口之nil != nil

本文来自“灰子学技术”,原文链接如下所示:https://mp.weixin.qq.com/s/ZBd1UcIJFk_DonkxVNgERA一、引出话题:在开始这个话题之前,我们先看一段代码以及其输出结果,代码如下所示: Output: 从上面的输出结果来看,GetA()返回的类型为*A就算赋值为nil,也不等于nil。看到这里笔者觉得很奇怪,明明是GetA()返回值是nil,为什么nil的判断条件是false呢?二、原因分析:在研究了interface之后,笔者发现了真相,原来Go语言中的in...阅读全文

【TiDB@丰巢】支付平台的迁移之旅

因为本文是我第一次发表在 丰巢技术团队 公众号上,所以在简书上发表只能算是转载。丰巢第一次在生产环境实际使用TiDB,是在2018年,其场景是每天产生一亿条以上数据的推送平台,当时我们还发了一篇文章,被PingCAP官方收录:TiDB at 丰巢:尝鲜分布式数据库。这次,因为实际的项目需要,我们选择了QPS和数据一致性要求更高的支付平台,作为第二个迁移到TiDB上的项目。由于丰巢的所有支付,都会通过该平台产生,所以其稳定性和性能,都是重中之重了,而这次的迁移之旅,也就特别的漫长和曲折。1. 支付...阅读全文

MySQL如何控制用户输错密码尝试次数?

目录 生产环境MySQL死锁如何监控及如何减少死锁发生的概率 MongoDB有哪些优秀特性及适合的场景是什么 GO语言对比其他的编程语言有何优势?实际生产环境如何取舍? 一个大事务,有很多更新,现在被回滚了,但是又着急关机重启,怎么办才好? 如何降低UPDATE/DELETE时WHERE条件写错,或者压根没写WHERE条件带来的影响 MySQL如何控制用户输错密码尝试次数? 一、生产环境MySQL死锁如何监控及如何减少死锁发生的概率 首先,死锁并不是"锁死",死锁是由于两个或两个以上会话锁等待产...阅读全文

Segmentfault 2019-11-22 03:02:38 吕青珊