自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Atlan_blog

活得太抽象~

  • 博客(45)
  • 收藏
  • 关注

原创 Docker实现原理/容器原理(LXC,Cgroups,Docker)

Docker实现原理/容器原理Docker实现原理/容器原理什么是容器(Container)容器解决什么问题传统虚拟化架构Docker实现原理/容器原理容器是Linux内核提供得技术,Docker只是一个容器工具。Docker ≠ 容器谈Docker必谈容器 先了解一下容器是什么什么是容器(Container)根据WIKI的定义,容器概念如下:容器是一种基础工具;泛指任何可以用于容纳其他物品的工具,可以是部分或完全封闭,被用于容纳、存储、运输物品。物体可以放置在容器中,而容器则可以保护内容物。

2021-03-26 18:42:35 2708 8

原创 SDN介绍(什么是SDN)

SDN介绍一. 什么是SDN?二.SDN解决什么问题?三.传统网络概念和结构体系传统网络数据控制与转发:传统网络架构:四.SDN概述SDN(Software Defined Netrork)软件定义网络。SDN的分类五.SDN网络架构SDN网络体系架构的三层模型:SDN网络部署方式六.SDN的价值网络业务快速创新:简化网络:网络设备白牌化:业务自动化:网络路径流量优化:一. 什么是SDN?SD...

2019-07-12 14:11:48 223741 28

原创 图床个人使用

在这里插入图片描述

2022-05-27 15:29:56 330

原创 Go语言 GMP面试题(GMP调度示例)

GMP面试题第一段第二段第一段package mainimport "fmt"import "runtime"func main() { runtime.GOMAXPROCS(1) for i :=0; i<10; i++ { i := i go func() { fmt.Println("A:",i) }() } var ch = make(chan int) <- ch}输出结果无论执行多少回,A: 9 一定是第一个输出的。后面就让我们来解释一下

2021-08-14 18:44:50 1100 3

原创 Linux启动流程详细(Centos,Arch,Redhat,Ubuntu等)

linux启动流程1. Linux启动流程1.1 系统初始化(BIOS)1.1.1 (RESET)重置CPU1.1.2 POST(Power-OnSelfTest)1.1.3 初始化设备(硬件)1.1.4 BIOS信息输出1.1.5 内存测试1.1.6 检测标准硬件设备1.1.7 检测即插即用设备1.1.8 更新ESCD1.1.9 启动引导器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右Sma

2021-02-03 10:47:07 1093

原创 数字签名简介

数字签名1. 数字签名1.1 什么是数字签名1.2 数字签名的生成和验证1.3 非对称加密和数字签名1.4 数字签名的方法1. 数字签名“数字签名 ---- 消息到底是谁写的”数字签名是一种将现实世界中的盖章,签字在计算中实现的技术。使用数字签名可以识别篡改和伪装,还可以防止否认。1.1 什么是数字签名在消息认证码的基础上,假设发送者张三和接收者李四不需要共享一个密钥,也就是说张三和李四各自使用不同的密钥。张三使用一个只有张三自己知道的私钥对消息进行签名。接收者李四则使用一个和张三不同的密钥

2021-01-15 14:47:27 819

原创 消息认证码 HMAC

消息认证码1. 消息认证码1.1 什么是消息认证码1.2 消息认证码的使用步骤1.3 HMAC介绍1.4 消息认证码的密钥配送问题1.5 消息认证码无法解决的问题1.5.1 对第三方证明1.5.2 防止否认1.6 总结1. 消息认证码消息认证码 ---- 消息被正确传递了吗?张三和李四的故事张三和李四分别是两家银行。张三银行通过网络向李四银行发送了一条汇款请求,李四收到的消息是:当然李四银行所收到的汇款请求内容必须与张三银行所发送的内容完全一致。如果攻击者在中途将张三银行发送的汇款请求进行篡

2021-01-10 21:55:20 1198 3

原创 单向散列函数 (Hash)

