<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qiuyumin430的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/qiuyumin430</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; qiuyumin430]]></copyright><item><title><![CDATA[7.11]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80995498</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80995498</guid><author>qiuyumin430</author><pubDate>Wed, 11 Jul 2018 13:55:07 +0800</pubDate><description><![CDATA[从逻辑角度来看：（重要区别）多线程的意义在于一个应用程序中，有多个执行部分可以同时执行。但是，操作系统并没有将多个线程看做多个独立的应用，来实现进程的调度和管理及资源分配。4、函数调用入栈出栈的过程        函数调用过程中，第一个进栈的是（主函数中的）调用处的下一条指令（即函数调用语句的下一条可执行语句）的地址；然后是函数的各个参数，而在大多数C/C++编译器中，在函数调用的过程中，函数的参...]]></description><category></category></item><item><title><![CDATA[kafka设计]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80917888</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80917888</guid><author>qiuyumin430</author><pubDate>Wed, 04 Jul 2018 20:04:05 +0800</pubDate><description><![CDATA[ kafka的设计初衷是希望作为一个统一的信息收集平台,能够实时的收集反馈信息,并需要能够支撑较大的数据量,且具备良好的容错能力.     1、持久性    kafka使用文件存储消息,这就直接决定kafka在性能上严重依赖文件系统的本身特性.且无论任何OS下,对文件系统本身的优化几乎没有可能.文件缓存/直接内存映射等是常用的手段.因为kafka是对日志文件进行append操作,因此磁盘检索的开支...]]></description><category></category></item><item><title><![CDATA[Kruskal算法]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80893794</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80893794</guid><author>qiuyumin430</author><pubDate>Tue, 03 Jul 2018 09:41:38 +0800</pubDate><description><![CDATA[　本文主要讲的是Kruskal算法，这是一种常用的用于寻找最小生成树的算法，由Joseph Kruskal于1956年发表。它是贪心的思想，易于编写，而且效率很高。 　　何为“最小生成树”呢？在一给定的无向图G = (V, E)中，(u, v)代表连接顶点u与顶点v的边，而w(u, v)代表此边的权重。连接G中所有的点，且边集T为E的子集的树（无环图），称为G的生成树(Spanning Tree)...]]></description><category></category></item><item><title><![CDATA[最小生成树算法模板]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80889546</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80889546</guid><author>qiuyumin430</author><pubDate>Tue, 03 Jul 2018 09:40:02 +0800</pubDate><description><![CDATA[Prim算法　　本文主要讲解的是Prim算法，该算法用于寻找最小生成树(MST)。意即由此算法搜索到的边子集所构成的树中，不但包括了连通图里的所有顶点，且其所有边的权值之和亦为最小。（上一篇博客是Kruskal算法，如果没学过的话建议先移步去学习Kruskal算法） 　　Prim算法于1930年由捷克数学家沃伊捷赫•亚尔尼克发现；并在1957年由美国计算机科学家罗伯特•普里姆独立发现；1959年，...]]></description><category></category></item><item><title><![CDATA[boost::noncopyable]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80886899</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80886899</guid><author>qiuyumin430</author><pubDate>Mon, 02 Jul 2018 17:06:20 +0800</pubDate><description><![CDATA[boost::noncopyable 比较简单, 主要用于单例的情况.通常情况下, 要写一个单例类就要在类的声明把它们的构造函数, 赋值函数, 析构函数, 拷贝构造函数隐藏到 private 或者 protected 之中, 每个类都这么干的话会非常地麻烦.但是有了 noncopyable 类之后, 只要让单例类直接继承 noncopyable, 一切都会迎刃而解.class noncopyabl...]]></description><category></category></item><item><title><![CDATA[move 和浅拷贝等]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80885538</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80885538</guid><author>qiuyumin430</author><pubDate>Mon, 02 Jul 2018 15:54:50 +0800</pubDate><description><![CDATA[开始不能理解有了浅拷贝, 何必再有 move现在想通了, 理由如下一个对象只有一个 拷贝构造函数, 你只能要么实现浅拷贝(编译器提供), 要么实现深拷贝.c++11 提供了 move 语义, 这样你就可以同时实现 浅拷贝, 和深拷贝. 然后编译器就能根据对象的用途自动的选择好 move (浅拷贝)还是深拷贝....]]></description><category></category></item><item><title><![CDATA[GC和RAII+refcounting]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80885189</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80885189</guid><author>qiuyumin430</author><pubDate>Mon, 02 Jul 2018 15:37:56 +0800</pubDate><description><![CDATA[ RAII（Resource Acquisition Is Initialization）是一种利用对象生命周期来控制程序资源（如内存、文件句柄、网络连接、互斥量等等）的简单技术。 　　RAII 的一般做法是这样的：在对象构造时获取资源，接着控制对资源的访问使之在对象的生命周期内始终保持有效，最后在对象析构的时候释放资源。借此，我们实际上把管理一份资源的责任托管给了一个对象。这种做法有两大好处： ...]]></description><category></category></item><item><title><![CDATA[TCP拥塞控制]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80885132</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80885132</guid><author>qiuyumin430</author><pubDate>Mon, 02 Jul 2018 15:33:10 +0800</pubDate><description><![CDATA[Linux4.9 内核发布了, 包含了 Google 最新发明的 BBR 拥塞控制算法. 一经发布便吸引了大量的眼球. 于是我们这个眼球也不能免俗, 来凑凑热闹吧.传统的 TCP 拥塞控制算法, 都是基于 “丢包” 进行的. 以丢包作为拥塞的信号. 其实有2个严重的问题丢包并不总是拥塞导致的, 也有可能是 GFW 的随机丢包策略, 当然也有可能是链路传输错误导致的. 这时候发生丢包, 恰恰要做的是...]]></description><category></category></item><item><title><![CDATA[C++标准库]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80221607</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80221607</guid><author>qiuyumin430</author><pubDate>Mon, 07 May 2018 16:33:19 +0800</pubDate><description><![CDATA[C++标准库提供了：1、语言特性的支持，内存管理，RTTI等2、单纯用语言难以实现的基本操作，提供一些工具，时间，编译时有理数运算，类型函数，move等3、底层的（“无锁”）并发编程设施4、基于线程的并发编程支持5、基于任务的并发的基本支持，如future和async6、比较难以实现的最优且可移植版本的函数，memmove()等7、可选的无用内存回收的基本支持，如declare_reachable...]]></description><category></category></item><item><title><![CDATA[Zookeeper介绍]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80068045</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80068045</guid><author>qiuyumin430</author><pubDate>Tue, 24 Apr 2018 17:44:55 +0800</pubDate><description><![CDATA[ZooKeeper是一种为分布式应用所设计的高可用、高性能且一致的开源协调服务，它提供了一项基本服务：分布式锁服务。由于ZooKeeper的开源特性，后来我们的开发者在分布式锁的基础上，摸索了出了其他的使用方法：配置维护、组服务、分布式消息队列、分布式通知/协调等。注意：ZooKeeper性能上的特点决定了它能够用在大型的、分布式的系统当中。从可靠性方面来说，它并不会因为一个节点的错误而崩溃。除此...]]></description><category></category></item><item><title><![CDATA[Redis   50问]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80035184</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80035184</guid><author>qiuyumin430</author><pubDate>Sun, 22 Apr 2018 00:43:05 +0800</pubDate><description><![CDATA[1、什么是Redis？   Redis是由意大利人Salvatore Sanfilippo（网名：antirez）开发的一款内存高速缓存数据库。Redis全称为：Remote Dictionary Server（远程数据服务），该软件使用C语言编写，Redis是一个key-value存储系统，它支持丰富的数据类型，如：string、list、set、zset(sorted set)、hash。2、...]]></description><category></category></item><item><title><![CDATA[Redis]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80035102</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80035102</guid><author>qiuyumin430</author><pubDate>Sat, 21 Apr 2018 23:45:02 +0800</pubDate><description><![CDATA[1. 使用redis有哪些好处？(1) 速度快，因为数据存在内存中，类似于HashMap，HashMap的优势就是查找和操作的时间复杂度都是O(1)(2) 支持丰富数据类型，支持string，list，set，sorted set，hash(3) 支持事务，操作都是原子性，所谓的原子性就是对数据的更改要么全部执行，要么全部不执行(4) 丰富的特性：可用于缓存，消息，按key设置过期时间，过期后将会...]]></description><category></category></item><item><title><![CDATA[Nginx框架]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/80034909</link><guid>https://blog.csdn.net/qiuyumin430/article/details/80034909</guid><author>qiuyumin430</author><pubDate>Sat, 21 Apr 2018 23:22:02 +0800</pubDate><description><![CDATA[1.Nginx HTTP框架综述   hander：直接处理客户端的请求，产生响应，是最常用的模块//请求处理   filter:  对hander产生的数据各种加工过滤处理//请求处理   upstream: 实现反向代理功能，转发请求到上游的服务器，从后端获取响应载发回客户端//请求转发   load-balance：不直接处理数据，而是现象负载均衡算法，从upstream的配置里选择一个合适...]]></description><category></category></item><item><title><![CDATA[C++]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79972599</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79972599</guid><author>qiuyumin430</author><pubDate>Tue, 17 Apr 2018 11:42:16 +0800</pubDate><description><![CDATA[指针和引用面向对象的理解staticconstvolatile]]></description><category></category></item><item><title><![CDATA[IPC]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79892495</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79892495</guid><author>qiuyumin430</author><pubDate>Wed, 11 Apr 2018 10:22:45 +0800</pubDate><description><![CDATA[进程间通信（IPC）介绍进程间通信（IPC，InterProcess Communication）是指在不同进程之间传播或交换信息。IPC的方式通常有管道（包括无名管道和命名管道）、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。以Linux中的C语言编程为例。一、管道管道，通常指无名管道，是 UNIX 系统IPC最古老...]]></description><category></category></item><item><title><![CDATA[设计模式]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79867954</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79867954</guid><author>qiuyumin430</author><pubDate>Mon, 09 Apr 2018 16:08:35 +0800</pubDate><description><![CDATA[工厂模式   工厂模式是我们最常用的实例化对象模式了，是用工厂方法代替new操作的一种模式，工厂模式就相当于创建实例对象的new，我们经常要根据类Class生成实例对象，如A a=new A() 工厂模式也是用来创建实例对象的，所以以后new时就要多个心眼，是否可以考虑使用工厂模式，虽然这样做，可能多做一些工作，但会给你系统带来更大的可扩展性和尽量少的修改量。https://www.zhihu.c...]]></description><category></category></item><item><title><![CDATA[操作系统笔记4.9]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79861623</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79861623</guid><author>qiuyumin430</author><pubDate>Mon, 09 Apr 2018 09:50:24 +0800</pubDate><description><![CDATA[常见的批处理作业调度算法1.先来先服务调度算法（FCFS）:就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单，公平。其缺点是没有考虑到系统中各种资源的综合使用情况，往往使短作业的用户不满意，因为短作业等待处理的时间可能比实际运行时间长得多。2.短作业优先调度算法(SPF): 就是优先调度并处理短作业，所谓短是指作业的运行时间短。而在作业未投入运行时，并不能知道它实际的运行...]]></description><category></category></item><item><title><![CDATA[Hadoop分布式架构及NoSQL]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79853749</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79853749</guid><author>qiuyumin430</author><pubDate>Sun, 08 Apr 2018 16:44:54 +0800</pubDate><description><![CDATA[并行计算是指同时使用多种计算资源解决计算机问题的过程。云计算是分布式技术+服务化技术+资源隔离+管理技术。虚拟化技术包括：资源虚拟化，统一分配监测资源、向资源池中添加资源。分布式产品：Hadoop:HDFS文件系统是一个可扩缩的、容错的、可以在廉价机器上运行的分布式文件系统，是一个NameNode和多个DataNode的结构。除了提供分布式文件存储外，Hadoop还提供基于Map/Reduce的框...]]></description><category></category></item><item><title><![CDATA[Database]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79852335</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79852335</guid><author>qiuyumin430</author><pubDate>Sun, 08 Apr 2018 15:11:38 +0800</pubDate><description><![CDATA[数据库 表 行 记录：一个数据就是一个记录 SQL：数据库管理系统，结构化查询语言MySQL 数据库（管理+数据）基于C/S架构客户端/服务器服务器独立分布，占用最大的资源。安装MySQL：角色支持，线上，手动配置，支持连接数量不同。3306端口，支持TCP/IP连接。设定默认的字符集。支持多语言机制。管理MySQL服务器端程序  数据库管理语言：DML数据库定义语言：DDL  creat dat...]]></description><category></category></item><item><title><![CDATA[网络编程]]></title><link>https://blog.csdn.net/qiuyumin430/article/details/79692137</link><guid>https://blog.csdn.net/qiuyumin430/article/details/79692137</guid><author>qiuyumin430</author><pubDate>Sun, 25 Mar 2018 23:06:18 +0800</pubDate><description><![CDATA[同步，异步，阻塞，非阻塞  所谓同步，就是在发出一个功能调用时，在没有得到结果之前，该调用就不返回。按照这个定义，其实绝大多数函数都是同步调用（例如sin, isdigit等）。但是一般而言，我们在说同步、异步的时候，特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是 SendMessage。该函数发送一个消息给某个窗口，在对方处理完消息之前，这个函数不返回。当对方处理完毕以后，...]]></description><category></category></item></channel></rss>