后端相关 10
-
预写日志 Write Ahead Log 笔记
预写日志 Write Ahead Log 笔记 概念 预写日志 WAL 是数据库系统和分布式系统元数据同步中采用的一种手段,主要用于确保数据操作的原子性和持久性。 数据库系统使用 WAL 时,所有的修改在提交之前都要先写入 log 文件中,这样如果机器在执行某些操作的时候断电了,我们还可以检查 lo
-
Linux 网络收包与 IO 多路复用
Linux 网络收包与 IO 多路复用 今天看完了《深入理解 linux 网络》关于网络收包的部分,但是书里对源码读的太过具体,反而搞不懂很多基本步骤是在做什么,所以结合网络资料做一些整理。 同步阻塞IO收包 传统的同步阻塞IO网络通信方式比较容易理解。 客户端实现就是先用系统调用在内核态创建 so
-
Hello gRPC:protobuf 序列化 & gRPC 传输协议
Hello gRPC:protobuf 序列化 & gRPC 传输协议 gRPC 是一个高性能、通用的开源RPC框架,其由 Google 主要面向移动应用开发并基于HTTP/2 协议标准而设计,基于 ProtoBuf(Protocol Buffers) 序列化协议开发,且支持众多开发语言。 除了 p
-
MIT6.824分布式系统Lab2-Raft-B笔记.md
一、概要论文链接:In Search of an Understandable Consensus Algorithm (mit.edu)Lab2B需要实现Raft协议中的Log部分,也就是需要开始处理Log 有关 Replication的问题了。Lab2B可能是整个lab中最困难的一步,需要大量调
-
MIT6.824分布式系统Lab2-Raft-A笔记.md
一、原理Lab2要求实现一套比较完整的Raft协议,分为A,B,C,D四个部分。Raft原论文:In Search of an Understandable Consensus Algorithm (mit.edu)Raft是一个分布式一致性算法。相比于Paxos,Raft的机制更简单直白适合学习。
-
MIT6.824分布式系统Lab1.MapReduce笔记.md
一、概念这个lab的主要内容是实现一个简单的MapReduce分布式系统。MapReduce的概念来自google的论文:MapReduce.pdf (mit.edu)论文中有一个非常简明的图片,介绍了MapReduce的基本结构:有关信息:MapReduce的任务是充分利用分布式的计算机集群,对文
-
Spring_Data_JPA_使用方法.md
JPA是Java官方定义的一套与数据库交互的接口标准。Spring Data JPA 实现了它,并且整合了多种数据库,使得与数据库的交互变得简单。使用Spring Data JPA的逻辑:在springApplication设置里设置数据源(datasource);编写一个实体类,其中的属性对应数据
-
Spring使用自定义配置项.md
在写Spring应用的时候,经常会用到Spring支持的application.yml 或 application.properties 来对Spring的一些属性进行设置。实际上,Spring的这些配置项是与Spring内部的一些bean一一对应的。在配置文件修改这些属性时,就是在修改Spring
-
Spring集成Artemis实现JSM的异步消息传递.md
JMS是一套Java定义的标准,用于在程序之间进行消息的流通。一、概念逻辑JMS的逻辑如下:发布信息的称为JMS生产者,生产者将信息发送给JMS服务器,同时说明发送到的目的地(Destination),JMS服务器将消息保存在对应目的地的一个队列(queue)中,等待JMS消费者领取。JMS消费者有
-
linux-crontab.md
简介crontab是用来设置定时执行语句或程序的指令。直接使用crontab命令将读取一个文件(时程表),并将根据该文件的内容设置定时执行指令。使用命令crontab [ -u user ] file指定时刻表或crontab [ -u user ] { -l | -r | -e }-e 指定编辑器