0%

HTTP协议是什么?

  • HTTP协议是超文本传输协议的缩写,英文是Hyper Text Transfer Protocol。它是从WEB服务器传输超文本标记语言(HTML)到本地浏览器的传送协议。
  • 设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
  • HTPP有多个版本,目前广泛使用的是HTTP/1.1版本。

HTTP原理

HTTP是一个基于TCP/IP通信协议来传递数据的协议,传输的数据类型为HTML 文件,、图片文件, 查询结果等。

etcd是近几年比较火热的一个开源的、分布式的键值对数据存储系统,提供共享配置、服务的注册和发现,本文主要介绍etcd的安装和使用。

etcd介绍

etcd 是使用Go语言开发的一个开源的、高可用的分布式key-value存储系统,可以用于配置共享和服务的注册和发现。

什么是隔离?

隔离,本质上是对系统或资源进行分割,从而实现当系统发生故障时能限定传播范围和影响范围,即发生故障后只有出问题的服务不可用,保证其他服务仍然可用。

令牌桶算法

是一个存放固定容量令牌的桶,按照固定速率往桶里添加令牌。令牌桶算法的描述如下:

  • 假设限制2r/s,则按照500毫秒的固定速率往桶中添加令牌。
  • 桶中最多存放 b 个令牌,当桶满时,新添加的令牌被丢弃或拒绝。
  • 当一个 n 个字节大小的数据包到达,将从桶中删除n 个令牌,接着数据包被发送到网络上。
  • 如果桶中的令牌不足 n 个,则不会删除令牌,且该数据包将被限流(要么丢弃,要么缓冲区等待)。

令牌桶速率限制算法: golang.org/x/time/rate

什么是超时控制?

超时控制,使我们的服务之间调用可以快速抛错。比如API接口设置1s超时API调用A服务用了500ms,服务A调用和服务B用了600ms,n那么现在已经超时,还要调用服务C等等,再返回超时错误吗?这回事使服务C后面的链路做了无用功,浪费服务器资源。

关于

Cobra 是 Go 的 CLI 框架。它包含一个用于创建功能强大的现代 CLI 应用程序的库,以及一个用于快速生成基于 Cobra 的应用程序和命令文件的工具。

Cobra 由 Go 项目成员和 hugo 作者 spf13 创建,已经被许多流行的 Go 项目采用,比如 kubernetes、docker等

什么是lua

Lua 是一个小巧的 脚本语言 。它是 巴西 里约热内卢天主教大学 (Pontifical Catholic University of Rio de Janeiro)里的一个由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo三人所组成的研究小组于1993年开发的。 其设计目的是为了通过灵活嵌入应用程序中从而为应用程序提供灵活的扩展和定制功能。Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行。Lua并没有提供强大的库,这是由它的定位决定的。所以Lua不适合作为开发独立应用程序的语言。Lua 有一个同时进行的JIT项目,提供在特定平台上的即时编译功能。

原文地址:https://haiyux.cc/2022/09/21/k8s-install/

虚拟机准备

我这里准备了三台虚拟机,分别部署一个master和两个node,操作系统位ubuntu 20.04。以下为特殊说明为三台机器都要做此操作

安装容器runtime

之前,我们用的容器runtime基本都是docker,但是docker并没有实现k8s的CRI,是在kubelet的有一个组件叫docker-shim做转化,在kubernetes v1.24版本以上这个组件已经废弃,这里选择containerd做容器runtime。当然,containerd是可以使用docker的镜像的。如果非要使用docker的话,被kubernetes废弃的docker-shim被docker自己维护起来了,可以试试看。但是不建议纯纯的浪费资源。

什么是发布和订阅

Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。

Redis 客户端可以订阅任意数量的频道。

发布和订阅

1、客户端可以订阅频道如下图

2、当给这个频道发布消息后,消息就会发送给订阅的客户端

macOS

全局

  • Command + Shift + P / F1 显示命令面板
  • Command + P 快速打开
  • Command + Shift + N 打开新窗口
  • Command + W 关闭窗口

