C++/Linux知识分享
文章平均质量分 86
程序媛月下
这个作者很懒,什么都没留下…
展开
-
史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!
在使用 ln 创建链接时,如果没有 -s 选项,会创建一个 硬链接,而不是软链接。原创 2023-12-11 19:44:13 · 218 阅读 · 0 评论 -
nginx工程师,需要上承天命,下召九幽
这是一篇典型的xjjdog风格文章,扯淡比技术多,记得点赞哦。nginx很好用,几乎每个公司都在用,它的功能主要有 反向代理、 负载均衡、 动静分离等,其中最主要的就是反向代理。它的主要架构图如下:客户端是无法直接访问后端的server的,因为server资源高高在上,client并没有权限。这个时候,就需要有一个proxy,进行代理,将客户端的请求进行转发,然后把结果返回给client。为什么不能直接让client访问server呢?这就涉及到资源隔离问题。server的一些真实意图,是不想要cl原创 2020-08-06 20:42:27 · 282 阅读 · 0 评论 -
30张图带你彻底理解红黑树!看完后不理解欢迎来找茬!
红黑树(Red Black Tree) 是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组。接下来通过三十张图片带你彻底了解图片,本文适合入门跟初学者,多图预警,流量党慎入!!!当在 10 亿数据中只需要进行十几次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀!—学红黑树有感终于,在学习了几天的红黑树相关的知识后,我想把我所学所想和所感分享给大家。红黑树是一种比较难的数据结构,要完全搞懂非常耗时耗力,红黑树怎么自平衡?什么时候需要左旋或右旋?插入和删除原创 2020-06-04 17:05:48 · 285 阅读 · 0 评论 -
Redis高可用原理,这下能看懂了吧
Redis 是被广泛使用的基础软件之一,对于架构师和运维人员来说,了解 Redis 的高可用方案和背后的原理,是必备的基础知识。本文作者深入分析了 Redis 高可用的方方面面,并且做了有效总结,相信对广大读者可以起到很好的领路作用。Redis 中为了实现高可用采用了如下两个方式:主从复制数据。采用哨兵监控数据节点的运行情况,一旦主节点出现问题由从节点顶上继续进行服务。主从复制Redis 中主从节点复制数据有全量复制和部分复制之分。旧版本全量复制功能的实现全量复制使用 Snyc 命令来实原创 2020-06-03 21:32:48 · 247 阅读 · 0 评论 -
给大家安利下Linux监控工具,建议收藏
本文介绍了作者常用的 4 个 Linux 监控工具,希望可以帮助读者提高生产力。身为一个运维开发人员,如果你不知道眼下当前服务器底层操作系统中正在发生什么,那就有点合眼摸象了。其实,你可以根据相应数据做出一定的推测,但是要做到这一点,就需要原始数据,并且数据要有一定的实时性。你需要能够根据操作系统当前的运行状态,结合监控数据来做出合理判断,采取相应措施。你是否曾经遇到过一台服务器运行缓慢,但是 CPU 使用率看起来不是很高的情况?你是否遇到过服务器的网络利用率很高,但是定位不到导致高网络利用率的进程.原创 2020-06-03 17:33:03 · 407 阅读 · 0 评论 -
字节跳动面经分享,已拿Offor
一面3.9:40minHashMap和ConcurrentHashMap的区别vector,listC++多态,虚函数机制进程通信进程线程差异TCP三次握手四次挥手细节算法题:最长不重复字串(HashTable,O(N))面试官人非常好,有一些遗漏的知识点会给你指出来并且讲解,也很耐心。二面3.15:1hJava多态(看程序说结果,比较复杂,还考察了override和overwrite)二叉搜索树B树b+树红黑树删除算法用互斥锁实现读写锁,写者优先算法题:有100个方格,每个上原创 2020-06-03 15:49:34 · 260 阅读 · 0 评论 -
那些学到废寝忘食的技术,现在还有多少有用的?
昨晚做了一个梦,我学过的那些语言和技术都来找我了,争吵不休。C语言:老刘你肯定记得我,我是你的“初恋”语言,在大学里用指针把你蹂躏得痛不欲生。我:当然,我自以为学会了,可是工作后看到林锐写的《高质量 C++/C 编程指南 》,里边有一套试题,做过以后才知道我对指针的理解还是一塌糊涂。C语言:哈哈,你那时候还不知道我的主要用途是系统级编程,像操作系统,数据库,虚拟机,编译器,Web服务器都是用C语言写的,总是觉得只能在命令行窗口折腾呢。我:可不是,所以我“急功近利”地学了几个能快速创建GUI应用的语言转载 2020-06-02 14:28:51 · 293 阅读 · 1 评论 -
一文带你了解C++STL
目录一、顺序和关联容器共同支持的成员函数二、vectorvector的构造赋值操作直接访问向量元素vector向量的常用操作二、list链表的构造(模板参数T是链表的数据类型)链表赋值链表存取链表插入和删除链表的特殊操作三、stack主要操作一、顺序和关联容器共同支持的成员函数begin() 指向第一个元素end() 指向最后一个元素erase() 删除容器中的一个或多个元素rbegin() 指向按反顺序的第一个元素rend原创 2020-06-01 20:25:26 · 205 阅读 · 0 评论 -
一次 SQL 查询优化原理分析(900W+ 数据,从 17s 到 300ms)
有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调整SQL后,耗时347 ms (execution: 163 ms, fetching: 184 ms);操作: 查询条件放到子查询中,子查询只查主键ID,然后使用子查询中确定的主键关联查询其他的属性字段;原理: 减少回表操作;– 优化前SQLSELECT 各种字段F原创 2020-05-30 20:06:05 · 133 阅读 · 0 评论 -
谈一谈C++中的多线程(上)
本篇文章围绕以下几个问题展开:何为进程?何为线程?两者有何区别?何为并发?C++中如何解决并发问题?C++中多线程的语言实现?同步互斥原理以及多进程和多线程中实现同步互斥的两种方法Qt中的多线程应用引入传统的C++(C++98)中并没有引入线程这个概念。linux和unix操作系统的设计采用的是多进程,进程间的通信十分方便,同时进程之间互相有着独立的空间,不会污染其他进程的数据,天然的隔离性给程序的稳定性带来了很大的保障。而线程一直都不是linux和unix推崇的技术,甚至有传言说linus本人原创 2020-05-29 14:55:08 · 404 阅读 · 0 评论 -
C++|究竟有没有未来?未来发展前景如何
很多人说C++现在已经过时了,快要被淘汰了,真的是这样吗?权威部门统计,我国目前C/C++软件开发人才缺口每年为10万人左右,未来随着信息化、数据化不断提速,这一数字还将成倍增长。从事编程领域工作多年,最先接触的是C#,但是后续由于其跨平台性的限制,逐渐转向C++。其实最开始我是十分抵触C++的,因为写C#习惯了,用起C++来真的十分不习惯。不仅仅是难,系统库的查看方面也不如C#的简洁清晰。但是到后面,随着业务水平渐涨,越来越喜欢上C++了,C++是一门十分强大、前景广阔的语言。下面就一起来看看(C和C转载 2020-05-28 17:10:42 · 3065 阅读 · 1 评论 -
C++你绝对不能错过的干货资料(文末免费领取)
在大多数开发或者准开发人员的认识中,C/C++ 是一门非常难的编程语言,很多人知道它的强大,但因为认为“难”造成的恐惧让很多人放弃。这个世界本来就是残酷的,所以你不能怪C++向你展示了世界的本质大家都觉得很难等你攀登到高峰的时候发现,原来前面还有比这更高的山峰,等着你去继续攀登。C++你绝对不能错过的干货资料(文末免费领取)【文章福利】:小编整理了一些个人觉得比较好的C语言/C++学习书籍、视频资料共享在文章最后,有需要的可以自行获取哦!~C++为什么难?1、C++语法规则多本身想通过各种规则原创 2020-05-27 19:56:52 · 201 阅读 · 0 评论 -
一面阿里云C++面试题汇总
1、如何初始化一个指针数组。解析:首先明确一个概念,就是指向数组的指针,和存放指针的数组。 指向数组的指针:char (*array)[5];含义是一个指向存放5个字符的数组的指针。 存放指针的数组:char *array[5];含义是一个数组中存放了5个指向字符型数据的指针。 按照题意,我理解为初始化一个存放指针的数组,char *array[2]={“China”,”Beijing”};其含义是初始化了一个有两个指向字符型数据的指针的数组,这两个指针分别指向字符串”China”和”Beijing”。原创 2020-05-27 11:06:32 · 494 阅读 · 0 评论 -
从小厂到腾讯T2.3OFFER,我所整理的面试题(含答案)
腾讯C++第一轮面试题目:不会做别着急 ,文末有答案1、自我介绍(自由发挥)2、301和302的区别?3、红黑树是什么样的数据结构?红黑树和B数的区别?4、堆和栈的区别?5、谈一下对乐观锁和悲观锁的认识6、结构体struct和联合体union的区别7、三次握手的具体实现,time_wait原理?8、C和C++的特点与区别9、计算机网络中不同层有用到哪些协议?如果这上面这些问题你只会一半,你第一轮就要被淘汰,接下来你就要继续死磕C++啦!腾讯T3C++开发工程师面试总结c/c+.原创 2020-05-25 20:11:27 · 409 阅读 · 0 评论 -
GO的语言特性是什么?Go语言到底好不好用?
真的很好用啊。个人认为GO最重要的一个语言特性就是KISS(保持简单和愚蠢)。这个特性看似简单,实则是解决当代和未来软件工程问题的一项非常必要的特性,具体原因下面细说:Go背后的设计思想是现代编程的“保守派”思绪,它的产生是因为像谷歌这样的工程团队已经开始遇到一些非常棘手的问题而在现有编程语言框架下不能很好地解决。因此他们决定去创新,用一种退步”的思想去面对软件开发领域的大量新问题,这种“以退为进”是其最大的哲学思辨,也是能否Get到它的好用的最核心一点。科技主导的进步论是今天社会的主流信仰,在软件开原创 2020-05-23 15:25:50 · 484 阅读 · 0 评论 -
私藏的实用工具C/C++书目推荐
1.Essentital C+±-------lippman--------C++大师之作,主攻核心,轻薄短小,经典2 .The C++ programming language--------C++之父,技术权威,C++百科全书代表,圣经。3.C++ Primer-------lippman------- 经典之作,C++百科全书式代表。4.Inside the C++ object model--------lippman------- 提示C++底层,比较难。5 . effective C+±原创 2020-05-22 20:22:04 · 434 阅读 · 0 评论 -
深入浅出的带你深入了解数据结构
数据结构的学习者大多有这样的感慨:数据结构跟重要,一定要学好,但数据结构比较抽象,有些算法理解起来很困难,学得很累。小编在这里更希望传达的是这样的信息:数据结构非常有趣,很多算法是智慧的结晶,学习它是去感受计算机编程技术的魅力,在理解掌握它的同时,整个过程是都是一种愉悦的精神感受,而非枯燥乏味的一门课程。在这里,小编给大家安利一本关于数据结构有趣的书——《大话设计模式》。文末可以免费获得。关注并私信我关键词资料,可免费获得本书。...原创 2020-05-21 21:32:07 · 265 阅读 · 0 评论 -
产品经理如何避免被程序员打?
我来说下接地气的几个招,都是我在鹅厂和创业公司实践摸索出来的。1、妙用程序猿鼓励师何为程序猿鼓励师,其实就是很多刚入职的产品助理,鹅厂很多产品经理其实颜值都不错,都是从产品助理一步步过来的。产品经理如果是男生,男生磕男生,是很容易擦枪走火的,经常两个人会死磕到凌晨,嘴巴上基本都已经对骂N次,偶尔还会肢体接触,很不划算。产品经理是一个组,大概3-5人,中间最好插1-2个美女助理,男生产品经理负责对老板,做规划,女生产品经理负责对接程序猿,提新需求,改bug。2、借力老板产品经理实质上都是老板想法的原创 2020-05-20 22:02:01 · 279 阅读 · 0 评论 -
华为19B.C++开发工程师面试方案。(配答案)
华为内部职级体系,本编文章中就不给大家介绍了。前几篇文章中有介绍,请关注我。今天分享下高级工程师们的面试总结,这些问题你能答上几个?(含答案)第一阶段:啃书《软件设计师教程》《程序员面试攻略》《tcp/ip详解卷1~3》《C++Primer》先把基础的数据结构与算法(c++)版搞得非常熟,对于数组,链表,栈,队列,字符串,二叉树,查找,排序要非常熟,最好多写几遍。其他的在面试之前两三个月内看看第二阶段:简历,自我介绍,群面简历:这个稍微说下,很多C++程序员,面试的时候对于自己的简历方面做原创 2020-05-19 22:27:17 · 534 阅读 · 0 评论 -
C++资深开发工程师带你深入浅出了解Linux后台开发
我们知道,Linux 是一个多任务的操作系统,也就是说,在同一时间,系统可以运行多个任务。在带界面的 Linux 发行版下,我们可以很轻松通过鼠标来进行多任务的切换。今天小编就带大家一起来看看资深的C++开发工程师是怎么带大家深入浅出Linux后台的,熟练掌握linux后台知识需要掌握哪些知识点呢?分布式系统区块区块链的概念组件密码学基本概念ECC椭圆曲线算法P2P网络哈希算法区块的组成梅克尔树挖矿节点共识算法区块链的应用高性能web服务器以及集群实战异步IO同步阻塞IO原创 2020-05-19 17:15:18 · 295 阅读 · 0 评论 -
腾讯面试题(二)——基础知识积累
基础知识积累1、netstat、tcpdump、ipcs、ipcrm4个命令;查看系统当前的整体⽹络连接状态:netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’查看端⼝的链接状态、接受和发送缓存:netstat -anlp | grep ${port}查看和删除共享内存、消息队列、信号量状态:ipcs、ipcrm2、CPU、内存、硬盘、IO以及系统性能调优;阅读性能优化笔记3、网络、接口、进程状态的获取;原创 2020-05-18 21:56:23 · 299 阅读 · 0 评论 -
C++程序员的职业生涯规划
一、C++服务器程序员(高性能服务器后台)1、良好的TCP/IP协议,C++基础;2、大学本科学历,计算机相关专业,一年以上服务器开发工作经验(优秀应届生亦可接受);3、熟悉C++语言编程,能够独立根据需求进行模块设计和进行开发工作;4、理解面向进程的编程思想,注重代码质量,单元测试,功能测试,持续改进;5、具备较强的学习能力,良好的沟通能力及团队协作能力,具有很强的责任心,能承受较大的工作压力。1、本科以上学历,计算机相关专业;2、2年以上Unix/Linux下C/C++开发经验,熟悉面向对原创 2020-05-18 15:29:12 · 673 阅读 · 0 评论 -
这个offer你吃定了!C++「面试真题」及基本知识点总结
自闭型小编。对于前几篇文章,表示很抱歉。小编今后一定实事求是的做好每一篇文章!结构体和共同体的区别。定义:结构体struct:把不同类型的数据组合成一个整体,自定义类型。共同体union:使几个不同类型的变量共同占用一段内存。地址:struct和union都有内存对齐,结构体的内存布局依赖于CPU、操作系统、编译器及编译时的对齐选项。关于内存对齐,先让我们看四个重要的基本概念:1.数据类型自身的对齐值: 对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,原创 2020-05-16 22:00:49 · 580 阅读 · 0 评论 -
C++学习 | 面试官:我们只想要这样的C++工程师
招聘要求是什么?这个很正常哈,主要是咱们平时很少去关注企业的招聘要求,所以不知道怎么学,更不知道要学哪些内容从哪学起。所以就就分析了大量公司的校园招聘,根据招聘要求给大家总结出了每个方向的学习路径。特此一篇关于C++方向的文章随后也会出来,欢迎大家关注呀~~一、什么是C++研发工程师呢?C++是最贴近底层编程语言。在性能方面上,有着无可替代的优势特别是对于很多游戏开发公司来说,C++尤其适合作为后端服务的开发语言。在一些对于并发性能要求较高的业务上,C++也有绝对的优势。因此大部分公司的核心业务都是用C+原创 2020-05-16 14:40:30 · 547 阅读 · 1 评论 -
redis灵魂21问
1.什么是redis?Redis 是一个基于内存的高性能key-value数据库。2.Reids的特点Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1原创 2020-05-15 22:30:01 · 293 阅读 · 0 评论 -
经验分享:如何成为一名优秀的高级C++程序员?
C++这门语言从诞生到今天已经经历了将近30个年头。不可否认,它的学习难度都比其它语言较高。而它的学习难度,主要来自于它的复杂性。现在C++的使 用范围比以前已经少了很多,java、C#、python等语言在很多方面已经可以代替C++。但是也有很多地方是其他语言完全无法替代的,主要集中在需 要运行效率比较高的行业,比如游戏、高效的服务器。现在学习java、C#等语言的人数远远高于C++,主要是C++的入门门槛太高,可能学习了一段时间后还做不了什么东西,导致信心大受打击,进而放弃。我想把我自己的经验分享给原创 2020-05-15 20:29:10 · 304 阅读 · 0 评论 -
C++腾讯面试题库干货!作为程序员,这些都掌握了,还有什么理由拿不到offer?
前面小编发的两篇文章就是相对这些问题的知识点。方便大家套用练习,特别在面试前翻看几次,临时记忆也好。助你轻松拿到大厂offer。记得关注我。C 和 C++ 区别const 有什么用途主要有三点:1:定义只读变量,即常量2:修饰函数的参数和函数的返回值3: 修饰函数的定义体,这里的函数为类的成员函数,被const修饰的成员函数代表不修改成员变量的值指针和引用的区别1:引用是变量的一个别名,内部实现是只读指针2:引用只能在初始化时被赋值,其他时候值不能被改变,指针的值可以在任何原创 2020-05-15 11:18:30 · 431 阅读 · 0 评论 -
华为,阿里资深工程师带你 走进nosql之redis
Nosql 历史随着大数据时代的到来,越来越多的网站、应用系统需要支撑海量数据存储,高并发请求、高可用、高可扩展性等特性要求,传统的关系型数据库在应付这些调整已经显得力不从心,暴露了许多能以克服的问题。由此,各种各样的NoSQL(Not Only SQL)数据库作为传统关系型数据的一个有力补充得到迅猛发展。本文将分析传统数据库的存在的相关问题,以及几大类NoSQL如何解决这些问题,希望给大家提供在不同业务场景下,关于存储方面技术选型提供参考。2. 传统数据库缺点· 大数据场景下I/O较高因为数.原创 2020-05-14 22:21:54 · 311 阅读 · 0 评论