-
持续基础设施:不一样的CI
所属栏目:[经验] 日期:2021-05-23 热度:164
想要提升你的 DevOps 效率吗?将基础设施当成你的 CI 流程中的重要的一环。 持续交付(CD)和持续集成(CI)是 DevOps 的两个众所周知的方面。但在 CI 大肆流行的今天却忽略了另一个关键性的I:基础设施infrastructure。 曾经有一段时间 基础设施就意味着[详细]
-
分析微服务架构中的数据一致性
所属栏目:[经验] 日期:2021-05-23 热度:150
在微服务中,一个逻辑上原子操作可以经常跨越多个微服务。即使是单片系统也可能使用多个数据库或消息传递解决方案。使用多个独立的数据存储解决方案,如果其中一个分布式流程参与者出现故障,我们就会面临数据不一致的风险 - 例如在未下订单的情况下向客户[详细]
-
中国IT史上两大严重事故对我们的教训及预防措施
所属栏目:[经验] 日期:2021-05-22 热度:105
2015年5月28日上午11点开始,携程旅行网官方网站突然显示404错误页,App也无法使用,业务彻底中断。 据称是因为乌云网公布了携程的一个漏洞携程旅游网服务器配置不当可导致官方邮件劫持,携程修复后当天准备上线发布,但运维自动化系统有问题或者运维操作[详细]
-
分析分布式 MySQL Binlog 存储系统的架构设计
所属栏目:[经验] 日期:2021-05-22 热度:88
storage负责存储raft log entry和Metadata,在kingbus中,将raft log和mysql binlog融合在一起了,通过不同的头部信息区分,raft log的数据部分就是binlog event,这样就不需要分开存储两类log,节省存储空间。因为kingbus需要存储一些元信息,例如raft 节[详细]
-
运维自我完善:怎样做好企业 IT 运维工作
所属栏目:[经验] 日期:2021-05-22 热度:158
随着信息技术的发展以及企业业务的不断扩张,运维人员所面临的系统架构越发的复杂,关联度越发紧密。对运维人员的要求也会越来越高,打造个个都是高手,对业务系统了如指掌。 1、需要运维人员快速转变观念,学会通过主动运维的方式应对复杂多变的 IT 问题[详细]
-
分析Linux Cockpit来管理系统性能
所属栏目:[经验] 日期:2021-05-22 热度:114
如果你还没有尝试过相对较新的 Linux Cockpit,你可能会对它所能做的一切感到惊讶。它是一个用户友好的基于 web 的控制台,提供了一些非常简单的方法来管理 Linux 系统 通过 web。你可以通过一个非常简单的 web 来监控系统资源、添加或删除帐户、监控系统[详细]
-
自动化运维落实到位的三点前提及常用工具对比
所属栏目:[经验] 日期:2021-05-22 热度:86
开篇的时候说了对于不同的人眼中的自动化运维意味着什么,这些理解站在点的角度上或者说站在非领导的角度上理解都是没有问题的,但是如果作为一个运维方面的领导理解仅仅理解到以上层面那就有点欠缺了,在我看来至少是缺乏了更为抽象的理解,缺少了理论的[详细]
-
开源工具 | Ansible基础秘诀
所属栏目:[经验] 日期:2021-05-22 热度:198
用 Ansible 自动化你的数据中心的关键点。 Ansible 是一个开源自动化工具,可以从中央控制节点统一配置服务器、安装软件或执行各种 IT 任务。它采用一对多、无客户端agentless的机制,从控制节点上通过 SSH 发送指令给远端的客户机来完成任务(当然除了 SS[详细]
-
运维人之运维的脸面
所属栏目:[经验] 日期:2021-05-22 热度:151
随着信息技术在各行各业越来越广泛地应用,社会上对IT运维的需求不断增加,同时由于云计算等技术的普及和成熟,弹性供给、按需付费、快速响应等特点使企业上云的意愿更加强烈,对传统运维人员的需求不增反减。技术的进步对传统行业带来的冲击是致命的,就[详细]
-
分享Linux运维工具:运维发布整改、运维监控告警
所属栏目:[经验] 日期:2021-05-22 热度:131
1.版本管理工具(数据库) 所有的发布应该以版本管理为起点。研发给的版本包先入版本管理工具,再从版本管理工具分发到现网发布。杜绝 rsync 一台服务器发布另外一台的做法。 2.配置管理工具(数据库) 版本加配置等于现网每台机器的状态。最粗粒度的配置管理[详细]
-
一文解析怎样全方位监控Linux系统状况
所属栏目:[经验] 日期:2021-05-22 热度:141
作为Linux系统运维人员,需要实时掌握Linux系统的运行负载,网络状态,磁盘,内存使用情况。所以作为开源监控警报系统prometheus, 官方自然给大家提供了这样一套工具,可以监控多个服务器的实时运行状况,以及实时警告。 Prometheus提供了node_exporter给[详细]
-
把运维和开发放一起就是DevOps?你想得美!
所属栏目:[经验] 日期:2021-05-22 热度:83
小张入职时是运维专员,原来隶属于运维部门,负责某业务线系统的应用维护工作。 一旦系统的生产环境出现任何故障,或者业务人员在生产环境上有任何请求,都是由小张所在的运维部门先处理,处理不了的,再联系该系统的开发团队一起处理。 由于生产环境关乎[详细]
-
Linux运维如何从初级变成为高级?需要明白哪些必备技能?
所属栏目:[经验] 日期:2021-05-22 热度:126
刚开始阶段需要熟悉Linux/Windows操作系统安装,目录结构、启动流程等。 2、系统管理 主要学习Linux系统,生产环境中基本都在字符界面完成工作,所以要掌握常用的几十个基本管理命令,包括用户管理、磁盘分区、软件包管理、文件权限、文本处理、进程管理、[详细]
-
浅谈使用Rapidxml 库遇到的问题和分析过程(分享)
所属栏目:[经验] 日期:2021-01-09 热度:85
副标题#e# C++解析xml的开源库有很多,在此我就不一一列举了,今天主要说下Rapidxml,我使用这个库也并不是很多,如有错误之处还望大家能够之处,谢谢。 附: 官方链接:http://rapidxml.sourceforge.net/ 官方手册:http://rapidxml.sourceforge.net/manua[详细]
-
如何在程序中判断VS的版本(实现方法详解)
所属栏目:[经验] 日期:2021-01-09 热度:130
代码如下所示: #includeiostream using namespace std; int main() { cout _MSC_VER endl; return 0; } 在VC6.0中结果为:1200 在VC10.0(VS2010)中结果为:1600 _MSC_VER实际就是 Microsoft visual c++ version(是微软的预定义宏). 具体对应如下: MS VC+[详细]
-
关于数据处理包dplyr的函数用法总结
所属栏目:[经验] 日期:2021-01-09 热度:152
dplyr专注处理dataframe对象,并提供更稳健的与其它数据库对象间的接口。 一、5个关键的数据处理函数: select() 返回列的子集 filter() 返回行的子集 arrange() 根据一个或多个变量对行排序。 mutate() 使用已有数据创建新的列 summarise() 对各个群组汇总[详细]
-
数据结构之数组Array实例详解
所属栏目:[经验] 日期:2021-01-09 热度:127
副标题#e# 数据结构之数组Array实例详解 数组Array 基本操作 Status InitArray(int dimm,...)//若维数dim和随后的各维长度合法,则构造相应的数组A,并返回OK Status DestroyArray() //销毁数组A Status Locate(va_list ap,int e,...) //A是n维数组,e为元[详细]
-
数据结构 数组顺序存储详细介绍
所属栏目:[经验] 日期:2021-01-09 热度:83
数据结构 数组顺序存储 最近学习数据结构,看到数组顺序存储,很是头昏,看不懂,很多东西,这里在网上找了比较详细的资料,大家好好看注释内容: #includestdarg.h #define MAX_ARRAY_DIM 8 //假设数组维数的最大值为8 typedef struct { ElemType *base;[详细]
-
Linux下g++编译与使用静态库和动态库的方法
所属栏目:[经验] 日期:2021-01-09 热度:117
在windows环境下,我们通常在IDE如VS的工程中开发C++项目,对于生成和使用静态库(*.lib)与动态库(*.dll)可能都已经比较熟悉,但是,在linux环境下,则是另一套模式,对应的静态库(*.a)与动态库(*.so)的生成与使用方式是不同的。刚开始可能会不适应[详细]
-
求解旋转数组的最小数字
所属栏目:[经验] 日期:2021-01-09 热度:181
求解旋转数组的最小数字 题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小数组。例如数组{3,4,5,1,2}是数组{1,2,3,5}的旋转数组,该数组的最小值为1。 思路解析: O([详细]
-
浅谈头文件algorithm中的常用函数
所属栏目:[经验] 日期:2021-01-09 热度:156
一、非修改性序列操作(12个) 循环 对序列中的每个元素执行某操作 for_each() 查找 在序列中找出某个值的第一次出现的位置 find() 在序列中找出符合某谓词的第一个元素 find_if() 在序列中找出一子序列的最后一次出现的位置 find_end() 在序列中找出第一[详细]
-
通过先序遍历和中序遍历后的序列还原二叉树(实现方法)
所属栏目:[经验] 日期:2021-01-08 热度:195
当我们有一个 先序遍历序列:1,3,7,9,5,11 中序遍历序列:9,1,11 我们可以很轻松的用笔写出对应的二叉树。但是用代码又该如何实现? 下面我们来简单谈谈基本思想。 首先,先序遍历的顺序是根据 根-左孩子-右孩子 的顺序遍历的,那么我们可以率先确认的是先[详细]
-
IOS 开发UITextView回收或关闭键盘
所属栏目:[经验] 日期:2021-01-08 热度:110
IOS 开发UITextView回收或关闭键盘 iOS开发中,发现UITextView没有像UITextField中textFieldShouldReturn:这样的方法,那么要实现UITextView关闭键盘,就必须使用其他的方法,下面是可以使用的几种方法。 1.如果你程序是有导航条的,可以在导航条上面加多[详细]
-
面试题快慢链表和快慢指针
所属栏目:[经验] 日期:2021-01-08 热度:58
腾讯的一道面试题:如何快速找到位置长度单链表的中间节点?普通方法,就是先遍历,在从头找到2/length的中间节点。算法复杂度是:O(3*n/2)。而更快的方法就是利用快慢指针的原理。 快慢链表:利用标尺的思想,设置两个指针(一快一慢)*serach和*mid,刚[详细]
-
详解原码、反码与补码存储与大小
所属栏目:[经验] 日期:2021-01-08 热度:199
详解原码、反码与补码存储与大小 原码: 如果机器字长为N个bit,那么一个数的原码就是N位二进制数,最高位 是符号位,1代表负数,0代表正数。 反码: 正数的反码就是原码,负数的反码就是符号位不变,其他取反。 补码: 正数的补码与其原码相同;负数的补码[详细]