docker镜像制作必备技能
正文
使用过docker的都知道dockerfile,其用于定义制作镜像的流程,由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。可参考往期文章学习:docker基础知识整理
有时候,我们想在原有镜像基础上修改、增加文件,由于国内网络原因,重新制作镜像会很慢,...[2019/10/16]
这可能是世界上最高级的广告拦截程序!
前言
大渣好,我系古天咯,我是渣渣辉,给大渣介笑个敲好玩的游系,汤碗拦月,一过你煤油王过的船心版本,几虚三昏中,给咧带来不一酿的赶脚,开菊一八虾居刀。看一刀,刷一连,装呗不发一昏钱,奶,跟我一器看。
在这广告满天飞的年代,相信大家对这个台词并不陌生!当然还有更恶心的,某大型知名技术...[2019/10/16]
如何批量删除k8s资源对象
本文首发于公众号【我的小碗汤】扫描文末二维码关注,一起交流学习
在云平台开发、中间件容器化时,经常会遇到批量删除k8s资源对象的需求,下面记录一下kubectl和golang发送删除pvc、pv、pod请求的例子,便于后续学习查阅
kubectl发送删除请求
根据label批量删...[2019/10/16]
采坑指南——k8s域名解析coredns问题排查过程
正文
前几天,在ucloud上搭建的k8s集群(搭建教程后续会发出)。今天发现域名解析不了。
组件版本:k8s 1.15.0,coredns:1.3.1
过程是这样的:
首先用以下yaml文件创建了一个nginx服务
apiVersion: v1
kind: Service
met...[2019/10/16]
k8s使用Job执行任务失败了怎么办
Kubernetes 中使用 Job 和 CronJob 两个资源分别提供了一次性任务和定时任务的特性,这两种对象也使用控制器模型来实现资源的管理,我们在这篇文章来介绍Job执行如果失败了会怎么样呢?
修改job-fail.yaml,故意引入一个错误:
Never
如果将 rest...[2019/10/16]
一次socket.error: [Errno 99] Cannot..报错排查
今天在Ucloud国际版的机器上配置某个不可描述的服务时,遇到了 socket.error: [Errno 99] Cannot a ign requested addre 的错误,详细如下:
[root@liabio ~]# docker logs c0c34ba49967
20...[2019/10/16]
利用procedure批量插入数据
正文
??要求在页面查询到5000条数据,为了方便插入,准备用shell脚本写curl命令调用自己写的代码接口,但是速度慢,而且写的时候遇到点儿小问题,故用sql语句写了这个功能
??由于operationlog表中的ts字段为13位的时间戳,所以采用了截取的方式。
DROP TABL...[2019/10/16]
k8s中负载均衡器【ingress-nginx】部署
在Kubernetes中,服务和Pod的IP地址仅可以在集群网络内部使用,对于集群外的应用是不可见的。为了使外部的应用能够访问集群内的服务,在Kubernetes 目前 提供了以下几种方案:
NodePort
LoadBalancer
Ingre
本节主要就ingre 和i...[2019/10/16]
golang中之strconv包的具体使用方法golang中之strconv包的具体使用方法
在编程过程中,我们常常需要用到字符串与其它类型的转换,strconv包可以帮我们实现此功能。
1.string -> int
使用方法:func Atoi(s string) (i int, err error)
测试代码:
func Atoi(s strin...[2019/10/15]
windows 下安装beegowindows 下安装beego
好久没写博客了,最近忙于一些杂事,看见有几个博友留言了,未能及时回复,稍后晚点回复诸位博友。不多说了,windows安装beego(请先确保git环境已安装并设置了git环境变量。这个简单网上很多教程了)
1、beego 的安装
go get github.com/astaxi...[2019/10/14]
golang之range用法
range表达式迭代语法
range在go中主要是用来做迭代用的,它可以迭代:array,slice,string,map,channel。但是在迭代的过程中有些注意事项是需要牢记的,否则在实际使用过程中可能出现和你预期不符合的问题,而且很难排插到。
语法
...[2019/10/14]
kubernetes垃圾回收器GarbageCollector Controller源码分析(二)
kubernetes版本:1.13.2
接上一节:kubernetes垃圾回收器GarbageCollector Controller源码分析(一)
主要步骤
GarbageCollector Controller源码主要分为以下几部分:
monitors作为生产者将变化的资源...[2019/10/14]
什么是线程调度器(Thread Scheduler)和时间分片(Time Slicing )?什么是线程调度器(Thread Scheduler)和时间分片(Time Slicing )?
线程调度器是一个操作系统服务,它负责为 Runnable 状态的线程分配 CPU 时间。
一旦我们创建一个线程并启动它,它的执行便依赖于线程调度器的实现。同上一个问题,线程调度并不受到 Java 虚拟机控制,所以由应用程序来控制它是 更好的选择(也就是说不要让你的程序依赖于线程的优先级)...[2019/10/14]
Springboot之初入江湖
Hello,各位小伙伴大家好,我是小栈君。
今天的分享主题是关于Springboot主题分享,其实在写这个系列主题之前有想过一些关于分享技术的顺序问题,因为我在创建“IT干货栈”这个公众号之初就是想要分享关于后端技术的一些干货。
想要各位感兴趣的小伙伴都能够学习到或是能够温故知新一些...[2019/10/14]
[开源]如何使用goapp写你的后台管理系统_golang[开源]如何使用goapp写你的后台管理系统_golang
简析
基于 Gin + GORM + Casbin + vue-element-admin 实现的权限管理系统。
基于Casbin 实现RBAC权限管理。
前端实现: vue-element-admin。
开源地址见文末。
原由
...[2019/10/14]
mysql中间件分享(Mysql-prxoy,Atlas,DBProxy,Amoeba,cobar,TDDL)
hello 各位小伙伴大家好,我是小栈君,这期我们分享关于mysql中间件的研究,也就是数据层的读写分离和负载均衡,希望能够在实际的应用中能够帮助到各位小伙伴。
下期我们将继续分享go语言的系列讲解,以及以后的生活中我们也将会分享系列课程包括大数据、人工智能、区块链等等,希望大家能够多...[2019/10/14]
面试|简单描述MySQL中,索引,主键,唯一索引,联合索引 的区别,对数据库的性能有什么影响(从读写两方面)
索引是一种特殊的文件(InnoDB 数据表上的索引是表空间的一个组成部分),它们 包含着对数据表里所有记录的引用指针。
普通索引(由关键字 KEY 或 INDEX 定义的索引)的唯一任务是加快对数据的访问速度。
普通索引允许被索引的数据列包含重复的值。如果能确定某个数据列将只包含彼 ...[2019/10/12]
Go语言系列教程(十二)之函数完结篇
Hello,各位小伙伴大家好,我是小栈君。上一期我们讲到了关于函数的有参、无参、匿名函数,本期我们分享一下关于go语言函数类型、匿名函数和闭包的概念和实战。闲话不多说,立马开始分享。
在Go语言中,函数也是一种数据类型,我们可以通过type来定义它,它的类型就是所有拥有相同的参数,相同...[2019/10/12]
浅谈Go中数字转换字符串的正确姿势浅谈Go中数字转换字符串的正确姿势
在许多语言中,你可以轻松地将任何数据类型转换为字符串,只需将其与字符串连接,或者使用类型转换表达式即可。但是,如果你在Go中尝试执行似乎很明显的操作(例如将int转换为字符串),你不太可能获得预期的效果。
比如下面:
string(120)
你期望返回的结果是什么?如果你有...[2019/10/12]
Redis的持久化机制是什么?各自的优缺点?
Redis 提供两种持久化机制 RDB 和 AOF 机制:
1、RDBRedis DataBase)持久化方式:是指用数据集快照的方式半持久化模式) 记录 redis 数据库的所有键值对,在某个时间点将数据写入一个临时文件。
持久化 结束后,用这个临时文件替换上次持久化的文件,达到数...[2019/10/10]
Go语言入门教程(十一)
原创: IT干货栈
Hello,各位小伙伴大家好,我是小栈君,昨天讲了关于go语言的函数的定义和自定函数的部分种类,我们今天接着上期所讲的内容继续进行分享。
一、函数之无参有返回值
有返回值的函数,必须有明确的终止语句,否则会引发编译错误。所以在有返回值的函数中需要使用关键字 ...[2019/10/10]
面试题解析|ACL权限控制机制
ACL(Acce Control List)访问控制列表
包括三个方面:
一、权限模式(Scheme)
1、IP:从 IP 地址粒度进行权限控制
2、Digest:最常用,用类似于 username:pa word 的权限标识来进行权限配 置,便于区分不同应用来进行权限控制
...[2019/10/10]
Go语言入门教程(十)之函数
Hello 各位小伙伴大家好,我是小栈君,假期一眨眼就过去了。不知道大家玩的是否开心呢?
上次我们讲到了关于Go语言的流程控制,小栈君也希望小伙伴跟着小栈君一步一个脚印的敲一下代码,相互进步。本期我们要分享的Go语言系列之函数。
一、什么是函数?
函数是指一段在一起的、可以做某一件...[2019/10/10]
解决Go中使用seed得到相同随机数的问题
1. 重复的随机数
废话不多说,首先我们来看使用seed的一个很神奇的现象。
func main() {
for i := 0; i < 5; i++ {
rand.Seed(time.Now().Unix())
fmt.Println(rand.I...[2019/10/9]
golang学习之路
目录
go语言介绍
开发环境准备
go语言基础
Go语言常用标准库
数据库相关
前端相关
web开发
go语...[2019/10/9]
[终极巨坑]golang+vue开发日记【一】,环境搭建篇[终极巨坑]golang+vue开发日记【一】,环境搭建篇
写在前面
这个golang+vue大部分的内容是基于bydmm(橙卡)大佬的视频学来的,我在这里只是做一下个人开发的笔记,就是图一个乐,毕竟我只是个应届毕业生,如果真的要学请:bydmm的b站空间。
正式开始
这篇内容适合几乎没什么基础的新人来学这来方面的内容,但是起码得有其他语言的基...[2019/10/8]
GoLang 开山篇
GoLang 开山篇
1、Golang 的学习方向
Go语言,我们可以简单的写成Golang.
2、GoLang 的应用领域
2.1 区块链的应用开发
2.2 后台的服务应用
2.3 云计算/云服务后台应用
3、学习方法的介绍
建立一个整体框架、然后细节
在实际工作中,要培养用到...[2019/10/8]
golang1.13中重要的新特新
本文索引
语言变化
数字字面量
越界索引报错的完善
工具链改进
GOPROXY
GOSUMDB
GOP...[2019/9/29]
[系列] go-gin-api 路由中间件 - Jaeger 链路追踪(六)
目录
概述
Jaeger 部署
准备测试服务
应用示例
运行
效果
API 源码地址
Service 源码地址
...[2019/9/29]
go语言圣经知识点一
一、第一章
命令行参数可通过os.Args访问,os.Args是切片
切片遵循左闭右开原则,如sl[1:3]不包含下标为3的元素
for循环两种方式
方式一:
for initial; condition; post {
}
三部分中任一部分都可以省略
方式二:
for idx, ...[2019/9/27]
Go微服务容错与韧性(Service Resilience)
Service Resilience是指当服务的的运行环境出现了问题,例如网络故障或服务过载或某些微服务宕机的情况下,程序仍能够提供部分或大部分服务,这时我们就说服务的韧性很强。它是微服务中很重要的一部分内容,并被广泛讨论。它是衡量服务质量的一个重要指标。Service Resilien...[2019/9/27]
阿里云CentOS服务器下安装Golang1.13并配置代理
注:root账户或添加sudo命令运行。
下载到/usr/local位置并解压
cd /usr/local
wget https: tudygolang.com/dl/golang/go1.13.linux-amd64.tar.gz
tar -xzvf go1.13.linux-amd...[2019/9/25]
golang开始篇
一 First Golang
1.1 需求
第一个程序hello.go,可以输出"hello golang"
1.2 开发步骤
开发这个程序时,我们的目录结构怎么处理(让自己或者别人开起来更加清晰舒服)
结构如下
&...[2019/9/24]
GoCN每日新闻(2019-09-23)
1. 查看 Go 的代码优化过程 http: xargin.com/go-compiler-opt
2. go 学习笔记之仅仅需要一个示例就能讲清楚什么闭包 https: egmentfault.com/a/11900...[2019/9/24]
golang面对对象
...[2019/9/24]
Go语言【数据结构】指针知多少?Go语言【数据结构】指针知多少?
指针
本章围绕字符串、数字、数组、切片、map、channel、结构体与指针赋值及函数传参的应用剖析
字符串
字符串本身也是StringHeader的结构体,包含Data指针与字符串长度,如下
type StringHeader struct {
...[2019/9/24]
Go微服务全链路跟踪详解
在微服务架构中,调用链是漫长而复杂的,要了解其中的每个环节及其性能,你需要全链路跟踪。 它的原理很简单,你可以在每个请求开始时生成一个唯一的ID,并将其传递到整个调用链。 该ID称为CorrelationID1,你可以用它来跟踪整个请求并获得各个调用环节的性能指标。简单来说有两个问题需...[2019/9/23]
GoLang中面向对象的三大特性GoLang中面向对象的三大特性
有过 JAVA 语言学习经历的朋友都知道,面向对象主要包括了三个基本特征:封装、继承和多态。封装,就是指运行的数据和函数绑定在一起,JAVA 中主要是通过 super 指针来完成的;继承,就是指 cla 之间可以相互继承属性和函数;多态,主要就是用统一的接口来处理通用的逻辑,每个 cl...[2019/9/23]
golang基础语法golang基础语法
golang语言的常量定义:
const filename="abc.txt";
const filename String="abc.txt"
golang语言的枚举类型:
...[2019/9/23]
GO 全面解析 json tag 篇
在处理json格式字符串的时候,经常会看到声明struct结构的时候,属性的右侧还有反引号括起来的内容。形如:
1 type User struct {
2 UserId int `json:"user_id" bson:"user_id"`
3 U...[2019/9/18]
Golang 调用 C/C++,例子式教程
大部分人学习或者使用某样东西,喜欢在直观上看到动手后的结果,才会有继续下去的兴趣。
前言:
Golang 调用 C/C++ 的教程网上很多,就我目前所看到的,个人见解就是比较乱,坑也很多。希望本文能在一定程度上,做到更通俗明了。
下面 golang 简称 go , 一如既往,少说废...[2019/9/18]
Go Modules使用教程
Go Modules 不完全教程
文章转载自公众号 Golang 成神之路 , 作者 L
Go Modules 是 Golang 官方最近几个版本推出的原生的包管理方式,在此之前,社区也不乏多种包管理方案。在讨论 Go Modules 之...[2019/9/18]
Golang error 的突围Golang error 的突围
目录
error 的困局
尝试破局
Errors are just values
handle not just check errors
Only handle err...[2019/9/18]
[系列] go-gin-api 路由中间件 - Jaeger 链路追踪(五)[系列] go-gin-api 路由中间件 - Jaeger 链路追踪(五)
目录
概述
如何设计日志记录?
开源工具
Jaeger 架构图
Jaeger Span
Jaeger 部署
Jaeger 端口
...[2019/9/17]
Go 防止 goroutine 泄露的方法
概述
Go 的并发模型与其他语言不同,虽说它简化了并发程序的开发难度,但如果不了解使用方法,常常会遇到 goroutine 泄露的问题。虽然 goroutine 是轻量级的线程,占用资源很少,但如果一直得不到释放并且还在不断创建新协程,毫无疑问是有问题的,并且是要在程序运行几天,甚至更长的时间...[2019/9/17]
Golang读取并修改非主流配置文件
今天工作中碰到的问题,要求修改此配置文件,没看出来是什么格式,用了下面的思路:
mysql {
# If any of the files below are set, TLS encryption is enabled
...[2019/9/16]
Go从入门到放弃
第1篇 Go语言介绍
001 为什么你应该学习Go语言?
第2篇 开发环境准备
002 从零开始搭建Go语言开发环境
003 VS Code配置Go语言开发环境
第3篇 Go语言基础
004 Go语言基础之变量和常量
005 Go语言基础之基本数据类型
006 Go语言基...[2019/9/16]
Go语言【数据结构】切片
切片
简介
简单地说,切片就是一种简化版的动态数组。Go 数组的长度不可改变,而切片长度是不固定,切片的长度自然也就不能是类型的组成部分了。数组虽然有适用它们的地方,但是数组的类型和操作都不够灵活,因此在Go代码中数组使用的并不多。而切片则使用得相当广泛,理解切片的原理和用法是...[2019/9/16]
[译] Go语言测试进阶版建议与技巧[译] Go语言测试进阶版建议与技巧
阅读本篇文章前,你最好已经知道如何写基本的单元测试。本篇文章共包含3个小建议,以及7个小技巧。
建议一,不要使用框架
Go语言自身已经有一个非常棒的测试框架,它允许你使用Go编写测试代码,不需要再额外学习其它的库或测试引擎。关于断言方面的帮助函数,你可以看看这个 testing,或者...[2019/9/16]
golang module 在 spacemcs 中的配置
概述
golang 官方的包管理从 1.11 版本就开始支持了, 之前尝试了几次, 效果都不理想, 就一直用 dep 来管理 package.
最近 1.13 版本发布了, 使用 go module 的官方管理方式越来越多, dep 也早就不在继续开发了. 鉴于此, 是时候把 gola...[2019/9/12]