1.Spring实现数据库的读写分离
现在大型的电子商务系统,在数据库层面大都采用读写分离技术,就是一个Master数据库,多个Slave数据库。Master库负责数据更新和实时数据查询,Slave库当然负责非实时数据查询。因为在实际的应用中,数据库都是读多写少(读取数据的频率高,更新数据的频率相对较少),而读取数据通常耗时比较长,占用数据库服务器的CPU较多,从而影响用户体验。我们通常...
分类:
编程语言 时间:
2016-04-26 19:55:14
阅读次数:
345
前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上。于是设计了如下的架构。 架构简介 此架构主要是由keepalived实现双机高可用,维护了一个外网VIP,一个内网VIP。正常情况时,外网VIP和内网V ...
分类:
数据库 时间:
2016-04-25 17:42:39
阅读次数:
266
【主库上】
在已有主从同步配置的基础上增加log配置项,打开“全日志”功能。
vim/etc/my.cnf
log=mysqlfull.log
servicemysqldrestart
cat/var/lib/mysql/mysqlfull.log
给mysqlproxy机器授权:
grantallon*.*to‘root‘@‘%‘identifiedby‘123123‘;
【从库上】
在已有主从同步配置..
分类:
数据库 时间:
2016-04-25 01:03:52
阅读次数:
244
1、动态数据源: 在一个项目中,有时候需要用到多个数据库,比如读写分离,数据库的分布式存储等等,这时我们要在项目中配置多个数据库。 2、原理: (1)、spring 单数据源获取数据连接过程: DataSource --> SessionFactory --> Session DataSouce 实 ...
分类:
编程语言 时间:
2016-04-21 22:01:02
阅读次数:
499
1、动态数据源: 在一个项目中,有时候需要用到多个数据库,比如读写分离,数据库的分布式存储等等,这时我们要在项目中配置多个数据库。 2、原理: (1)、spring 单数据源获取数据连接过程: DataSource --> SessionFactory --> Session DataSouce 实 ...
分类:
编程语言 时间:
2016-04-21 20:21:27
阅读次数:
253
项目进行读写分离及分库分表,在一个业务中,在一个事务中处理时候将切换多个数据源,需要保证同一事务多个数据源数据的一致性。此处使用atomikos来实现:最后附源码:
1:spring3.0之后不再支持jtom[jta]了,第三方开源软件atomikos(http://www.atomikos.com/)来实现.
2:org.springframework.transaction.jta.Jo...
分类:
编程语言 时间:
2016-04-19 19:57:44
阅读次数:
595
微软针对SQLserver推出了很多高可用技术,诸如早期的复制,到后来的日志传送, 数据库镜像,SQLserver集群等等。在SQLserver 2012又拿出了杀手锏AlwaysOn, 和Oracle也是有得一拼啊!SQLserver AlwaysOn整合了Windows集群,数据库镜像, 增加了读写分离等等。SQLserver运行需要Windows域控的支持.........
分类:
数据库 时间:
2016-04-19 10:18:36
阅读次数:
272
Mysql数据库的集群(读写分离),说白了就是将读操作和写操作分开在不同的服务器上实现,以达到提高效率的目的。 大致原理如下: 数据库中的所有操作都是有日志记录的(前提是要打开这个日志记录功能) 1.master,主服务器(进行写操作的服务器)的所有记录都保存到二进制日志(binary log)中, ...
分类:
数据库 时间:
2016-04-19 06:10:31
阅读次数:
250
使用代理软件mysql-proxy实现mysql的读写分离实验:172.16.1.10客户端请求mysql-proxy,判断是写还是读建立两次连接是远程连接,要授予远程连接的权限>usedb;>createtabletest(idint);>insertintotestvalues(10),(100);>grantallondb.*toproxy@‘%‘identifiedby‘123‘..
分类:
数据库 时间:
2016-04-19 00:35:37
阅读次数:
260
ab复制(主从复制)可以让mysql实现:1.数据的备份(主服务器的数据全部同步到从服务器)2.可以负载均衡减小主服务器的压力3.真正实现mysql的读写分离配置方法主服务器:1.主服务器my.cnf配置cat/etc/my.cnf[mysqld]log-bin=mysql_binserver-id=1不允许重复2.授权,指定从服务器只能..
分类:
数据库 时间:
2016-04-19 00:34:41
阅读次数:
203