自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Day7 rabbitmq基础(二)

整合springboot 引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> <version>2.2.10.RELEASE</version> &

2022-02-27 22:18:13 1338

原创 Day5&6 rabbitmq基础

Rabbitmq 消息队列解决的问题 异步 A系统处理用户A的请求并写到A库中需要3ms,但是在A调用B,C,D的接口时用了900多ms,对于这样的情况,A可以将响应直接返回给用户,把消息发给rabbitmq上,增强了用户的体验 解耦 A系统需要发送数据给B,C,D系统,以调用接口的方式,但是如果此时D系统不需要这些数据了呢?又有一个新的E系统需要这些数据呢…这样会造成系统之间的严重耦合,可以用mq的方式,A将数据发到mq上,然后需要的系统自己来取数据,这样就避免了A系统频繁的代码更改 削

2022-02-25 23:04:14 803

原创 Day4: zookeeper集群

zookeeper集群 zookeeper遵循AP,追求最终一致性(根据zxid(事务id)记录数据是否过期,所以遵守顺序一致性) zk在集群时,有三种类型的节点 leader: 可以进行数据的读写 follower: 只能进行读操作,可以参加leader选举 observer: 只能进行读操作,不能进行leader选举 建立集群: 为每个server创建对应的dataDir和dataLogdir 在每个dataDir文件夹中创建一个myid文件,里面写上服务器的唯一标识 为每个server编写对应

2022-02-23 22:02:22 662

原创 Day3 zk的watch机制及分布式锁的实现

watch机制 watch类似于观察者模式,watch的实现采用了nio,客户端可以通过(get -w [name])的方式监听一个节点,当该节点触发了create,set,delete事件时,监听该节点的客户端将会收到异步通知 一个连接监听了/test [zk: localhost:2181(CONNECTED) 4] get -w /test0000000002 yyy 另一个连接更改了/test [zk: localhost:2181(CONNECTED) 0] set /test000000000

2022-02-22 22:43:06 379

原创 Day2: zookeeper入门

zookeeper 安装zookeeper Zookeeper zookeeper能做什么 zookeeper是一种分布式协调服务,用于管理大型主机,在分布式系统中管理和协调服务是一个复杂的过程,zookeeper允许开发人员专注于应用程序的设计,而不用担心应用的分布式特性 分布式协调组件 当通过nginx进行负载均衡时,此时服务A-1,A-2是冗余存储的,flag都为true,当A-2的值修改为false时,此时A-1与A-2的数据就不一致了,这时ZK就可以修改A-1中的数据,让服务之间的数

2022-02-21 22:32:37 369

原创 Day1: Eureka的简单使用

eureka 是一个服务注册发现框架,用于在传统的rpc调用中管理各个微服务之间的关系 使用了***C/S***的架构 quickstart 标题 引入依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifact

2022-02-20 20:06:52 815

原创 链表

链表 可变数组 应具备的特点: 1、根据需求自动变大 2、知道它目前的大小 3、可以精确访问其中的元素 编写函数实现 将结构体Array当作一个数组使用 上代码 Array array_create(int init_size)//-->初始化结构(数组) void array_free(Array *a)// -->释放数组所占的空间 int array_size(const Array*a)//-->数组的长度 int* array_at(Array*a,int index)//--

2020-12-05 22:53:18 174

原创 全局变量 静态本地变量 结构体

全局变量 1、全局变量的定义与注意点 1、定义在函数外面的变量是全局变量 2、全局变量具有全局的生存期和作用域 3、它们与任何函数都无关 4、在任何函数内部都可以使用它们 上代码 #include<stdio.h> int f(void); int gAll = 12; int main() { printf("in main gAll=%d\n",gAll); f(); printf("now in main gAll=%d\n",gAll); return 0; } int

2020-11-28 23:10:55 1985 1

原创 关于指针和多维数组 字符串

关于指针与多维数组 1、多重指针辨析`int a = 9; int a = 9; int *pa = &a; int **ppa = &pa; int ***pppa = &ppa; printf("%d\n",**ppa); printf("%d\n",&ppa); printf("%d\n",pa); printf("%d\n",&pa); printf("%d\n",&a); printf("%d\n",&pppa); printf("%d\n

2020-11-21 20:58:23 206

空空如也

空空如也

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

TA关注的人

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