为了玩下mysql-proxy实现mysql读写分离:
准备了几台服务器:
服务器A:ubuntu 192.168.1.4 (mysql 5.5 master)
服务器B:ubuntu 192.168.1.2 (mysql 5.5 slave)
服务器C:windows 7 192.168.1.3 (mysql 5.5 slave)
目标,将这些mysql服务器配置成读写分离,其中A用来写,BC用来读.
mysql-proxy能很好的实现读写分离,但是为了数据同步,必须将读和写的mysql配置成master-slave结构,当然写的作为master,读的都作为slave,至于如何配置master-slave可以看我转载的文章。
首先在ubuntu上可以通过apt-get..
1.主库编辑my.cnf:
[mysqld]
log-bin=NEW_NAME
server-id=1 #配一个唯一的ID编号,1至32。
#设置要进行或不要进行主从复制的数据库名,同时也要在 Slave 上设定。
binlog-do-db=数据库名1
binlog-do-db=数据库名2
binlog-ignore-db=数据库名1
binlog-ignore-db=数据库名2
mysql> grant replication slave on *.* to slaveuser@192.168.1.101 identified by '123456' ;
mysql> flush privileges;
mysql> show master status;
+------------------+----------+-----..
由于ubuntu通过apt-get安装mysql只能安装mysql5.1,为了更新的版本只能通过源码安装,去oracle官网下载 Linux-Generic 下的32位或64位,这个根据自己系统。
如果已经安装了mysql,必须先卸载,如果干净的卸载,mysql这里我就不提了
安装步骤:(安装步骤参考mysql官方安装文档 )
shell> sudo apt-get install libaio-dev(或者libaio1) shell> sudo groupadd mysql shell> sudo useradd -r -g mysql ..
System.getProperty()参数大全
java.version Java Runtime Environment version
java.vendor Java Runtime Environment vendor
java.vendor.url Java vendor URL  ..
网上有不少mysql 性能优化方案,不过,mysql的优化同sql server相比,更为麻烦与负责,同样的设置,在不同的环境下 ,由于内存,访问量,读写频率,数据差异等等情况,可能会出现不同的结果,因此简单地根据某个给出方案来配置mysql是行不通的,最好能使用status信息对mysql进行具体的优化,网上找了一篇文章,分页分得乱七八糟的,只能转到博客。
mysql> show global status;
可以列出mysql服务器运行各种状态值,另外,查询mysql服务器配置信息语句:
mysql> show variables;
一、慢查询
mysql> show variables ..
最近项目日志中总是抛出异常
java.lang.IllegalStateException: getAttribute: Session already invalidated
经调查发现,问题出在HttpSession session.getAttribute("paramName");这个方法执行时。
异常原因为:从Session中获取属性值的时候,Session已经无效。
有两种可能导致Session无效(1)Session timeout;(2)程序中调用了session.invalidate()方法。
搜索了整个项目Code,发现在用户注销的过程中的确执行了session.invalidate()方法。
考虑发生此种..
其实铁路订票系统面临的技术难点无非就是春运期间可能发生的海量并发业务请求。这个加上一个排队系统就可以轻易解决的。
本来我在 weibo 上闲扯两句,这么简单的方案,本以为大家一看就明白的。没想到还是许多人有疑问。好吧,写篇 blog 来解释一下。
简单说,我们设置几个网关服务器,用动态 DNS 的方式,把并发的订票请求分摊开。类比现实的话,就是把人分流到不同的购票大厅去。每个购票大厅都可以买到所有车次的票。OK ,这一步的负载均衡怎么做我就不详细说了。
每个网关其实最重要的作用就是让订票的用户排队。其实..
12306.cn网站挂了,被全国人民骂了。我这两天也在思考此事,想以此事来和大家讨论一下网站性能的问题。因为仓促,而且完全基于本人有限的经验和了解,所以,如果有什么问题还请大家一起讨论和指正。(这又是一篇长文,只讨论性能问题,不讨论那些UI、用户体验、或是否把支付和购票下单环节分开的功能性的东西)
业务
任何技术都离不开业务需求,所以,要说明性能问题,首先还是想先说说业务问题。
其一,有人可能把这个东西和QQ或是网游相比。但我觉得这两者是不一样的,网游和QQ在线或是登录时访问的更多..
在B/S模型的Web应用中,客户端常常需要保持和服务器的持续更新。这种对及时性要求比较高的应用比如:股票价格的查询,实时的商品价格,自动更新的twitter timeline以及基于浏览器的聊天系统(如GTalk)等等。由于近些年AJAX技术的兴起,也出现了多种实现方式。本文将对这几种方式进行说明,并用jQuery+tornado进行演示,需要说明的是,如果对tornado不了解也没有任何问题,由于tornado的代码非常清晰且易懂,选择tornado是因为其是一个非阻塞的(Non-blocking IO)异步框架(本文使用2.0版本)。
在开始之前,为了让大家有个清晰..
事件调度器是在 MySQL 5.1 中新增的另一个特色功能,可以作为定时任务调度器,取代部分原先只能用操作系统任务调度器才能完成的定时功能。而且 MySQL 的事件调度器可以实现每秒钟执行一个任务,这在一些对实时性要求较高的环境下就非常实用了。
事件调度器是定时触发执行的,在这个角度上也可以称作是”临时的触发器”。触发器只是针对某个表产生的事件执行一些语句,而事件调度器则是在某一个(间隔)时间执行一些语句。事件是由一个特定的线程来管理的,也就是所谓的”事件调度器”。启用事件调..