自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 收藏
  • 关注

原创 文件系统基础知识

文件系统基础知识

2022-09-13 22:39:14 1426

原创 HDFS之HA模式

文章目录基本特点HDFS-HA解决方案选主Journal NodeFederation解决方案HA模式搭建基本特点主从集群结构相对简单,主与从协作主:单点,数据一致好掌握缺点:单点故障,集群整体不可用;压力过大,内存受限解决方案:单点故障:高可用方案HA(High Available):多个NN,主备切换 —— 即当NameNode故障后,其备用的服务器会替换姑臧的服务器,作为主NameNode(HADOOP 2.x只支持HA的一主一备)主压力过大,内存受限:联邦机制Federa

2022-04-16 22:10:36 3494 1

原创 Hadoop应用配置

文章目录hadoop目录配置hadoop角色hadoop运行和使用hadoop 观察FsImage和EditLog分发配置hadoop目录bin :功能模块sbin:shell脚本etc:配置lib:使用库bin和sbin目录都要加入到环境变量中。vi /etc/profile增加:export HADOOP_HOME = /opt/data/hadoope-.6.5export PATH=PATH:PATH:PATH:JAVA_HOME/bin:HADOOPHOME/bin:HA

2022-04-13 20:33:17 1833

原创 HDFS之基本理论

文章目录元数据持久化元数据持久化基本概念:1)日志文件:记录实时发生的增删改的操作,是一个文本文件,通过追加的方式进行添加,其优点是完整性好,但其加载回复数据较慢而且占用空间大。适用场景:体积小,记录少2)镜像/快照/dump:间隔(单位可以是小时,天,10分钟,1分钟,5秒钟),内存全量数据基于某一个时间点做的向磁盘的溢写。 —— 间隔时间不能太短,由于磁盘I/O速度较慢。其优点在于,恢复速度快,但容易丢失一部分数据。使用场景:滚动更新快HDFS是结合使用的,使用EditsLog日志

2022-04-11 22:15:48 215

原创 Netty基础

文章目录Reactor模型零拷贝技术netty调用流程图(Server)Channel HandlerPipeline 组件TaskQueuenetty简单案例小结netty 底层实际上也是一个c/s的I/O,其是对NIO的封装和优化,也就是说其也是依赖于selector原理的。Reactor模型响应式编程:当某种事件发生的时候,触发回调对应的方法,程序开始相应并处理该事件正如序言的案例:当有事件发生的时候,才会触发调用处理器进行数据处理具体分析:Reactor:负责响应IO事件,当检测到

2022-03-13 16:47:03 1725

原创 分布式中间件基础序言

文章目录BIONIO多路复用器 selectorselector 底层原理epollselect, poll and epoll 三者区别radis线程模型BIOBIO:blocking io,阻塞等待例如:创建一个server后,将等待client的连接到来,程序不会向下执行。当连接建立后,触发server去读取client信息。在read client的发送的信息的时候,同样是阻塞的。未拿到client的信息,依然不会进行继续执行。缺点:无法处理多个client的连接-> 对read

2022-03-02 21:28:35 313

原创 回溯算法小结

文章目录序言组合总和序言所谓回溯方法,总是用于找到所有组合,所有可能的题目下。需要注意的是,回溯一般分为三个大步骤,分别为:添加可能元素,进行下一个查找,删除末尾元素,这三个步骤。添加可能元素:将当前位置的元素放入临时的列表中,用于暂存这种可能进行下一个查找:考虑在该分布的前提下,下一个可添加的元素。当递归到最有一个可能时,该可能要么成立,放入结果列表中,或者不成立,直接放弃。最有一个元素都已经完成了判断。故而函数返回上一层后,该元素需要被删去,以便在增加另一个元素,考虑另一种可能。组合总和

2022-02-26 20:18:21 226

原创 cpprest库手动编译(版本号:2.10)

这里写自定义目录标题依赖的库openssl 安装cmakeboostcpprest依赖的库cmake:3.0.0以上openssl:1.0.0以上,这里使用的是1.1.0gboost:1.5.4以上,这里使用的是1.74.0g++: 4.8以上,这里用的是5.4.0openssl 安装找到openssl的git仓库https://github.com/openssl/openssl在网页上点击下载,得到压缩包tar -zxvf openssl_1_1_0mkdir Dopenssl

2020-10-29 21:06:25 1450

原创 Github Pages

