服务器的负载均衡

为了防止某web网站在千人,万人访问时,服务器崩溃

将我们的应用从一台服务器转到多台服务器,了解负载均衡,集群

理解负载均衡

服务器集群实际上就是做数据冗余(某一服务器发生故障,下一服务器返回响应)

比如数据库,存在一个正常的数据库服务器A和备份数据库服务器B,如果A正常,B不工作,如果A出了故障,那么B开始接收A的工作,让外部用户看不出系统故障,从而为用户提供持续性的服务。

Mysql数据库,作为一个开源数据库,Mysql无疑使成功的,现在很多大型的互联网公司都在使用它

可能有人会说,mysql只适合中小型应用,大型应用一般都使用sqlserver,oracle,db2这些数据库,那么我要告诉你,你错了。作为一个互联网公司,对于成本问题肯定是要控制的,当然,对于国企,肯定例外了啊。如果使用一个oracle数据库,那么一年上百万的资金,对于一般公司貌似的确是承受不了的。举个例子:淘宝,在最开始的时候,它的构架采用的是经典的LAMP(linux+apache+mysql+php),然后就使用了oracle+javaee(貌似是这样),最后,改为mysql集群。

mysql对于上千万级的数据反应比较慢(这可能也是很多人觉得它不适合做大型应用的原因吧),如果对于单一服务器,可能要让它速度更快,也就是做数据库的优化,比如建立合适的索引

有两种技术,数据库的垂直分表,水平分表和mysql分区技术   这个可以去了解一下

Mysql的主从复制。(减少mysql服务器压力,同时也备份了数据)

什么是mysql的主从,主服务器我们一般称为master,从服务器称为slave,主服务器主要负责除了查询以外的其他操作,而从服务器就专门负责查询操作,那么,对于单个服务器的压力就顿时减少了很多。

如果要将CURD的操作分开,那么就需要保证主从服务器的数据是一致的,那么这种一致性怎么保证呢,就要实现mysql的主从复制了。

使用LAMP构造

1.在两台LINUX机器上(虚拟机或某云上的主机)搭建LAMP环境,配置IP地址,保证两个主机之间可以连通(ping通)

(开启web服务:apache(/etc/init.d/httpd start或者service httpd start) 在windows浏览器中输入web服务器IP地址,如果出现apache启动页面,则成功,否则,可能是防火墙的问题)

2.配置主从服务器(mysql)

{大概配置流程,实际配置中,参考资料进行配置}

主:/etc/my.cnf

主要需要设置两样,server-id和log-bin

然后重启mysql,进入mysql,执行grantreplication slave on *.* to '用户名'@'从服务器地址' identified by '密码',然后flush privileges,然后show master status

从:/etc/my.cnf

server-id和log-bin

然后重启mysql,然后进入mysql执行slavestart,然后ERROR了,为什么呢,因为mysql默认已经打开了slave,所以需要首先slave stop,再slave start,然后show slave status\G.,\G是把信息显示的方式调了一个方向,看着比较好看,然后如果出现  

 Slave_IO_Running: Yes

          Slave_SQL_Running: Yes

就说明你的从服务器搭好了。

3.现在可以建立一个test数据库,在test数据库建立一个test表(在主从服务器都需要执行这个SQL,如果你只是在主服务器建立了SQL,那么需要使用mysqldump命令备份过来),然后在主服务执行一条insert语句,然后在从服务器看看,OK,从服务器也已经有了一条记录。

建立好了主从服务器,那么将查询操作和其他操作分开

有引用来自https://my.oschina.net/mingtingling/blog/118574博客,,主要记录是为了自己学习,以后方便查看

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值