2021 09-26

使用 FIO 对 Kubernetes 持久卷进行 Benchmark:读/写(IOPS)、带宽(MB/s)和延迟

工具 Dbench https://github.com/leeliu/dbench 用法 编辑dbench.yaml文件中的storageClassName以匹配你自己的StorageClass。kubectlgetstorageclasses 部署kubectlapply-fdbench.yaml 部署后,DbenchJob将: 使用storageClassName:ssd(默认)提供1000Gi(默认)的持久卷。 在新配置的磁盘上运行一系列fio测试。 目前有9个测试,每个测

2021 09-26

网络IO模型与Reactor模式

一、三种网络IO模型: 分类: BIO同步的、阻塞式IO NIO同步的、非阻塞式IO AIO异步非阻塞式IO 阻塞和同步的概念: 阻塞:若读写未完成,调用读写的线程一直等待 非阻塞:若读写未完成,调用读写的线程不用等待,可以处理其他工作 异步:读写过程完全托管给操作系统完成,操作系统完成后通知调用读写的线程 同步:读写过程由本线程完成,期间可以处理其他工作,但要轮询读写是否完毕       BIO虽然可以使用线程池+等待队列进行优化,避免使用过多的线程,但

2021 09-26

gin 源码阅读(2) - http请求是如何流入gin的?

推荐阅读: gin源码阅读(1)-gin与net/http的关系 本篇文章是gin源码分析系列的第二篇,这篇文章我们主要弄清一个问题:一个请求通过net/http的socket接收到请求后,是如何回到gin中处理逻辑的? 我们仍然以net/http的例子开始 funcmain(){ http.HandleFunc("/",func(whttp.ResponseWriter,r*http.Request){ w.Write([]byte("HelloWorld")) }) iferr:=htt

2021 09-26

后端开发学习业务一:需求,痛点,场景,需求收集

需求和痛点 一,什么是需求: 用户在特定的场景下,出现的特定的问题,且这个问题是可以被验证解决的 需求由用户+场景+诉求+任务构成 需求和用户的最终目的有关,需求要与场景匹配我想要一匹更快的马,对于想要快速到达目的地的人来说,可以提供更快的交通工具,比如汽车,对于喜欢骑马比赛的人来说,就是真实需要一匹更快的马 二,需求的来源: 老板或者决策者的想法,公司战略 追标杆,赛同行,其他行业的借鉴点 新的业务,技术领域,政策变动,市场 业务部门提出,业务反馈,迭代优化等 三,什么是场景 场

2021 09-26

Kotlin协程基础

开发环境 IntelliJIDEA2021.2.2(CommunityEdition) Kotlin:212-1.5.10-release-IJ5284.40 我们已经通过第一个例子学会了启动协程,这里介绍一些协程的基础知识。 阻塞与非阻塞 runBlocking delay是非阻塞的,Thread.sleep是阻塞的。显式使用runBlocking协程构建器来阻塞。 importkotlinx.coroutines.* funmain(){ GlobalScope.launch{//在后

2021 09-26

Probius+Kubernetes任务系统如虎添翼

Probius是一款自定义任务引擎,可以灵活方便的处理日常运维中的各种任务,我们所有的CI/CD任务都通过Probius来完成的,这篇文章Probius:一个功能强大的自定义任务系统对其有详细的介绍,之前通过Probius更新Kubernetes的Deployment是通过脚本的方式来完成的,脚本大概像这样 if[$#!=2];then echo"USAGE:$0PROJENVT" exit1 fi PROJ=$1 ENVT=$2 BASE_DIR=/home/data/probius/${

2021 09-26

axios的简单的使用

Axios是什么? Axios是一个基于promise网络请求库,作用于node.js和浏览器中。它是isomorphic的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生node.jshttp模块,而在客户端(浏览端)则使用XMLHttpRequests。 特性 从浏览器创建XMLHttpRequests 从node.js创建http请求 支持PromiseAPI 拦截请求和响应 转换请求和响应数据 取消请求 自动转换JSON数据 客户端支持防御XSRF 基础用法 引

2021 09-26

JDK1.8源码(四)——java.util.Arrays类

一、概述 1、介绍   Arrays类是JDK1.2提供的一个工具类,提供处理数组的各种方法,基本上都是静态方法,能直接通过类名Arrays调用。 二、类源码 1、asList()方法   将一个泛型数组转化为List集合返回。但是,这个List集合既不是ArrayList实例,也不是Vector实例。它是一个固定长度的List集合,是Arrays的一个内部类java.util.Arrays.ArrayList。  代码示例:使用 1publicclassMain{ 2publicstatic

2021 09-26

解决跨域、同源策略-React中代理的配置

React中代理的配置 主要是解决同源策略的问题 何为同源策略? 因为我们React在3000端口,Vue在8080端口,而后台接口往往在5000,这种不同的端口之间就是一种跨域的问题了 axios发送跨域请求的时候,实际上是有访问后台,并且从后台拿到了数据,只是这些数据回不了,因为ajax疫情拦截了   如何解决呢? 使用代理: ①代理的端口和前端的端口是一样的(也就是下面的3000端口跑了一个脚手架,并且也运行了一个微小的代理服务器) ②代理为什么能够请求别的端口的服务

2021 09-26

PKI及SSL协议分析PKI及SSL协议分析

任务一:搭建CA服务器 本任务初步了解CA服务器的原理和配置过程。操作都在CA服务器上。 1、远程桌面方式登录到CA服务器,在CMD下查看本机IP地址:     2、安装证书服务      依次点击:“开始”->>“控制面板”->>“添加或删除程序”,以打开添加或删除程序对话框    依次点击:“添加删除windows组件”,在组件向导中选中“应用程序服务器”与“证书服