Github PagesGenerate Github PagesHow to fix HTTP 404 on Github Pages?Generate Github Pages创建一个新的仓库,并在创建时,选择public,附带默认Readme创建好后,进入右上角的setting,找到Github Pages,修改source为master branch返回code界面,上传网页文件,如html文件等在setting中找到生成的网址即可(若无法使用,修正方法见下一栏)或者使用预生成网址,在

2020-06-09 10:11:29 214

原创 c++ primer 第六章 语句

文章目录复合语句switch语句do while 语句break语句continue语句goto 语句try 块和异常处理throw 表达式try 块函数在寻找处理代码的过程中退出标准异常使用预处理器进行调试复合语句复合语句,通常被称为块,是用一对花括号括起来的语句序列(也可能是空的)块标识了一个作用域,在块中引入的名字只能在该块内部或嵌套在块中的子块里访问switch语句提供了一...

2020-04-18 10:52:32 353

原创 c++ primer 第五章 表达式(部分)

文章目录在单个表达式中组合使用解引用和自增操作箭头操作符sizeof 操作符悬垂指针类型转换在单个表达式中组合使用解引用和自增操作vector<int>::iterator iter = ivec.begin();// prints 10 9 8 ... 1while (iter != ivec.end())cout << *iter++ << end...

2020-04-17 17:01:13 198

原创 c++ primer 第四章 数组和指针

文章目录数组数组的定义和初始化初始化数组元素指针指针变量的定义指针可能的取值void* 指针指针操作指针和引用的比较指向指针的指针使用指针访问数组元素指针的算术操作计算数组的超出末端指针指针和 const 限定符指向 const 对象的指针const 指针指针和 typedefC 风格字符串创建动态数组动态数组的定义初始化const 对象的动态数组动态空间的释放string和c语言风格字符串使用数...

2020-04-17 10:59:46 292

原创 c++ primer 第三章 标准库类型

文章目录命名空间的 using 声明标准库 string 类型string 对象的定义和初始化读入未知数目的string 对象使用getline 读取整行文本string 对象的操作和字符串字面值串联从string 对象获取字符string 对象中字符的处理标准库 vector 类型定义和初始化vector 对象的操作迭代器简介begin 和 end 操作vector 迭代器的自增和解引用运算co...

2020-04-15 16:22:16 231

原创 c++ primer 第二章 变量和基本类型

文章目录整型带符号和无符号类型整型的赋值浮点型字面值常量整型字面值规则浮点字面值规则布尔字面值和字符字面值非打印字符的转义序列字符串字面值多行字面值变量定义对象初始化整型short、int 和 long 类型都表示整型值,存储空间的大小不同带符号和无符号类型整型可以是带符号的(signed)也可以是无符号的整型 int、short 和 long 都默认为带符号型。要获得无符号型则必...

2020-04-10 16:09:54 351

原创 ubuntu终端下载速度太慢改善方案

使用root用户,进入apt文件夹中cd /etc/apt找到sources.list文件修改(注意修改前要)sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup在文件前添加新的源:编辑/etc/apt/sources.list文件, 在文件最前面添加阿里云镜像源:阿里源# 阿里源deb http...

2020-03-20 10:58:59 3272

原创 c++ primer 第一章

第一章输入输出简介iostream控制结构while输入输出简介iostreamiostream是两种命名为 istream 和 ostream 的类型,,分别表示输入流和输出流;简单程序如下:#include <iostream>int main(){std::cout << "Enter two numbers:" << std::end...

2020-03-12 16:57:33 174

原创 Linux之ssh服务

文章目录基础知识点远程终端文件传输基础知识点ssh(secure shell)协议作用:远程连接,远程文件传输协议端口:默认端口号为22;端口号可修改——利用etc/ssh/ssh_config文件按修改远程终端常见终端软件:Xshell、secureCRT、Putty等介绍putty:打开Putty软件在弹出key确认的时候点击“是”,以后不会再提示...

2020-02-23 16:20:51 215

原创 matlab小结

Matlabcolorbarfigurecolorbar添加colorbar;设置colorbar('fontsize',15);//设置colorbar字体大小colorbar('position',[1 1 0.5 0.9]); //方括号里的数据分别指的是:colorbar最左下角点的横坐标、纵坐标、宽度、高度caxis([20 80]);//方括号里的数据是...

2020-01-07 15:16:24 454

原创 mobi格式书记查询网页——免费版本

子午书简可以搜到mobi格式,pdf格式等多种格式的书籍;利用云盘进行搜书,免费下载公众号:夜半书简利用公众号搜书,由公众号负责人发送相关链接下载;...

2019-11-15 10:04:43 240

转载 线程池的实现

