当前位置: 首页 > news >正文

软件制作网站网站开发软件有哪些免费

软件制作网站,网站开发软件有哪些免费,在wordpress上添加播放视频教程,企业网站建设营销优化方案一次性付费进群#xff0c;长期免费索取教程#xff0c;没有付费教程。进微信群回复公众号#xff1a;微信群#xff1b;QQ群#xff1a;460500587教程列表 见微信公众号底部菜单 | 本文底部有推荐书籍 微信公众号#xff1a;计算机与网络安全ID#xff1a;Computer-net… 一次性付费进群长期免费索取教程没有付费教程。进微信群回复公众号微信群QQ群460500587 教程列表 见微信公众号底部菜单 |  本文底部有推荐书籍 微信公众号计算机与网络安全IDComputer-network在MMM集群架构中通过提供虚拟的读、写IP地址将数据库的读写功能分离出来但是这仅仅设定了读、写的VIP地址并没有真正实现业务系统中所说的读、写分离功能因为应用程序不可能在需要读的时候就去找可读的VIP在写的时候就去找可写的VIP要解决这个问题可由两种方法来实现。第一种实现读、写分离的方式是通过修改程序将读、写操作提取出来并分别在程序的连接池中设定可读、可写的VIP地址这种方法要修改业务系统的程序实现起来相对比较困难如果是新开发的程序可以在开发时就预留这样的接口而如果程序已经在运行修改的难度是相当大的采用这种方法基本行不通。第二种实现读、写分离的方法是通过一个数据库透明代理也就是在业务系统和数据库之间提供一个代理接口由这个接口来完成业务系统读、写请求的分发将读操作分发到后端只读的数据库服务器上而将写请求分发到后端可写的数据库服务器上。常见的读、写分离软件有Amoeba和MySQL-Proxy。MySQL-Proxy是MySQL官方推出的一个处在业务系统和MySQL数据库之间的程序这个代理可以用来分析、监控和变换通信数据但是MySQL官方建议不要将MySQL-Proxy用于生产环境。事实上MySQL-Proxy确实很不稳定它的读、写分离功能都是通过一个lua脚本来实现的而这个脚本bug很多所以不建议通过MySQL-Proxy来实现读、写分离功能不过可以作为线下测试使用。Amoeba是一个开源项目致力于MySQL的分布式数据库前端代理层它主要在应用层访问MySQL的时候充当SQL路由器功能具有负载均衡、高可用性、SQL过滤、读写分离等功能通过Amoeba可以实现数据源的高可用、负载均衡、数据切片等功能。本文介绍Amoeba作为MySQL读、写分离代理接口的实现过程。1、通过Amoeba实现MySQL读写分离(1)MMM整合Amoeba应用架构在实际的应用环境中Amoeba可与简单的MySQL主从复制架构进行整合实现读与写的分离操作。但是这样存在安全性问题例如MySQL的Master节点出现故障或者任何一个Slave节点故障那么Amoeba并不能自动屏蔽这些故障的MySQL节点可能会导致前端应用程序无法读取数据库的情况。为了解决这个问题Amoeba经常与MMM集群架构一起使用这样如果任意MySQL节点故障MMM集群就能自动屏蔽故障节点从而保证Amoeba一直能够连接到正常的MySQL节点。这里要介绍的Amoeba应用环境就是在MMM集群的基础上构建的整个架构如图1所示。图1  MMM整合Amoeba应用架构此架构其实就是在MMM集群架构的基础上增加了Amoeba Server服务器这样前端所有应用程序的请求都将提交到Amoeba Server上然后Amoeba Server根据自身的读、写配置参数将读请求分配到可读的每个MySQL节点而将写请求分配到可写的MySQL节点上。这个架构由于在底层使用了MMM集群因此Amoeba Server不用担心会将请求分配到一个故障的MySQL节点因为MMM集群会自动转移故障节点到健康节点上。(2)Amoeba的安装这里下载的是amoeba-mysql-3.0.5-RC-distribution.zip。Amoeba的安装非常简单直接解压即可使用这里将Amoeba解压到/usr/local/amoeba目录下这样就完成安装了。Amoeba框架是基于Java SE1.5开发的因此还需要安装Java环境建议使用Java SE1.5以上的JDK版本这里使用的JDK版本为jdk1.6.0_25。将JDK安装到/usr/local/目录下然后设置Java环境变量信息如下export JAVA_HOME /usrk/local/jdk1.6.0_25 export  CLASSPATH.:$JAVA_HOME/jre/lib//rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH$JAVA_HOME/bin:$PATH将这些内容添加到系统的/etc/profile文件中即可完成Java环境的设置。(3)配置AmoebaAmoeba的配置文件在本环境下位于/usr/local/amoeba/conf目录。配置文件比较多但是仅仅使用读、写分离功能只需配置二个文件即可分别是dbServers.xml和amoeba.xml如果需要配置IP访问控制还需要修改access_list.conf文件。下面首先介绍dbServers.xml文件的配置内容如下${defaultManager}641283306 #设置Amoeba要连接的mysql数据库的端口默认是3306testzhu #缺省数据库当连接amoeba时操作表必须显式的指定数据库名即采用dbname.tablename的方式不支持 use dbname指定缺省库因为操作会调度到各个后端dbservertest1 #设置amoeba连接后端数据库服务器的账号和密码因此需要在所有后端数据库上创建该用户并授权amoeba服务器可连接111111 #连接密码500 #最大连接数默认500500 #最大空闲连接数1 #最新空闲连接数600000600000truetruetrue #设置一个后端可写的dbServer这里定义为writedb这个名字可以任意命名后面还会用到192.168.1.129 #设置后端可写dbserver #设置后端可读dbserver192.168.1.118 #后端可读dbserver的IP……这样Amoeba就配置完成了。(4)设置Amoeba登录数据库权限这里假定Amoeba服务器的IP地址为192.168.88.35在MMM集群的所有MySQL节点上执行如下操作为Amoeba访问MMM集群中所有MySQL数据库节点授权mysqlGRANT ALL ON repldb.* TO ixdba192.168.88.35 IDENTIFIED BY xxxxxx;mysqlflush privileges;(5)启动Amoeba在Amoeba服务器上执行如下命令启动Amoeba[rootamoebaserver bin]# /usr/local/amoeba/bin/launcher2019-10-24 18:46:37 [INFO] Project NameAmoeba-MySQL, PID22474, starting...log4j:WARN log4j config load completed from file:/usr/local/amoeba/conf/log4j.xml2019-10-24 18:50:21,668 INFO context.MysqlRuntimeContext - Amoeba for Mysq  current versoin5.1.45-mysql-amoeba-proxy-3.0.4-BETAlog4j:WARN ip access config load completed from file:/usr/local/amoeba/conf/access_list.conf2019-10-24 18:50:22,852 INFO net.ServerableConnectionManager - Server listening on 0.0.0.0/0.0.0.0:8066.[rootcloud0 bin]# netstat -unlpt | grep javatcp 0 0 :::8066 :::* LISTEN 22474/java由此可知Amoeba启动正常。(6)测试Amoeba实现读、写分离和负载均衡要测试Amoeba实现读、写分离和负载均衡功能需要在MMM集群的所有MySQL节点开启MySQL的查询日志。查询日志可以记录数据库中建立的客户端连接和执行的语句。开启方法很简单在MySQL配置文件/etc/my.cnf中添加如下内容log/var/log/mysql_query_log当然mysql_query_log文件要事先存在并且对MySQL用户可写。为了测试方便这里在每个MySQL节点的test库中创建一张表表的名字为mmm_test例如在Master1节点创建表的过程如下mysqluse test;mysqlcreate table mmm_test(id int,email varchar(60));mysqlinsert into mmm_test(id,email) values(100,this is 192.168.88.20);上面的操作是在mmm_test表的email字段中插入一条记录“this is 192.168.88.20”而字符串“this is 192.168.88.20”就是个IP标识这样做的目的是区分多个MySQL节点不同IP地址的情况。接着在Master2节点同样执行上面的SQL操作所不同的是mmm_test表email字段的内容修改为“this is 192.168.88.21”。依此类推分别在Slave1和Slave2节点执行相同的操作。接着在远程MySQL客户端通过Amoeba配置文件中指定的用户名、密码、端口以及Amoeba服务器的IP地址连接MySQL数据库操作过程如图2所示。图2  测试Amoeba实现读操作的负载均衡功能从图2可以看出客户端连接到的Server version为5.1.45-mysql-amoeba-proxy-3.0.4-BETA可见客户端连接的是Amoeba实例而不是MySQL实例而从下面的查询test库中mmm_test表的内容来看Amoeba依次将4次select请求均衡地分配到MMM集群中4个可读MySQL节点上由此可知Amoeba实现了读操作的负载均衡。下面继续进行SQL测试创建两个表mmm_test1和mmm_test2操作过程如下mysqlcreate table mmm_test1(id int,email varchar(60));Query OK,0 rows affected(0.04 sec)mysqlcreate table mmm_test2(id int,email varchar(60));Query OK,0 rows affected(0.04 sec)mysqlinsert into mmm_test1(id,email) values(101,mmm_test1126.com);Query OK,1 rows affected(0.02 sec)mysqldrop table mmm_test2;Query OK,0 rows affected(0.10 sec)为了确定创建的两个表是否已经正常同步到MMM集群的其他节点可分别登录每个MySQL节点进行查询接着还要确定MySQL的写操作是否分配到可写的节点Master1可通过查看每个MySQL节点的查询日志。Master1节点的MySQL查询日志信息如图3所示。图3  Master1节点MySQL查询日志Master2节点的MySQL查询日志信息如图4所示。图4  Master2节点MySQL查询日志其他节点的信息基本类似这里不一一列出。从MySQL的查询日志中可以进一步验证Amoeba实现了读负载均衡而写操作在Master1节点执行了。虽然Master2节点也有相关写操作的日志但这是MySQL的复制线程执行的写操作因为除了Master1其他MySQL节点都是read_only状态是无法执行写操作的。2、通过Keepalived构建高可用的Amoeba服务在上面介绍的MMM整合Amoeba应用方案中虽然通过Amoeba实现了MySQL的读、写分离但是这个架构并不完美因为还存在Amoeba服务器单点故障也就是说当Amoeba出现故障后业务系统将无法访问MySQL服务。要解决这个问题其实非常简单通过Keepalived给Amoeba做高可用即可通过Keepalived实现Amoeba高可用并实现MySQL集群读、写分离的架构如图5所示。图5  通过Keepalived实现Amoeba高可用并实现MySQL集群读、写分离架构微信公众号计算机与网络安全IDComputer-network【推荐书籍】
http://wiki.neutronadmin.com/news/54359/