基本

  • Command + X 剪切(未选中文本的情况下,剪切光标所在行)
  • Command + C 复制(未选中文本的情况下,复制光标所在行)
  • ``Option + Up` 向上移动行
  • Option + Down 向下移动行
  • Option + Shift + Up 向上复制行
  • Option + Shift + Down 向下复制行
  • Command + Shift + K 删除行
  • Command + Enter 下一行插入
  • Command + Shift + Enter 上一行插入
  • Command + Shift + \ 跳转到匹配的括号
  • Command + [ 减少缩进
  • Command + ] 增加缩进
  • Home 跳转至行首
  • End 跳转到行尾
  • Command + Up 跳转至文件开头
  • Command + Down 跳转至文件结尾
  • Ctrl + PgUp 按行向上滚动
  • Ctrl + PgDown 按行向下滚动
  • Command + PgDown 按屏向下滚动
  • Command + PgUp 按屏向上滚动
  • Command + Shift + [ 折叠代码块
  • Command + Shift + ] 展开代码块
  • Command + K Command + [ 折叠全部子代码块
  • Command + K Command + ] 展开全部子代码块
  • Command + K Command + 0 折叠全部代码块
  • Command + K Command + J 展开全部代码块
  • Command + K Command + C 添加行注释
  • Command + K Command + U 移除行注释
  • Command + / 添加、移除行注释
  • Option + Shift + A 添加、移除块注释
  • Option + Z 自动换行、取消自动换行

多光标与选择

  • Option + 点击 插入多个光标
  • Command + Option + Up 向上插入光标
  • Command + Option + Down 向下插入光标
  • Command + U 撤销上一个光标操作
  • Option + Shift + I 在所选行的行尾插入光标
  • Command + I 选中当前行
  • Command + Shift + L 选中所有与当前选中内容相同部分
  • Command + F2 选中所有与当前选中单词相同的单词
  • Command + Ctrl + Shift + Left 折叠选中
  • Command + Ctrl + Shift + Right 展开选中
  • Alt + Shift + 拖动鼠标 选中代码块
  • Command + Shift + Option + Up 列选择 向上
  • Command + Shift + Option + Down 列选择 向下
  • Command + Shift + Option + Left 列选择 向左
  • Command + Shift + Option + Right 列选择 向右
  • Command + Shift + Option + PgUp 列选择 向上翻页
  • Command + Shift + Option + PgDown 列选择 向下翻页

查找替换

  • Command + F 查找
  • Command + Option + F 替换
  • Command + G 查找下一个
  • Command + Shift + G 查找上一个
  • Option + Enter 选中所有匹配项
  • Command + D 向下选中相同内容
  • Command + K Command + D 移除前一个向下选中相同内容

进阶

  • Ctrl + Space 打开建议
  • Command + Shift + Space 参数提示
  • Tab Emmet插件缩写补全
  • Option + Shift + F 格式化
  • Command + K Command + F 格式化选中内容
  • F12 跳转到声明位置
  • Option + F12 查看具体声明内容
  • Command + K F12 分屏查看具体声明内容
  • Command + . 快速修复
  • Shift + F12 显示引用
  • F2 重命名符号
  • Command + Shift + . 替换为上一个值
  • Command + Shift + , 替换为下一个值
  • Command + K Command + X 删除行尾多余空格
  • Command + K M 更改文件语言

导航

  • Command + T 显示所有符号
  • Ctrl + G 跳转至某行
  • Command + P 跳转到某个文件
  • Command + Shift + O 跳转到某个符号
  • Command + Shift + M 打开问题面板
  • F8下一个错误或警告位置
  • Shift + F8 上一个错误或警告位置
  • Ctrl + Shift + Tab 编辑器历史记录
  • Ctrl + -后退
  • Ctrl + Shift + - 前进
  • Ctrl + Shift + M Tab 切换焦点

编辑器管理

  • Command + W 关闭编辑器
  • Command + K F 关闭文件夹
  • Command + \ 编辑器分屏
  • Command + 1 切换到第一分组
  • Command + 2 切换到第二分组
  • Command + 3 切换到第三分组
  • Command + K Command + Left 切换到上一分组
  • Command + K Command + Right 切换到下一分组
  • Command + K Command + Shift + Left 左移编辑器
  • Command + K Command + Shift + Right 右移编辑器
  • Command + K Left 激活左侧编辑组
  • Command + K Right 激活右侧编辑组

文件管理

  • Command + N 新建文件
  • Command + O 打开文件
  • Command + S 保存文件
  • Command + Shift + S 另存为
  • Command + Option + S 全部保存
  • Command + W 关闭
  • Command + K Command + W 全部关闭
  • Command + Shift + T 重新打开被关闭的编辑器
  • Command + K Enter 保持打开
  • Ctrl + Tab 打开下一个
  • Ctrl + Shift + Tab 打开上一个
  • Command + K P 复制当前文件路径
  • Command + K R 在资源管理器中查看当前文件
  • Command + K O 新窗口打开当前文件

显示

  • Command + Ctrl + F 全屏、退出全屏
  • Command + Option + 1 切换编辑器分屏方式(横、竖)
  • Command + + 放大
  • Command + - 缩小
  • Command + B 显示、隐藏侧边栏
  • Command + Shift + E 显示资源管理器 或 切换焦点
  • Command + Shift + F 显示搜索框
  • Ctrl + Shift + G 显示Git面板
  • Command + Shift + D 显示调试面板
  • Command + Shift + X 显示插件面板
  • Command + Shift + H 全局搜索替换
  • Command + Shift + J 显示、隐藏高级搜索
  • Command + Shift + C 打开新终端
  • Command + Shift + U 显示输出面板
  • Command + Shift + V Markdown预览窗口
  • Command + K V 分屏显示 Markdown预览窗口

调试

  • F9 设置 或 取消断点
  • F5 开始 或 继续
  • F11 进入
  • Shift + F11 跳出
  • F10 跳过
  • Command + K Command + I 显示悬停信息

集成终端

  • Ctrl +显示终端 Ctrl + Shift +新建终端
  • Command + Up 向上滚动
  • Command + Down 向下滚动
  • PgUp 向上翻页
  • PgDown 向下翻页
  • Command + Home 滚动到顶部
  • Command + End 滚动到底部

windows & linux

注释: