5步实现规模化的Kubernetes CI/CD 流水线

一、背景在近几年,Kubernetes迅速成为了容器编排的事实上的开源标准。与虚拟机不同,Kubernetes在抽象化基础架构的同时可靠地大规模编排容器,这可以帮助开发人员将工作负载与基础架构的复杂性分开。Kubernetes是CI/CD自动化的理想选择,因为它提供了许多内置功能,这些功能使应用程序部署实现标准化和可重用,提高了开发人员的生产力,并加快了云原生应用程序的采用。Platform9是成立于2013年的云服务提供商,能够提供业界唯一由SaaS管理的混合云解决方案,使用户能够快速采用云技...阅读全文

Go语言中文网 2020-03-27 18:36:31 JFrogChina

后端开发使用pycharm的技巧

目录 后端开发使用pycharm的技巧 1、使用说明 2、database 3、HTTP Client 1、使用说明 首先说明,本文所使用的功能为pycharm专业版所支持,其他版本如社区版,教育版,则不一定支持。 作为一名后端开发,我猜你的桌面上一定打开着一系列的软件,用作开发调试工具,比如navicat数据库连接工具,postman接口调试工具,pycharm代码编写IDE,以及其他一些工具。今天,我就介绍一下pycharm中你可能还不知道的一些功能,让你的IDE、postman、navic...阅读全文

Segmentfault 2020-03-29 01:32:39 高枫

HTML的poster属性怎么用?

HTML的poster属性主要应用在<video>元素中,用于在视频下载或用户单击播放按钮时显示图像;如果未设置此图像,则会将第一帧视频作为海报图像。 原文地址:HTML的poster属性怎么用?HTML poster属性语法:<video poster="URL">属性值:它包含一个值URL,用于指定源图像的链接。下面列出了两种类型的URL链接:● 绝对URL:它指向另一个网页。● 相对URL:它指向同一网页的其他文件。示例: <!DOCTYPE html> <html> <head> <me...阅读全文

简书 2020-03-27 17:32:50 yanghs

Golang Channel详解

感谢参考原文-http://bjbsair.com/2020-03-27/tech-info/7058/ 引言 Goroutine 和 Channel 是 Go 语言并发编程的两大基石。Goroutine 用于执行并发任务,Channel 用于 goroutine 之间的同步、通信。 在Golang的并发哲学里,有一句非常著名的话: Do not communicate by sharing memory; instead, share memory by communicating. 意思是:...阅读全文

Golang的切片学习

感谢参考原文-http://bjbsair.com/2020-03-27/tech-info/7060/ 因为数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性。 例如: func arraySum(x [3]int) int{ sum := 0 for _, v := range x{ sum = sum + v } return sum } 这个求和函数只能接受 [3]int 类型,其他的都不支持。 再比如, a := [3]int{1, 2, 3} 数组a中已经有三个元...阅读全文

简书 2020-03-27 16:32:59 HDX柿子

goalng1.14不同场景下sync.Map、Mutex、RWMutex锁性能测试对比

