2019-12-05 15:57
本文节选自《不一样的 双11 技术:阿里巴巴经济体云原生实践》一书,点击上方图片即可下载!...
2019-12-05 15:24
目录
一 kubeadm介绍
1.1 概述
1.2 kubeadm功能
二 部署规划
2.1 节点规划
2.2 初始准备
2.3 互信配置
三 集群部署
3.1 Docker安装
3.2 相关组件包
3.3 正式安装
三 部署高可用组件I
3.1 Keepalived安装
3.2 创建配置文件
3.3 启动Keepalived
3.4 启动Nginx
四 初始化集群-Mater
4.1 Master上初始化
4.2 添加其他master节点
五 安装NIC插件
5.1 NIC插件介绍
5.2 部署calico
...
2019-12-05 15:06
[从今天开始修炼数据结构]基本概念
[从今天开始修炼数据结构]线性表及其实现以及实现有Itertor的ArrayList和LinkedList
[从今天开始修炼数据结构]栈、斐波那契数列、逆波兰四则运算的实现
[从今天开始修炼数据结构]队列、循环队列、PriorityQueue的原理及实现
一、什么是串?
串是羊肉牛肉等用铁签穿过的食物,常碳烤、油炸。不对,错了…… 串String是由零个或多个字符组成的有限序列,又名字符串。
二、串的比较
在计算机中串的大小取决于它们挨个字母的字典顺序,比如“silly”和“stupid”,首字母s相同,比较第二个字母,“i” < “t” 所以“silly“<“stupid”。如果像”stu“和”stud“比较,那么因为多了一个字母”d“,则”stud“更大。
...
2019-12-05 15:06
绝对原创!版权所有,转发需经过作者同意。
-----------------------
在谈到特性的使用场景时,还有一个绝对离不开的就是
单元测试
按飞哥的定义,单元测试是开发人员自己用代码实现的测试 。注意这个定义,其核心在于:
主体是“开发人员”,不是测试人员。
途径是“通过代码实现”,不是通过手工测试。
实质是一种“测试”,不是代码调试。
暂时还有点抽象,同学们记着这个概念,我们先用一个
NUnit项目
来看一看单元测试长个什么样。
在solution上右键添加项目,选择Test中的NUnit Test Project,输入项目名称,点击OK:
...
2019-12-05 15:05
本文探讨如何使用 RocketMQ Binder 完成 Spring Cloud 应用消息的订阅和发布。
介绍
RocketMQ 是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网、车联网等。
RocketMQ 是阿里巴巴在2012年开源的分布式消息中间件,目前已经捐赠给 Apache 软件基金会,并于2017年9月25日成为 Apache 的顶级项目。作为经历过多次阿里巴巴双十一这种“超级工程”的洗礼并有稳定出色表现的国产中间件,以其高性能、低延时和高可靠等特性近年来已经也被越来越多的国内企业使用。
...
2019-12-05 10:47
RST产生原因 一般情况下导致TCP发送RST报文的原因有如下3种:...
2019-12-05 10:00
目录
如何运用DDD - 实体
概述
何为实体
似曾相识
你确定它真的需要ID吗
运用实体
结合值对象
为实体赋予它的行为
尝试转移一部分行为给值对象
愿景是美好的 现实是残酷的
总结
如何运用DDD - 实体
概述
本文将介绍领域驱动设计(DDD)战术模式中另一个常见且非常重要的概念 - 实体。相对战术模式中其他的一些概念(例如 值对象、领域服务等)来说,实体应该比较容易让人理解和运用。但是我们如何去发现所在领域中的实体呢?如何保证建立的实体是富含行为的?实体运用时又有那些注意的细节呢?本文将从不同的角度来带大家重新认识一下“实体”这个概念,并且给出相应的代码片段(本教程的代码片段都使用的是C#,后期的实战项目也是基于 DotNet Core 平台)。
...
2019-12-05 10:13
概述
相较于Redis4.0,Redis5.0增加了很多新的特性,而streams是其中最重要的特性之一。streams是redis 的一种基本数据结构,它是一个新的强大的支持多播的可持久化的消息队列,在设计上借鉴了kafaka。streams的数据类型本身非常简单,有点类似于hash结构,但是它的额外特性异常强大且复杂:
支持持久化。streams能持久化存储数据,不同于 pub/sub 机制和 list 消息被消费后就会被删除,streams消费过的数据会被持久化的保存在历史中。
支持多播。 这一点跟 pub/sub 有些类似。
...
2019-12-05 10:27
先抛砖引玉defer的延迟调用:
defer特性:
复制代码
1. 关键字 defer 用于注册延迟调用。
2. 这些调用直到 return 前才被执。因此,可以用来做资源清理。
3. 多个defer语句,按先进后出的方式执行。
4. defer语句中的变量,在defer声明时就决定了。
复制代码
defer用途:
复制代码
1. 关闭文件句柄
2. 锁资源释放
3. 数据库连接释放
复制代码
好,废话不多说,实例加深理解,我们先看看一段代码
复制代码
package main
import "fmt"
...
2019-12-05 10:20
今天来给大家聊一聊 Stack Overflow,Stack Overflow 是什么呢?
Stack Overflow 是一个全球最大的技术问答网站,作为一个程序员不得不知的网站。程序员可以在上面进行提出问题,别的程序员会免费帮大家解答这个问题。
然后这个问题还可以被打分,比如说顶,这个问题就会被顶上去,就会被更多人搜索到,基本上遇到的问题都可以在 Stack Overflow 上找到答案,所以很少会去 Stack Overflow 上进行提问,但是提问问题作为一个程序员基本技能,还是要聊一聊的。
...
2019-12-05 10:54
一、前言 前几天阅读一框架文档,里面有一段这样的描述 “从对象工厂中………” ,促使写下本文。尽管一些模式简单和简单,但是常用、有用。...
2019-12-05 10:50
1.DBSCAN介绍
DBSCAN(Density-Based Spatial Clustering of Applications with Noise,具有噪声的基于密度的聚类方法)是一种基于密度的空间聚类算法。 该算法将具有足够密度的区域划分为簇,并在具有噪声的空间数据库中发现任意形状的簇,它将簇定义为密度相连的点的最大集合。
基于密度这点有什么好处呢,我们知道kmeans聚类算法只能处理球形的簇,也就是一个聚成实心的团(这是因为算法本身计算平均距离的局限)。但往往现实中还会有各种形状,比如下面两张图,环形和不规则形,这个时候,那些传统的聚类算法显然就悲剧了。于是就思考,样本密度大的成一类呗。呐这就是DBSCAN聚类算法
...