相关文章:

  • 网站建设智推网提高网站权重的作用
  • 阿里巴巴网站特色广告设计案例网站
  • 网站开发盈亏平衡分析表谁知道免费网站
  • 新密做网站贵州铁路投资建设网站
  • 广东省建设工程安监局网站专门装修的网都有什么网网站
  • 织梦 公司网站模板网站建设找导师蓝林
  • 西安北郊网站开发wordpress 权限插件
  • 郓城那家网站做的好新建wordpress模板
  • 站长之家网站流量查询凡客旗下商城
  • 服务器网站建设东莞做公司网站
  • asp网站用什么数据库网站 租用服务器价格
  • 网站的简介怎么在后台炒做东莞网站优化一般多少钱
  • 网站关键词如何做优化网站建设找哪家公司比较好
  • 呼和浩特网站运营广州企业建站公司
  • 织梦网站上传图片不行咸阳网站建设报价
  • 石家庄定制网站建设多少钱网站页面设计如何收费
  • 做诚信通谁给做网站郴州网站制作公司在哪里
  • 广州开发区建设局网站镇江seo
  • 网站关于我们示例邢台做网站建设优化制作公司金信
  • 企业自建站案例单一本地门户网站源码
  • wordpress 拿站wordpress右下角弹出广告
  • 做一个网站最便宜多少钱微信怎么推广最有效
  • 济南建立网站室内设计联盟模型下载
  • 网站qq链接怎么做榆林城乡建设规划官方网站
  • 以网站名为后缀的邮箱怎么做澄城县城乡建设局网站
  • 在那做网站东莞网络营销推广公司
  • 武安建设局网站一锅汤资源网站建设大全
  • 电商网站开发面试题网站建设 兼职 外包
  • 中山全麦网站建设建设网站查询密码
  • 怎样在自己网站上传产品大型网站维护费一年多少