摘要: 时间复杂度的计算方式(Master公式计算递归函数的时间复杂度) 红黑树的了解(平衡树,二叉搜索树),使用场景 红黑树在STL上的应用 贪心算法和动态规划的区别 判断一个链表是否有环,如何找到这个环的起点 实现一个strcpy函数(或者memcpy),如果内存可能重叠呢 实现一个循环队列 排序算法( 阅读全文
posted @ 2021-11-15 10:42 淡然那片天 阅读(63) 评论(0) 推荐(0)
摘要: ZooKeeper 是一个开源的分布式协调服务。它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。 Zookeeper 保证了如下分布式一致性特 阅读全文
posted @ 2021-09-06 22:46 淡然那片天 阅读(1032) 评论(0) 推荐(0)
摘要: 1. 为什么要使用 kafka,为什么要使用消息队列 缓冲和削峰:上游数据时有突发流量,下游可能扛不住,或者下游没有足够多的机器来保证冗余,kafka在中间可以起到一个缓冲的作用,把消息暂存在kafka中,下游服务就可以按照自己的节奏进行慢慢处理。 解耦和扩展性:项目开始的时候,并不能确定具体需求。 阅读全文
posted @ 2021-09-06 13:38 淡然那片天 阅读(274) 评论(0) 推荐(0)
摘要: Redis持久化数据和缓存怎么做扩容? 如果Redis被当做缓存使用,使用一致性哈希实现动态扩容缩容。 如果Redis被当做一个持久化存储使用,必须使用固定的keys-to-nodes映射关系,节点的数量一旦确定不能变化。否则的话(即Redis节点需要动态变化的情况),必须使用可以在运行时进行数据再 阅读全文
posted @ 2021-09-06 00:33 淡然那片天 阅读(65) 评论(0) 推荐(0)
摘要: ###查看修改 git status 可以查看现在本地工作区与暂存区的差别,查看还没添加的文件 git diff指的是本地工作区和暂存区的文件的差异. 1. 拉取远程代码 git pull git pull对于拉下来的修改文件自动对其进行git add /rm 及git commit 操作。所以拉下 阅读全文
posted @ 2021-08-27 12:56 淡然那片天 阅读(68) 评论(0) 推荐(0)
摘要: 支持AOF和RDB两种持久化方式 RDB是Redis默认的持久化方式。按照一定的时间将内存的数据以快照的形式保存到硬盘中,对应产生的数据文件为dump.rdb。通过配置文件中的save参数来定义快照的周期。 AOF(Append-only file)持久化方式:是指所有的命令行记录以 redis 命 阅读全文
posted @ 2021-08-24 23:29 淡然那片天 阅读(62) 评论(0) 推荐(0)
摘要: raft文档 https://github.com/baidu/braft/blob/master/docs/cn/raft_protocol.md 如何在分布式Server中使用braft来构建高可用系统 ##一、使用braft #####1.1 注册并启动Server int add_servi 阅读全文
posted @ 2021-08-22 11:53 淡然那片天 阅读(643) 评论(0) 推荐(0)
摘要: unique_lock lock_guard只能保证在析构的时候执行解锁操作,lock_guard本身并没有提供加锁和解锁的接口。 使用unique_lock。它提供了lock()和unlock()接口,能记录现在处于上锁还是没上锁状态,在析构的时候,会根据当前状态来决定是否要进行解锁(lock_g 阅读全文
posted @ 2021-08-16 10:09 淡然那片天 阅读(77) 评论(0) 推荐(0)
摘要: GFS 阅读全文
posted @ 2021-08-15 19:29 淡然那片天 阅读(38) 评论(0) 推荐(0)