为什么要使用线程池?       ~~~~~~~       传统多线程方案中我们采用的服务器模型则是一旦接受到请求之后,即创建一个新的线程,由该线程执行任务。任务执行完毕后,线程退出,这就是是“即时创建,即时销毁”的策略。尽管与创建进程相比,创建线程的时间...

2019-09-24 16:49:23 136

原创 安排机器

题目:小Q的公司最近接到m个任务, 第i个任务需要xi的时间去完成, 难度等级为yi。小Q拥有n台机器, 每台机器最长工作时间zi, 机器等级wi。对于一个任务,它只能交由一台机器来完成, 如果安排给它的机器的最长工作时间小于任务需要的时间, 则不能完成,如果完成这个任务将获得200 * xi + 3 * yi收益。对于一台机器,它一天只能完成一个任务, 如果它的机器等级小于安排给它的任务...

2019-09-20 20:25:29 178

原创 深度优先遍历和广度优先遍历(c++)

深度优先遍历定义:所谓深度优先遍历就是从某个节点出发,通过与其相连接的一个节点向下走,直到无法继续走下去。再遍历其余未走过的节点;案例说明:从A点出发,深度遍历结果应为:ABCDEFGHI —— 先沿ABCDEFGH走完第一条路,返回G,所有点都访问了;返回F,所有点都访问了… 直到返回到C点,发现I未被访问,访问I点;具体代码实现:图构建一个邻接矩阵递归版本刚开始构建一个fla...

2019-09-16 18:28:52 4095

原创 排序算法总结(c++版本)

