Atea - Hero's Grave

面向对象,开源,框架,敏捷,云计算,NoSQL,商业智能,编程思想。

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  40 随笔 :: 0 文章 :: 28 评论 :: 0 Trackbacks

2011年6月24日 #

有2台linux服务器,一台布apache(A)和tomcat应用程序(B),一台布solr管理平台(C)。

发现的bug为:
前台访问A,A转发给B,B再访问C,访问失败。

经试验,web server和app server不能放到一台服务器上,否则通过apache代理,app server调用solrj会因获取不到连接而失败。

目前跟踪调查到
org.apache.solr.client.solrj.impl.CommonsHttpSolrServer
->
org.apache.commons.httpclient.HttpClient
->
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager

httpclient的版本是3.1,怀疑是MultiThreadedHttpConnectionManager自定义的池出的问题。
网上搜了搜,没什么相关资料。最近太忙,没精力刨根问底了。暂时改了solrj源码,使用了默认的new HttpClient()
有谁也遇到类似问题并解决了,或知道怎么回事,麻烦告知一下。

PS:
solr更新这么迅速,为啥不把httpclient升级一下

posted @ 2012-02-29 16:45 Atea 阅读(321) | 评论 (0)编辑 收藏

最近又折腾起了activemq。见Failover的文档没有中文的,就顺手给翻了:

Apache ActiveMQ - The Failover Transport Options

Option Name Default Value Description
initialReconnectDelay 10
第一次重连的时间间隔(毫秒)
maxReconnectDelay 30000
最长重连的时间间隔(毫秒)
useExponentialBackOff true
重连时间间隔是否以指数形式增长
backOffMultiplier 2.0
指数的值
maxReconnectAttempts -1 >= AMQ v5.6
0 < AMQ v5.6,
自版本5.6起:-1为默认值,代表不限重试次数;0代表从不重试(只尝试连接一次,并不重连)
5.6以前的版本:0为默认值,代表不限重试次数
所有版本:如果设置为大于0的数,代表最大重试次数
startupMaxReconnectAttempts 0
初始化时的最大重连次数。一旦连接上,将使用maxReconnectAttempts的配置
randomize true
使用随机链接(注:达到负载均衡的目的)
backup false
提前初始化一个未使用连接,以便进行快速失败转移
timeout -1
设置发送操作的总计最大超时时间(毫秒)
trackMessages false
在重连过程中缓存消息
maxCacheSize 131072
缓存的最大字节数
updateURIsSupported true
设定是否可以动态修改broker uri(自版本5.4起)

posted @ 2011-12-28 10:35 Atea 阅读(2963) | 评论 (0)编辑 收藏

     摘要: 标题起的有些大,仅代表自己和身边一些人从业这几年来的感悟:P  阅读全文
posted @ 2011-09-01 15:31 Atea 阅读(2749) | 评论 (5)编辑 收藏

现象:
JDBC执行 UPDATE DB_NAME.TABLE_NAME SET COLUMN_NAME xxxx;
然后操作并不计入mysql binlog,主从复制失效。

发生条件:
1、MySQL 5.1 (理论上5.1+)
2、SQL语句指定库名/跨库执行,之前没有指到这个库下面(use DATABASE_NAME )
3、MySQL主从配置没有加--replicate-wild-do-table=db_name.%

解决办法:
在主从配置文件内加入参数
--replicate-wild-do-table=db_name.%

参考文档:
MySQL官方文档
posted @ 2011-06-24 16:47 Atea 阅读(519) | 评论 (0)编辑 收藏