00:00
这节课呢,我们来针对读写分离做一个具体的配置,那么我们需要打开application properties这个配置文件。我们找到应用程序当中的resources目录,打开application properties配置文件。那么首先呢,这个配置文件当中默认已经给我们配置了一个应用程序的名字,那么可以选择的呢,我们也可以配置一个active啊,毕竟呢,这是一个开发环境。那接下来呢,我们打开阿帕奇的官方文档,在官方文档当中第三个部分概览有一个选项呢,叫运行模式,模式有三种,第一个内存模式,用于我们的开发环境或者是集成测试环境,第二个呢是单机模式,然后第三个呢是集群模式,那在真实的部署上线生产环境的时候呢,必须使用集群模式。
01:02
我们现在是开发环境,我们就配内存模式就可以了。好,那么内存模式如何去配呢?打开用户手册,打开JDBC,我们选择springbot starter。然后呢,选择模式匹配。我们把内存模式的这个配置项呢粘进来就可以了。因为现在我们也不是集群版,所以呢,我们就配内存就好了,那么它这个内存存的是什么呢?存的是我们的数据信息啊,那么如果在集群环境下呢,这个原数据信息呢,可以被持久化,这样的话呢,就可以在集群的环境当中,在多个服务器之间共享数据了,那么要共享的数据呢,其实就是这个配置文件当中里面所配置的一些具体的内容,内存模式呢,就是把我们这个配置文件当中具体的内容呢,它在应用程序运行的时候呢,会加载到内存当中啊,那这是内存模式。
02:04
内存模式配置完了之后呢,我们来配置一下,下一个选项叫数据源配置。那么这个里面呢,有一个配置示例,我们直接去粘贴这个配置示例就可以了。把它粘贴到我们的配置文件当中。我们的主从复制的这样的一个配置呢,是有一台主服器,两台重服务器的,所以呢,实际上我们是需要三个数据源的,那么我们给这三个数据源呢,分别起个名字叫master。然后每个数据源呢,我们用逗号隔开,那当然这些名字呢,都是我们自己起的,好,那这样的话呢,我们就需要创建名字分别叫做master slave1以及SLAVE2的这样的三个数据源,好我们把这个数据源呢,就作为master数据源,所以呢,我们把这个名字呢,直接改成master。
03:12
那这是我们的my circle在spring环境下默认使用的数据库连接池,我们就默认使用它就可以了。第二个呢,是我们买SQL的服务器的驱动,第三个呢,就是我们买QL服务器的地址,好,那这个呢,我们需要配置真实的一个地址。我们把local host改成幺九二点幺六八点一百点二零幺,它的端口号呢是3306,这是主服务器的端口号,那么在这台服务器上呢,我们有一个数据库叫做DB user,那这是前面我们搭建主从复制的服务器的时候呢,创建的一个数据库的名字。那username呢,叫做root password,我们曾经设置的呢是123456,这样的话呢,我们就配置了第一个数据源,那么第二个数据源它的配置方式呢,差不多,只不过我们配置的是重复器,所以在这边呢,我们把它改成SLAVE1。
04:18
那数据库连接以及数据库驱动它不变,然后呢,我们把gdb curl呢给它改一下。好,改成3307,它的密码呢,也是123456,这是我们配置的第二个数据源。接下来呢,我们来配置第三个数据源,也就是我们第二台从服务器。好,那这个位置呢,我们把它改成二。同样,数据库连接池以及数据库驱动。保持不变,然后呢,这个第二台重复器。这是第三个数据源,第二台存储器的端口号呢,是3308。
05:05
好,它的数据库的名字呢,也叫做DB。那他的用户名和密码呢,跟上面都是一致的,这样的话呢,我们就配置了数据源,配完数据源之后呢,我们来配读写分离。那么我们找到规则配置。这里面有个叫读写分离的一个配置选项,好,下面第一个部分呢,就是配置数据源的部分了,这个里面它已经给省略了,那么我们呢,也已经配完了,第二个部分呢,就是读写分离的类型。我们先把它粘到我们的配置文件当中,那么读写分离的类型呢,有两个,第一个呢就是static,第二个呢是dynamic sta的意思呢,就是上面的数据源的这样的一些配置项的都是我们静态的啊,写到这个里面的,这都是静态的,写到里面的并不。
06:02
好。我们把它配到这个位置,然后呢,这块呢,是我们读写分离数据源的一个名字,也就意味着。我们在当前的这个读写分离的配置当中呢,它其实也是一个独立的一个数据源,那么未来在更复杂的应用程序当中呢,那么读写分离它也可以作为一个独立的数据源被更复杂的集群架构所引用,就像我们现在呢,有三个。数据源master slave,一和二,那么这三个数据源呢?共同组成了一个上层的数据源的一个子节点,那么它的上层的数据源呢?就是这个。所以说呢,我们说比如说我们给这个位置起一个名字呢,叫我的数据源。
07:00
DS。那我的数据源这个数据源节点下面呢,它实际上是包含三个数据源的,一个呢是刚才我们的master,还有一个呢是SLAVE1,还有一个呢是二,那未来当我们的应用程序啊,这个特别复杂的时候呢,那么买DS呢,也可以作为一个数据源呢,被更上层的数据源呢所引用。好,这下面呢,会有更多的数据源,所以这样的话,我们应用程序的节点呢,就更为复杂了,那我们在这个地方呢,给我们当前的这个数据源呢,起个名字。比如说就叫买DS吧,好,那这是我们当前的读写分离的一个类型,叫static数据的名字叫S。接下来呢,下面这个选项啊,当前面这个值是dynamic的时候呢,才会配置,所以我们在当前的情况下呢,就无需配置,然后接下来呢,我们配写数据员的名字那粘过来。
08:07
这块是写数据员的名字。那很显然。前面的这三台服务器当中呢,是写数据源。所以我们在这个位置搭配master,好,这个凡是带尖角号的部分呢,我们都要用真实的名字来代替,那么刚才我们这面起的是买DS,所以这边呢,我们也给它起相同的名字叫买DS。好写数据源,我们配置完成之后呢,我们再看一下读数据源,那读数据源呢,这里面它可以配多个多个从数据源呢,可以用逗号分割,所以呢,我们把它复制过来。现在。这个写数据源的下面。这块是读数据源,大家注意啊,后面一定不要有多余的空格,有空格的话一会儿该运行不起来了。
09:07
检查一下前面这块。如果有多余的空格呢,他会用一个这种颜色给你标出来啊,一定要把它删掉。然后数据源名称。首先这个位置我们还是给他改成买DS。然后后面呢,我们有两个读数据源,一个是一。还有一个用逗号分开是二好,这样的话,读写分离的数据源呢,我们就配好了,配好了之后呢,还有一个负载均衡算法的一个配置。我们先把这个负载均衡算法的名称给它配置过来,那这个呢,我们把它放在上面啊,负载均衡算法名称,那么它所针对的数据源呢,依然是刚才我们的这个买DS。
10:02
好,那么整个这个读写分离的负载均衡的算法呢,我们应该给它起个名字,比如说我们想用那个轮询算法al LG,这是我们自己起的名字啊,叫算法啊,轮巡round round。好。接下来我们来看看这个算法具体怎么去配置,我们先把这个给它配过来。叫做负载均衡算法配置,那么这个位置呢,其实就要写负载均衡的算法名称了,那这个名称就是刚才我们在这个地方的名字。我们把前面命的名写到这个位置。好这块呢,就是负载均衡的算法类型的一个配置的位置。那负载均衡的算法类型有哪些呢?我们需要在文档当中呢进行查找,所以我们打开这个文档。
11:03
找到后面的内置算法,然后这面呢有一个负载均衡算法,我们点进去,这里面呢有轮询算法,随机访问算法和权重访问算法。那么如果用算法的话呢,它的类型名字就叫round Robin。好,我们把in复制一下,粘贴到这个位置,注意后面一定不要有类似这种多余的空格啊,好把它删掉。好,这样的话呢,我们的负载均衡的算法呢,就配置完成了,最后呢,我们再来配一个S的打印输出,那么在。属性配置这个位置我们找到show circle。配置上,那这个怎么配呢,我们用。里面有一个叫做props的一个选项,然后这个里面呢,我们就可以配。
12:03
Show circle。好,那么我们给它一个值呢,叫处。这个呢是打印circle。这是我们整个读写分离的最简单的配置。那这面呢,DBC少一个G哈。这也是一样的,少一个G,好,那我们检查一下,首先呢,这面有应用名称的配置,有开发环境的配置,有内存模式的配置,然后呢,我们配置了三个真实的数据源,Master slave1 slave2,接下来呢,这三个数据源呢,分别配置在了这个位置,那我们主要检查一下这个URL地址是否正确,数据库的名字是否正确,用户名以及密码,那这边呢,是3307 3308,好,然后呢,接下来呢,就是读写分离的类型,我们配的是static写数据源的名字。
13:05
这是master读数据的名字,一和二。接下来呢,负载均衡算法的名称,然后呢是负载均衡算法的类型,以及最后的打印的一个配置,好,那这就是整个的配置了。
我来说两句