单向散列函数1. 单向散列函数1.1 什么是单向散列函数1.2 术语1.3 单向散列函数的特性1.4 单向散列函数的实际应用1.4.1 检测软件是否被篡改1.4.2 消息认证码1.4.3 数字签名1.4.4 伪随机生成器1.4.5 一次性口令1.5 常用的单向散列函数1. 单向散列函数单向散列函数 ------- 获取消息的指纹在刑事侦查中,侦查员会用到指纹。通过将犯罪现场采集的指纹与指纹库比对,或与嫌疑人的指纹进行比对,就能够知道谁与案件有关联在计算机中,有时候也会用到"指纹"。当需要比较两条

2021-01-10 15:48:39 3972 1

原创 非对称加密详解

非对称加密1. 非对称加密1.1 什么是非对称加密1. 非对称加密1.1 什么是非对称加密“非对称加密也叫公钥密码:使用公钥加密,使用私钥解密”在对称密码中,由于加密和解密的密钥是相同的,因此必须向接收者配送密钥。用于解密的密钥必须被配送给接收者,这一问题称为密钥配送问题。如果使用非对称加密,则无需向接收者配送用于解密的密钥,这样就解决了密钥配送的问题。非对称加密中,密钥分为加密密钥和解密密钥两种。发送者用加密密钥对消息进行加密,接收者用解密密钥对密文进行解密。需理解公钥密码,清楚地分加密密

2020-12-13 23:27:58 17482 8

原创 分组密码

# 1. 分组密码## 1.1 什么是分组密码**分组密码(blockcipher)** 是每次只能处理特定长度的一块数据的一类密码算法,这里的一块“就成为分组(block).此外一个分组的比特数就称为分组长度(block length)例如,**DES和三重DES的分组长度都是64比特**。这些密码算法一次只能加密64比特的明文.并生成64比特的密文。**AES的分组长度可以从128比特、192比特和256比特中进行选择。当选择128比特的分组长度时,AES一次可加密128比特的明文,并生成1

2020-12-07 17:24:53 1281

原创 什么是对称加密(对称加密简介)

什么是对称加密什么是对称加密编码加密算法DES什么是DES加密和解密3DES什么是3DES3DES加密解密AES什么是AESAES加密解密什么是对称加密对称加密:也称为对称密码,是指在加密和解密时使用同一密钥得加密方式编码现代的密码都是建立在计算机的基础之上的,这是因为现代的密码所处理的数据量非常大,而且密码算法也非常复杂,不借助计算机的力量就无法完成加密和解密的操作。计算机的操作对象并不是文字,而是由0和1排列而成的比特序列。无论是文字、图像、声音、视频还是程序,在计算机中都是用比特序列来表示

2020-12-04 14:56:00 27363 5

原创 golang 反射报错 panic: reflect: FieldByName of non-struct type