文章目录冒泡排序插入排序冒泡排序它的原理很简单,每次从左到右两两比较,把大的交换到后面,每次可以确保将前M个元素的最大值移动到最右边;步骤:从左开始比较相邻的两个元素x和y,如果 x > y 就交换两者执行比较和交换,直到到达数组的最后一个元素重复执行1和2,直到执行n次,也就是n个最大元素都排到了最后void bubble_sort(vector<int> &...

2019-09-15 15:01:21 136

原创 文件查找

which作用:which指令会在环境变量$PATH设置的目录里查找符合条件的文件。格式:which [文件...]参数:-n<文件名长度>  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。-p<文件名长度>  与-n参数相同,但此处的<文件名长度>包括了文件的路径。-w  指定输出时栏位的宽度。-V  显示版本信息案例:...

2019-09-06 21:31:51 172

原创 查看文件内容

cat格式:cat /path_to_file/file_name显示该文件的全部内容tac格式:与cat使用格式相同按照反序显示该文件内容;即最后一行最先显示出来;more作用:类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示格式:more [-dlfpcs...

2019-09-06 21:05:55 633

原创 按年月日排序

题目:按照年月日进行排序,若年相同则按月排序,若月也相同则按日期排序;解答:#include <iostream>#include <set>#include <algorithm>#include <iterator>using namespace std;class Date{private: int year; ...

2019-09-06 09:25:35 2009 1

原创 面试小结

c++面试题目小结char指针多大回答:char1,short2,int4,指针4,long4,longlong8,double8.强调了我知道64位一般指针是8,但是我自己在编译器里sizeof确实是这个结果。char指针指向int,并且输出会c%输出嘛?变成s%呢。回答:否,除非强制转换,还不能太大。s%不知道在哪儿分界了解namspace std什么意思吗?所谓nam...

2019-09-04 15:52:57 188

转载 智能指针

文章目录为什么要使用智能指针auto_ptrunique_ptrshare_ptrweak_ptr本文介绍c++里面的四个智能指针: auto_ptr, shared_ptr, weak_ptr, unique_ptr 其中后三个是c++11支持,并且第一个已经被c++11弃用。为什么要使用智能指针我们知道c++的内存管理是让很多人头疼的事,当我们写一个new语句时,一般就会立即把delet...

2019-09-04 15:19:43 850

转载 std::packaged_task介绍及使用

一、std::packaged_task简介在上一篇,我们介绍了std::promise的使用方法,其实std::packaged_task和std::promise非常相似,简单来说std::packaged_task<F>是对std::promise<T= std::function<F>>中T= std::function<F>这一可调对象(...

2019-09-03 16:03:26 462

转载 std::promise介绍及使用

一、std::promise介绍std::promise是C++11并发编程中常用的一个类,常配合std::future使用。其作用是在一个线程t1中保存一个类型typename T的值,可供相绑定的std::future对象在另一线程t2中获取。在主函数(主线程)中声明 promise 及其对应的 future,在某个线程中传入 promise 并进行运算;在另一个线程中出入 future...

2019-09-03 15:55:18 1790

原创 IO多路复用

关于同步/异步,堵塞/非堵塞已在上一篇讲过;I/O多路复用技术的最大优势是系统开销小,系统不必创建进程/线程;I/O多路复用技术就是通过一种机制,一个进程可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作;select,poll,epoll本质上都是同步I/O;select调用是内核级别的,select轮询相对非阻塞的轮询的区别在于— 前者可以...

2019-09-03 13:31:52 309

原创 同步与堵塞

一、案例:故事:老王烧开水。出场人物:老张,水壶两把(普通水壶,简称水壶;会响的水壶,简称响水壶)。老王想了想,有好几种等待方式1.老王用水壶煮水,并且站在那里,不管水开没开,每隔一定时间看看水开了没。-同步阻塞老王想了想,这种方法不够聪明。2.老王还是用水壶煮水,不再傻傻的站在那里看水开,跑去寝室上网,但是还是会每隔一段时间过来看看水开了没有,水没有开就走人。-同步非阻塞老王想了想...

2019-09-03 12:56:03 767

原创 哈夫曼树原理及哈夫曼编码

(一) 哈夫曼树目的:找出存放一串字符所需的最少的二进制编码原理:统计出每种字符出现的频率!(也可以是概率)//权值选择最小的两个,其根节点值为这两个元素权值的和;将出现频率(权值)最小的放在根节点左侧,次小值放在根节点右侧;用权值和替代原来的两个元素的权值;接着重复第二步,直到所有元素都被放置好为止;例题:假如我有A,B,C,D,E五个字符,出现的频率(即权值)分别为5,4,3...

2019-09-01 19:43:24 1227

原创 鸟哥linux私房菜(一)

文章目录(一) Linux将所有装置都看作文件(二)磁盘MSDOS(MBR)和GPT磁盘分区表MBR分区格式表:GUID磁盘分区开机流程的BIOS和UEFI(一) Linux将所有装置都看作文件在linux中每个装置都被当做文件使用;如: IDE接口的硬盘的文件名:/dev/sd[a-d] 表示: sda,sdb,sdc,sdd四个文件硬件配置基本都在/dev文件下(二)磁盘磁盘...

2019-08-28 11:35:31 305

原创 chmod命令详细用法

文章目录使用方式范例用数字来表示权限权限分析使用方式 chmod [-cfvR] [--help] [--version] mode file... mode : 权限设定字串,格式如下 : [ugoa…][[±=][rwxX]…][,…],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是+表示增加权限、- 表...

2019-08-25 13:51:52 244

原创 c++ set用法

文章目录特点头文件用法案例特点set中的元素是排好序的set中的元素不重复头文件#include<set>用法set<int> my_set;my_set.insert(a);my_set.erase(iter); //输入迭代器my_set.clear();my_set.empty();my_set.begin();my_set.end()...

2019-08-24 10:40:10 3843

原创 选择问答题汇总

head()和tail()head() 返回列表的第一个元素;tail() 返回列表的删去第一个元素之后的剩余列表;K=(m,n,(p,(q,s)),(h,f)),head[tail[head[tail[tail(K)]]]]tail(K)-------(n,(p,(q,s)),(h,f))tail[tail[K]]--------((p,(q,s)),(h,f))head()--...

2019-08-23 21:24:44 671

原创 寻找子串

题目: https://www.nowcoder.com/questionTerminal/266fa434c2b641fc8c5f430de127c64f给出m个字符串S1,S2,…,Sm和一个单独的字符串T。请在T中选出尽可能多的子串同时满足: 1)这些子串在T中互不相交。 2)这些子串都是S1,S2,…,Sm中的某个串。 问最多能选出多少个子串。输入描述:第一行一个数m(1≤m≤...

2019-08-23 18:49:45 450

原创 输入接口总结

输入接口输入一行数字输入一行字符串输入多行数字输入多行字符串混合输入需分割注意输入一行数字#include<iostream>#include<vector>using namespace std;//已知输入数字的个数int n;cin >> n; //输入个数vector<int> number;for(int i=0;i&...

2019-08-22 15:06:02 212

原创 Linux学习(三) 自由服务和用户管理

文章目录运行模式用户与用户组管理(重点)用户管理修改用户设置密码删除用户自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务(内置)运行模式运行模式也可以称之为运行级别在linux中存在一个进程:init (initialize,初始化),进程id是1该进程存在一个对应的配置文件:inittab(系统运行级别配置文件,位置**/etc/inittab*...

2019-08-22 12:41:05 216

空空如也

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

TA关注的人

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