自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis分布式锁原理详解 - Redisson

linux服务器开发相关视频解析:线程锁、进程锁、分布式锁以及数据库锁linux后台开发面试必备技能——锁,原子操作,CASc/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师一、高效分布式锁当我们在设计分布式锁的时候,我们应该考虑分布式锁至少要满足的一些条件,同时考虑如何高效的设计分布式锁,这里我认为以下几点是必须要考虑的。1、互斥在分布式高并发的条件下,我们最需要保证,同一时刻只能有一个线程获得锁,这是最基本的一点。2、防止死锁在分布式高并发的条件下

2021-03-31 16:32:39 525

原创 C++开发必知五大内存泄露应对之策,好文必看

linux服务器开发相关视频解析:linux后台开发面试必备技能——锁,原子操作,CAS腾讯T2.3亲身经历分享,腾讯offer的获取之路c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师作为 C++ 程序员,内存泄露始终是悬在头上的一颗炸弹。在过去几年的 C++ 开发过程中,由于我们采用了一些技术,我们的程序发生内存泄露的情况屈指可数。今天就在这里向大家做一个简单的介绍。内存是如何泄露的在 C++ 程序中,主要涉及到的内存就是『栈』和『堆』(其他部分不在本

2021-03-30 16:00:36 205

原创 Linux 为什么要动态链接?与静态链接的区别是什么?

linux服务器开发相关视频解析:网络底层io的那些事,redis,memcached,nginx基于linux epoll原理剖析以及三握四挥的细节处理c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师先抛出几个问题:为什么要进行动态链接?如何进行动态链接?什么是地址无关代码技术?什么是延迟绑定技术?如何在程序运行过程中进行显式链接?为什么要进行动态链接?因为静态链接有缺点:1、浪费内存和磁盘空间:如下图,Program1和Program

2021-03-29 16:30:02 316

原创 状态模式:一个Epoll边缘触发的代理服务器设计

linux服务器开发相关视频解析:linux下的epoll实战揭秘——支撑亿级IO的底层基石支撑互联网的基石tcpip,5个方面全面解析c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师设计模式是一门热门的知识,但是何时应该用哪个,却往往不容易掌握,本文以一个Socks5代理服务器的设计为例,介绍状态模式的实践用法。软件的功能介绍提供Socks5代理功能,同时支持TCP和UDP可以转发代理连接,把代理服务器连接成代理链条使用Linux epoll边缘触

2021-03-27 15:58:40 131

原创 3月,腾讯最新职级技术要求曝光,Linux炸了。

北京时间3月8日,腾讯借助腾讯课堂平台首发了对标腾讯职级体系,而作为c/c++Linux开发更有详细职级技术匹配要求学习图谱,赶紧来领一份吧,手快有,手慢无!1、语言2、数据结构与算法3、数据库4、网络原理还有操作系统、网络编程、分布式架构、云原生、软技能等方面的能力划分,赶紧来免费领取一份吧!添加官方客服贝贝免费领取!!!(微信、QQ同号:602878196)而拥有了与之匹配的技术栈,我们该如果提升自身的技术能力呢?这里首推的就是获得腾讯课堂“薪选”好课的c/c++Lin.

2021-03-22 16:39:38 337

原创 Linux中的各种锁及其基本原理

linux服务器开发相关视频解析:linux后台开发面试必备技能——锁,原子操作,CAS基于linux epoll原理剖析以及三握四挥的细节处理c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师通过本文将了解到如下内容:Linux系统的并行性特征互斥和同步机制Linux中常用锁的基本特性互斥锁和条件变量1.Linux的并行性特征Linux作为典型的多用户、多任务、抢占式内核调度的操作系统,为了提高并行处理能力,无论在内核层面还是在用户层面都需要特殊.

2021-03-19 15:41:48 235

原创 【linux】19个面试常见的进程和线程问题

linux服务器开发相关视频解析:基于linux epoll原理剖析以及三握四挥的细节处理Linux内核,进程间通信组件的实现c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师01什么是进程?标准定义:进程是一个具有一定独立功能的程序在一个数据集合上依次动态执行的过程。进程是一个正在执行程序的实例,包括程序计数器、寄存器和程序变量的当前值。简单来说进程就是一个程序的执行流程,内部保存程序运行所需的资源。在操作系统中可以有多个进程在运行,可对于CPU来说,同

2021-03-13 17:01:05 387

原创 【深入学习Redis】Redis内存模型

linux服务器开发相关视频解析:后端开发必不可少的缓存组件—redis源码分析epoll的网络模型,从redis、memcached到nginx,一起搞定c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师前言Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分。我们使用Redis时,会接触Redis的5种对象类型(字符串、哈希、列表、集合、有序集合),丰富的类型是Redis相对于

2021-03-11 16:03:08 80

原创 深入理解高性能网络开发路上的绊脚石 - 同步阻塞网络 IO

linux服务器开发相关视频解析:支撑亿级io的底层基石 epoll实战揭秘基于linux epoll原理剖析以及三握四挥的细节处理c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师在网络开发模型中,有一种非常易于开发同学使用的方式,那就是同步阻塞的网络 IO。例如我们想请求服务器上的一段数据,那么 C 语言的一段代码 demo 大概是下面这样:int main(){ int sk = socket(AF_INET, SOCK_STREAM, 0);

2021-03-10 16:29:57 138

原创 最新2021腾讯精选面试题及答案

c/c++ linux后台开发相关视频解析:什么技术水平,才能拿到腾讯T9(原T3.1)offer?11道腾讯微信面试过程的随口题,道道经典,你能答出几道题c/c++ linux服务器开发免费学习地址: c/c++ linux后台服务器高级架构师1、有序链表合并/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), ne

2021-03-09 15:48:44 1959

原创 Linux上TCP的几个内核参数调优

tcp相关视频解析:支撑互联网的基石tcpip,5个方面全面解析徒手实现网络协议栈,请准备好环境,一起来写代码c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师Linux作为一个强大的操作系统,提供了一系列内核参数供我们进行调优。光TCP的调优参数就有50多个。在和线上问题斗智斗勇的过程中,笔者积累了一些在内网环境应该进行调优的参数。在此分享出来,希望对大家有所帮助。调优清单好了,在这里先列出调优清单。请记住,这里只是笔者在内网进行TCP内核参数调优的经验,

2021-03-08 17:19:12 415

原创 「linux」经典面试题之服务器内存碎片

linux服务器开发相关视频解析:90分钟了解Linux内存架构,numa的优势,slab的实现,vmalloc原理linux多线程之epoll原理剖析与reactor原理及应用c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师以前在面试某两个大厂都遇到过这个问题,一个问到linux下gcc的malloc函数如何分配内存的,还有一个在二面时通过一个链表的数据结构也间接地问到了这个问题。且不说面试可能会遇到这个问题,我们很多服务器程序在长周期或者大量访问的情况后

2021-03-06 15:04:36 359

原创 C/C++开发必须要明白的C函数调用方式与栈原理

linux服务器开发相关视频解析:支撑互联网的基石 tcpip,5个方面全面解析linux多线程之epoll原理剖析与reactor原理及应用c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师这绝对不是标题党。而是C/C++开发中你必须要掌握的基础知识,也是高级技术岗位面试中高频题。我真的真的真的希望无论是学生还是广大C/C++开发者,都该掌握此文中介绍的知识。正文这篇blog试图讲明当一个c函数被调用时,一个栈帧(stack frame)是如何被建立,又如

2021-03-04 15:53:59 206 1

原创 redis 6.0 多线程网络 IO 源码解析

redis相关视频解析:redis,有序集合(orderedset),跳表,面试,源码学习网络底层io的那些事,redis,memcached,nginxc/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师redis 6.0 中默认是不启用多线程网络 IO,可以通过修改 redis.conf 的相关配置项打开,打开方法如下所示:# So for instance if you have a four cores boxes, try to use 2 or 3.

2021-03-03 15:42:07 276 2

原创 Linux完全公平调度算法原理与实现

linux服务器开发相关视频解析:linux内核,进程调度器的实现,完全公平调度器 CFS90分钟了解Linux内存架构,numa的优势,slab的实现,vmalloc的原理c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师Linux 进程调度算法经历了以下几个版本的发展:基于时间片轮询调度算法。(2.6之前的版本)O(1) 调度算法。(2.6.23之前的版本)完全公平调度算法。(2.6.23以及之后的版本)这篇主要分析 Linux 现在所使用的 完

2021-03-02 15:21:23 1100 1

原创 关于如何搞定linux的NAT不能即时生效的问题

linux服务器开发相关视频解析:P2P技术—NAT原理,NAT类型,网络穿透原理linux多线程之epoll原理剖析与reactor原理及应用c/c++ linux服务器开发免费学习地址:c/c++ linux后台服务器高级架构师Linux的NAT不能及时生效,因为它是基于ip_conntrack的,如果在NAT的iptables规则添加之前,此流的数据包已经绑定了一个ip_conntrack,那么该NAT规则就不会生效,直到此ip_conntrack过期,如果一直有数据在鲁莽地尝试传输,那么就会

2021-03-01 16:13:16 771

空空如也

空空如也

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

TA关注的人

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