项目场景:通过反射获取结构体得tag标签问题描述: 在获取tag标签时, panic: reflect: FieldByName of non-struct type获取tag代码:type testsa struct { Testc string `json:"testc"` Testb string `json:"testb"` Testn int `json:"testn"` Testp *float64 `json:"testp" react:"f-s"` Tests *ui

2020-10-26 17:21:55 4688 3

原创 Golang Sqlx 查询数据库Null 报错 sql: Scan error on column index 3, name “user_id“: converting NULL to int64

Golang Sqlx处理数据库Null值1.问题描述1.1环境描述1.2异常信息2 解决方案2.1 使用指针类型2.2 使用sql.NullInt641.问题描述1.1环境描述数据库字段设置如下CREATE TABLE `area` ( `id` int(11) NOT NULL, `area_name` varchar(255) DEFAULT NULL, `city_id` int(11) DEFAULT NULL, `user_id` int(11) DEFAULT NULL

2020-08-09 14:55:53 9758 5

原创 react基础

react基础React介绍快速开始hello world程序JSX语法组件和属性(props)函数式定义组件类方式定义组件组件渲染组件组合绑定事件状态列表渲染表单数据绑定生命周期方法React介绍React.js是前端三大框架angular.js,React.js,Vue.js之一。这三大框架有很多理念是相同的,但是也有各自的特点React起源于facebook的内部项目,因为该公司对市场上所有javaScript MVC框架都不蛮子,就决定自己写一套,用来假设instagram的网站。做出来以后,

2020-06-28 23:39:18 341

原创 ajax基础

ajax1.什么是ajax2.ajax能干什么3.ajax常用方法3.2 老写法3.3 新写法3.4 简写1.什么是ajaxAjax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。2.ajax能干什么通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更

2020-06-06 01:49:23 224

原创 如何快速学习知识和技能(非贩卖焦虑)

如何快速学习知识和技能简介1.知识焦虑时代得碎片化学习陷阱1.1 囤积1.2 消遣式学习1.3 知识的游牧民族1.4 系统性学习,结构化知识1.4.1 碎片化学习结果1.4.2 有组织的知识方可生产竞争力2. 正确认识学习方法中的幸存者偏差3. 开放式全面竞争时代的快速学习方法3.1 开放式全面竞争时代3.2 快速学习方法3.1 根据目标谈逻辑3.2 根据阶段谈路径4. 避免认知误区,达克效应简...

2020-03-29 20:12:54 756

原创 Pivotal Greenplum 6.4安装

Pivotal Greenplum 6.4安装1. 兼容性1.1系统兼容性1.2硬件要求2.环境准备2.1主机配置2.1 关闭Selinux和iptables2.2变更系统环境变量2.3 系统资源限制2.4XFS挂载选项2.5磁盘I/O设置2.6磁盘调度设置2.7禁用透明大页面THP2.8禁用IPC删除2.9SSH连接阈值2.10NTP校时2.11 创建Greenplum管理用户2.12 更改本地...

2020-02-21 18:49:25 2456

翻译 Pivotal Greenplum 6.4介绍(翻译自官网)

Pivotal Greenplum 6.4 简介1.什么是Greenplum2.Greenplum简介2.1体系架构Master HostMaster Redundancy(master节点冗余)Segments Host(段主机)Segment Redundancy (段冗余)Segment Failover and Recovery(段得故障转移和恢复)Example Segment Host...

2020-02-20 15:35:31 2278

原创 Go语言超大数字相加 超出int64表示范围

Go语言计算超长数字串话不多说,上代码package mainimport ( "fmt" "strconv")//字符串反转函数func reverse(str string) string { var result string strLen := len(str) for i := 0; i < strLen; i++ { result = result +...

2019-08-05 22:48:31 5154

原创 k8s集群配置dashboard(最先版1.13.3 1.10.1)

K8s集群配置dashboard1.环境描述2.安装dashboard2.1 在master上执行如下命令2.2 配置Service2.3 测试访问3.认证配置3.1 令牌方式3.1.1 集权全部权限3.1.1.1 创建ServiceAccount3.1.1.2 绑定相关role3.1.1.3 获取ServiceAccount使用的Secret3.1.1.4 获取token3.1.1.5 验证3....

2019-03-14 15:27:51 3456 4

原创 K8S最新版1.13.3简单安装方式kubeadm

K8S使用kubeadm安装1.环境介绍和准备1.2环境准备1.2.1 主机名映射(三台都做)1.2.2 时间同步1.2.3 关闭防火墙以及selinux1.2.4 yum源docker,k8s(三台都做)初始化集群下载k8s用到的镜像重新初始化安装fannel网络插件配置Node节点加入集群验证阶段1.环境介绍和准备此处不讲解k8s的的一些信息,如有需要请参考https://blog.csd...

2019-02-26 23:17:19 2132 1

原创 Corosync+pacemaker高可用解决方案(无坑,解决大多说问题)

corosync+pacemaker1.介绍1.1 corosync1.2 pacemaker1.3 总结2 环境介绍2.1 环境准备2.1.1 主机名解析(两台机器都做)2.1.2 免密钥(两台机器相互做)2.1.3 时间同步 (两台都做)3 安装corosync&amp;&amp;pacemaker3.1 安装corosync&amp;&amp;pacemaker(两台都做)4 安装pcs管理...

2019-02-25 22:22:40 11756

原创 Dockerfile详解超全

Dockerfile详解环境介绍指令介绍FROMMAINTAINERLABELADDCOPYEXPOSEENV在Dockerfile中使用变量的方式RUNCMDRUN&amp;&amp;CMDENTRYPOINTVOLUMEUSERWORKDIRARGONBUILDSTOPSIGNALHEALTHCHECK环境介绍1.Dockerfile中所用的所有文件一定要和Dockerfile文件在同一级...

2019-02-23 14:45:19 85333 10

转载 JavaScript基础

JavaScript概述1.ECMAScript和JavaScript的关系2.JavaScript引入方式2.1.Script标签内写代码2.2.引入额外的JS文件3.JavaScript语言基础3.1.变量声明4.JavaScript数据类型4.1.数值(Number)4.2.字符串(String)4.3.布尔值(Boolean)4.4.null和undefined4.5.对象(Object)...

2019-01-17 22:04:40 196

原创 CSS基础

CSS基础1.CSS介绍2.CSS语法2.1.CSS实例2.2.CSS的引入方式2.2.1.行内样式2.2.2.外部样式2.2.3.内部样式3.CSS选择器3.1.基本选择器3.1.1.元素选择器3.1.2.ID选择器3.1.3.类选择器3.1.4.通用选择器3.2.组合选择器3.2.1.后代选择器3.2.2.儿子选择器3.2.3.毗邻选择器3.3.4.弟弟选择器3.3.5.属性选择器3.3.分组...

2019-01-17 21:13:55 510

原创 HTML入门

HTML入门一.什么是HTML?二.HTML文档结构三.HTMl标签格式标签的语法几个重要的属性:HTML注释 标签HTML常用标签head内常用的标签一.什么是HTML?超文本标记语言(Hypertext Markup Language,HTML)是一种用于创建网页的标记语言本质上是浏览器可识别的规则,按照规则写网页,浏览器根据规则渲染网页,对于不同的浏览器,对同一个标签可用会与不同的解释...

2019-01-04 17:47:25 247

原创 SQLAlchemy模块

SQLAlchemy模块一.概述二.内部处理(创建连接)三.ORM功能使用增删除改查relationship操作一.概述SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果。PS:SQLAlchemy是Python编程语言下的一款ORM框架,该框...

2018-12-08 21:18:10 619

原创 SQL语句进阶

SQL语句进阶视图1.创建视图2.删除视图3.修改视图4.使用视图触发器1,创建基本语法2.删除触发器3.使用触发器视图视图是一个虚拟表(非真实存在),其本质是(根据SQL语句获取动态的数据集,并为其命名),用户使用时只需使用(视图名称)即可获取结果集,并可以将其当作表来表现。使用临时表搜索:SELECT * FROM (SELECT * FROM tb WHERE id &amp;amp;amp;amp;gt; 1)...

2018-12-06 15:25:01 1004

原创 SQL语句入门

SQL语句入门一 .概述什么是数据库?什么是SQL?数据库的体系结构二.数据库操作欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML...

2018-12-05 23:35:19 4102

原创 Python3中的configparser模块

configparser模块简介该模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值)。节与java原先的配置文件相同的格式看一下configparser生成的配置文件的格式[DEFAULT]ServerAliveInterval = 45Compression = yesCompressionLevel = ...

2018-10-21 17:58:12 31103 2

原创 Python常用模块

Python常用模块Python常用模块什么是模块collections模块namedtupledequeCounterOrderedDictdefaultdicttime模块常用方法或函数python表示时间的方式几种格式的转换特殊的时间方式(linux中date命令的默认输出)random模块常用函数os模块常用方法和函数**==stat 结构:==**==os.path类==re模块详情P...

2018-09-24 18:17:15 735

原创 Python中的正则表达式(re模块)

Python中的正则表达式正则表达式简介正则表达式使用的特殊符号和字符==常见符号和字符==**特殊字符**正则表式和Python语言re模块:核心函数和方法==匹配对象和group(),groups()方法====重复·特殊字符和子组==正则表达式简介处理文本和数据是件大事。如果你不信,请仔细看看先如今的计算机主要都在做些什么工作:文字处理,网页填表,来自数据库的信息流,股票报价信息,新闻列...

2018-09-22 08:58:14 471

原创 python3(文件内容的替换)

需求写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作import osdef cc(a,b,c): with open(a,'r+',encoding='utf-8') as ca: #打开文件 wc = ca.readlines() #把文件内容读到列表中 with open('new','w+',encod...

2018-09-01 09:59:17 7888 6

原创 zabbix优化(报警恢复慢,页面卡等)

起因:近几日zabbix报警的恢复时间变得很长,页面有卡顿的现象。抓包查看发现,确实是收到了最近正常的值,但是面板不更新,重新zabbix_server进程,才能完成面板更新。1. Zabbix性能概述当zabbix性能低时会出现多种状况,Zabbix前端页面出现无响应、卡顿、列队无法更新,zabbix图形中经常出现断图,无图。一些item获取不到数据。列队中出现大多被延迟的item如...

2018-08-28 21:34:44 13269

原创 Python对文件的操作

一、文件操作      打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。打开文件的模式有:r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】 w,只写模式【不可读;不存在则创建;存在则清空内容】 x, 只写模式【不可读;不存在则创建,存在则报错】 a, 追加模式【可读;   不存在则创建;存在则只追加内容】"...

2018-08-19 22:36:04 308

原创 Python小练习(萌新)

1.输出1 2 3 4 5 6 8 9 10i = 0while i &lt; 10: i += 1 if i == 7:continue print(i)2. 求出1-100之间的所有奇数i = 0while i &lt;= 100: i += 1 if (i % 2 ) == 0:continue print(i)3.求出...

2018-08-19 22:31:59 291

原创 Python字典介绍

1.映射类型字典是Python语言中唯一的映射类型。映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的关系。它们与Perl中的哈希类型(又称关联数组)相似,通常被认为是可变的哈希表。一个字典对象是可变的,它是一个容器类型,能存储任意个数Python对象,其中也包括其他容器类型。字典类型和序列类型容器类(列表,元祖)的区别是存储和访问数据的方式不同。序列类型只用数字类型的...

2018-08-14 16:05:16 536 1

原创 Python关于字符串的内置函数(字符串操作)

环境:Python3.6.41.字符串首字母大写[capitalize()]s = 'atlan'print(s.capitalize())Atlan2.字符串全大写[upper()]s = 'atlan'print(s.upper())ATLAN3.字符串全小写[lower()]s = 'AtlAn'print(s.lower())atlan4.大小...

2018-08-09 08:44:59 1387 2

原创 PyCharm安装

环境:windows10首先下载python环境包https://www.python.org/downloads/windows/下载对应版本的 executable installer 包这种executable installer的包是傻瓜式的安装方式,安装完成不需要手动调整变量接着安装python环境一定要勾选红框内的选项,勾选完,静待安装完成安装完成...

2018-08-05 12:07:39 659

原创 mailx报错451,553Envolope sender mismatch with login user..

今日在配置zabbix邮件报警时,发生的一个惨淡事情。zabbix使用mailx发送邮件使用报错 553Envolope sender mismatch with login user..大致的意思是:发件人和发件人邮箱不一样但是我的配置信息都是对的如下vi /etc/mail.rc# For Linux and BSD, this should be set.set bsdco...

2018-07-23 17:07:18 3060

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除