Jiefang's Blog

过去心不可得,现在心不可得, 未来心不可得

项目管理-07丨项目范围管理

项目范围管理 项目范围管理就是要做范围内的事,而且只做范围内的事,既不少做也不多做。 项目范围管理需要做以下三个方面的工作: 明确项目边界; 对项目执行工作进行监控; 防止项目范围发生蔓延。 项目的范围基准是经过批准的项目范围说明书、WBS和WBS词典。 规划范围管理 规划范围管理是编制范围管理计划,书面描述将如何定义、确认和控制 项目范围的过程,其主要作用是在...

项目管理-06丨项目整体管理

项目整体管理 项目整体管理知识领域包括识别、确定、结合、统一与协调各项目管理过程组内不同过程与项目管理活动所需进行的各种过程和活动,是一个全局性的、综合性的管理。 工具技术 专家判断:专家判断是有关专家根据自己的知识与经验对问题作出判断。 专家判断是最常用的工具与技术; 专家判断适用于一切管理和技术的工作; 专家判断来自于具有相应专业知识、专业实践或培训经理的任何小组或个...

项目管理-05丨项目立项管理

项目立项管理 项目立项一般包括:提交项目建议书、项目可行性研究、项目论证、项目评估、项目招标与投标、签订合同这几个阶段。 项目建议书 项目建议书(又称立项申请)是项目建设单位向上级主管部门提交项目申请时所必须的文件,是该项目建设单位或项目法人,根据国民经济的发展、国家和地方中长期规划、产业政策、生产力布局、国内外市场、所在地的内外部条件、本单位的发展战略等待,提出的某一具体项目的建议文件,是...

项目管理-04丨项目管理基础

项目管理基础 项目管理基础 项目是为提供一项独特产品、服务或成果所做的临时性努力。 项目的具体特点如下: 临时性(一次性); 独特的产品、服务和成果; 逐步完善; 资源约束; 目的性。 项目工作的三个主要目标(三约束):时间、成本和质量。 项目经理的责任就是在时间、成本、质量和项目范围之...

项目管理-03丨其它计算

其它计算 三点估算 活动的历时=(最乐观历时+4×最可能历时+最悲观历时)/6 活动历时方差=(最悲观历时-最乐观历时)/6 系统可靠度 软件可靠性 (software reliability )是软件产品在规定的条件下和规定的时间区间完成规定功能的能力。 规定的条件是指直接与软件运行相关的使用该软件的计算机系统的状态和软件的输入条件,或统称为软件运行时的外部输入条件; ...

Redis-16丨Redis Cluster(集群)原理

Redis Cluster(集群)原理 Redis Cluster是Redis的分布式解决方案,在3.0版本正式推出,有效地解 决了Redis分布式方面的需求。节点之间通过去中心化的方式提供了完整的sharding(数据分片)、replication(复制机制、Cluster具备感知准备的能力)、failover解决方案。 拓扑结构 一个Redis Cluster由多个Redis节点组成。不...

Kafka-01丨Kafka介绍

Kafka介绍 Kafka是用scala语言编写,最初由Linkedin公司开发,后贡献给了Apache基金会并成为顶级开源项目。是一个分布式、支持分区的(partition)、多副本的(replication),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流...

项目管理-02丨时间类计算

时间类计算 单代号网络图(前导图) 紧前关系绘图法:使结点代表活动,结点之间用箭头连接,以显示结点之间的逻辑关系。不能出现循环回路,不能出现双向箭头或无箭头连接线,不能出现无箭头节点的箭线或无箭尾节点的箭线,图中只能有一个起始节点和一个终止节点,从左向右单向箭头,没有循环没有判断,没有交叉线,有进有出没有死胡同。 双代号网络图(箭线图) 活动节点法:用箭线表示活动、结点表示事件。活动的...

项目管理-01丨挣值分析