因为使用go过程中会经常使用map存储,多个goroutine会出现资源竞争的问题,所以写个demo测试一下不同方式的锁性能开销。 1.环境 MacBook Pro (15-inch, 2016) 2.6 GHz Intel Core i7 16 GB 2133 MHz LPDDR3 golang版本:1.14 2.代码 var ( num = 1000 * 10 gnum = 1000 ) func Test_main(t *testing.T) { count := 10000 div :=...阅读全文

简书 2020-03-27 16:32:58 mmmjk

线上大量CLOSE_WAIT的原因深入分析

本文载自 https://juejin.im/post/5c0cf1ed6fb9a04a08217fcc 这一次重启真的无法解决问题了:一次 MySQL 主动关闭,导致服务出现大量 CLOSE_WAIT 的全流程排查过程。 近日遇到一个线上服务 socket 资源被不断打满的情况。通过各种工具分析线上问题,定位到问题代码。这里对该问题发现、修复过程进行一下复盘总结。 先看两张图。一张图是服务正常时监控到的 socket 状态,另一张当然就是异常啦! 图一:正常时监控 图二:异常时监控 从图中的表...阅读全文

简书 2020-03-27 16:32:57 耐心的农夫2020

没有“银弹” 之 微服务架构

没有“银弹”没有一种单纯的技术或管理上的进步,能够独立地承诺在10年内大幅度地提高软件的生产率、可靠性和简洁性。 什么是微服务 微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。 系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。 每个微服务仅关注于完成一件任务并很好地完成该任务。 在所有情况下,每个任务代表着一个小的业务能力。 其实微服务本身不是什么新技术,只是随着业务的不断发展,对业务不断分层,不断拆分,形成的一种架构风格。 微服务与SOA 技术为业务而生,架构也为业...阅读全文

简书 2020-03-27 16:32:46 陌若尘_c167

JavaScript 原型与继承

JavaScript 中函数原型是实现继承的基础。prototype、construct、原型链以及基于原型链的继承是面向对象的重要内容 prototype 原型即 prototype,是函数的一个属性,是一个对象 function Car() {} console.log(typeof Car.prototype); console.log(Car.prototype); // object // {...} 所有被构造函数构造出的对象都能访问 prototype 上定义的属性和方法 func...阅读全文

Segmentfault 2020-03-29 01:32:38 小橘子

3. Go语言中的整型与浮点型

文章首发自公众号:Go编程时光 《Go编程时光》,一个能带你学习 Go 语言的专栏,同时欢迎搜索我的同名公众号【Go编程时光】(排版精美更适合阅读),第一时间获取Go语言干货。 系列导读 1. 一文搞定Go语言开发环境的搭建 2. Go 语言中五种变量创建的方法 1. 整型 Go 语言中,整数类型可以再细分成10个类型,为了方便大家学习,我将这些类型整理成一张表格。 int 和 uint 的区别就在于一个 u,有 u 说明是无符号,没有 u 代表有符号。 解释这个符号的区别 以 int8 和 u...阅读全文

掘金 2020年03月27日 王一白

从零学习 Go 语言(05):数据类型之数组与切片

Hi,大家好呀,我是一个刚学习 Go 语言不久的新手,在入门 Golang 的这段时间里,我写了很多详细的学习笔记,很适合新手学习噢。这些文章已经发布在我的个人微信公众号里:《Go编程时光》里,今天开始将文章内容搬运到这里,希望有更多的人看到,给更的人带来帮助,但是这里文章会相对滞后,想获取最新文章,可以前往关注《Go编程时光》,请放心关注,这是一个纯分享的号,完全没有广告。 **系列导读 ** [从零学习 Go 语言(01):一文搞定开发环境的搭建](https://studygo...阅读全文

Go语言中文网 2020-03-27 12:21:25 hello_wbm

分布式从ACID、CAP、BASE的理论推进

作为当今互联网后端技术栈工程师、无论Golang、Java或者其他系,分布式的理论概念都逐步成为必备理论基础知识之一, 本文主要讨论分布式的CAP理论的推进,这是你走进分布式大门的第一块敲门砖。 提纲: 一、从本地事务到分布式理论 二、ACID理论 三、CAP理论 四、CAP理论“3选2”论证 五、BASE理论 附加:分布式概念 分布式实际上就是单一的本地一体解决方案,在硬件或者资源上不够业务需求,而采取的一种分散式多节点,可以扩容资源的一种解决思路。它研究如何把一个需要非常巨大的计算能力才能解...阅读全文

掘金 2020年03月27日 aceld

分布式从ACID、CAP、BASE的理论推进

原创声明作者: 刘丹冰Aceld,微信公众号同名 作为当今互联网后端技术栈工程师、无论Golang、Java或者其他系,分布式的理论概念都逐步成为必备理论基础知识之一, 本文主要讨论分布式的CAP理论的推进,这是你走进分布式大门的第一块敲门砖。 提纲:一、从本地事务到分布式理论二、ACID理论三、CAP理论四、CAP理论“3选2”论证五、BASE理论 附加:分布式概念 分布式实际上就是单一的本地一体解决方案,在硬件或者资源上不够业务需求,而采取的一种分散式多节点,可以扩容资源的一种解决思路。它研...阅读全文

Segmentfault 2020-03-31 09:32:35 aceld

golang进行交叉编译

golang进行交叉编译 交叉编译即编译不同操作系统平台的可执行程序 golang执行交叉编译,只需要使用两个变量 - GOOS:目标操作系统 - GOARCH:目标操作系统的架构 根据下面这个表格指定就行了。 其中386指的是32位系统 OS ARCH OS version linux 386 / amd64 / arm >= Linux 2.6 darwin 386 / amd64 OS X (Snow Leopard + Lion) freebsd 386 / amd64 >= FreeB...阅读全文

简书 2020-03-27 06:32:42 泥之天空

Golang中的Interface(接口)

Go语言中的interface没有强制要求实现方法,但是interface是go中非常强大的工具之一。任一类型都可以实现interface中的方法,interface中的值可以代表是各种类型的值,这就是Go中实现多态的基础 什么是接口 interface就是字面意思——接口,C++中可以用虚基类表示;Java中就是interface。 我们之前在结构体和方法的博文中提到了很多有关于对象和属性的知识点。而interface则使Golang更接近面向对象编程范式的另一个难点 interface是方法...阅读全文

简书 2020-03-27 01:32:55 EriolSoong