挣值分析 基本概念 EV(Earned Value)挣值:指项目实施过程中某阶段实际完成工作量及按预算定额计算出来的工时(或费用)。 PV(Planned Value)计划值:是指项目实施过程中某阶段计划要求完成的工作量所需的预算工时(或费用)。 AC(Actual Cost)实际成本:指项目实施过程中某阶段实际完成的工作量所消耗的工时(或费用)。 BCWP(Budgete...

Dubbo-02丨京东JSF介绍

京东JSF介绍 JSF(Java Service Framework)是京东基于Dubbo开发的分布式服务框架。 特性如下: 可以进行高效RPC(远程过程)调用; 有高可用的注册中心,完备的容灾特性; 服务端口同时支持TCP与HTTP协议调用,支持跨语言调用; 支持msgpack、json等多种序列化格式,支持数据压缩; 提供黑白名单、负载均衡、provider动态...

Redis-15丨Redis的Sentinel(哨兵)机制

Redis的Sentinel(哨兵)机制 Redis Sentinel是Redis的高可用实现方案。 名词 逻辑结构 物理结构 主节点(master) Redis主服务/数据库 一个独立的Redis进程 从节点(slave) ...

Redis-14丨Redis复制原理

Redis复制原理 Redis为了满足故障恢复和负载均衡的需求提供了复制功能,实现了相同数据的多个Redis副本,复制功能是高可用Redis的基础。 配置 建立复制 参与复制的Redis实例划分为主节点(master)和从节点(slave)。默认情况下,Redis都是主节点。每个从节点只能有一个主节点,而主节点可以同时具有多个从节点。 在配置文件中加入slaveof{masterHos...

Redis-13丨Redis持久化功能优化

Redis持久化功能优化 Redis持久化功能一直是影响Redis性能的高发地。 fork操作 当Redis做RDB或AOF重写时,一个必不可少的操作就是执行fork操作创 建子进程,对于大多数操作系统来说fork是个重量级操作。虽然fork创建的 子进程不需要拷贝父进程的物理内存空间,但是会复制父进程的空间内存页 表。例如对于10GB的Redis进程,需要复制大约20MB的内存页表,因此f...

Redis-12丨Redis的RDB持久化

Redis的RDB持久化 RDB持久化是将当前进程中的数据生成快照保存到硬盘(因此也称作快照持久化),保存的文件后缀是rdb;当Redis重新启动时,可以读取快照文件恢复数据。 手动触发 save命令和bgsave命令都可以生成RDB文件。 save命令会阻塞Redis服务器进程,直到RDB文件创建完毕为止,在Redis服务器阻塞期间,服务器不能处理任何命令请求。 bgsave命令会创建一个...

Redis-11丨Redis线程模型

Redis线程模型 文件事件处理器 Redis基于Reactor模式开发了网络事件处理器,这个处理器被称为文件事件处理器。它的组成结构为4部分:多个socket、IO多路复用程序、文件事件分派器、事件处理器。因为文件事件分派器队列的消费是单线程的,所以Redis才叫单线程模型。 流程 客户端 socket01 向 redis 的 server socket 请求建立连接,...

Redis-10丨布隆过滤器

布隆过滤器 什么是布隆过滤器? 布隆过滤器可以用来判断一个元素是否在一个集合中。它的优势是只需要占用很小的内存空间以及有着高效的查询效率。 对于布隆过滤器而言,它的本质是一个位数组:位数组就是数组的每个元素都只占用1bit ,并且每个元素只能是0或者1。 布隆过滤器除了一个位数组,还有K个哈希函数。当一个元素加入布隆过滤器中的时候,会进行如下操作: 使用K个哈希函数对元素值进行K次...

Redis-09丨Bitmaps(位图)

Bitmaps(位图) Bitmaps 并不是实际的数据类型,而是定义在String类型上的一个面向字节操作的集合。Bitmaps就是通过最小的单位bit来进行0或者1的设置,表示某个元素对应的值或者状态。 一个bit的值,或者是0,或者是1;也就是说一个bit能存储的最多信息是2。 优势和限制 优势 基于最小的单位bit进行存储,所以非常省空间。 设置时候时间复杂度O(1)、读取...

Redis-08丨Redis实现消息队列

Redis实现消息队列 Redis 的消息队列不是专业的消息队列,它没有非常多的高级特性,没有 ack 保证,如果对消息的可靠性有着极致的追求,那么它就不适合使用。 异步消息队列 Redis 的 list(列表) 数据结构常用来作为异步消息队列使用,使用rpush/lpush操作入队列,使用lpop/rpop来出队列。 阻塞读 blpop/brpop命令就是阻塞读。 阻塞读在队列没...

Redis-07丨Redis数据结构

Redis数据结构 Redis 有 5 种基础数据结构,分别为:string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合)。 string (字符串) 字符串 string 是 Redis 最简单的数据结构。Redis 所有的数据结构都是以唯一的 key 字符串作为名称,然后通过这个唯一 key 值来获取相应的 value 数据。不同类型...

分布式锁-02丨ZooKeeper实现分布式锁

ZooKeeper实现分布式锁 基于比较常用的Curator这个开源框架,聊一下这个框架对ZooKeeper(以下简称zk)分布式锁的实现。 实现机制 临时有序节点; 事件监听机制; 客户端A抢先一步,对zk发起了加分布式锁的请求,直接在”my_lock”这个锁节点下,创建一个临时顺序节点,这个顺序节点有zk内部自行维护的一个节点序号; 客户端A判断创建的节点是...