Changes between Version 1 and Version 2 of Ticket #95


Ignore:
Timestamp:
03/14/2012 03:33:55 PM (14 years ago)
Author:
sunxiang
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #95 – Description

    v1 v2  
    66 
    77== 原因 == 
    8 resin-web.xml中 
     8官网上看到,norepl原来是no replica(没有复制品)的意思,从测试得知只配了一台机。查了一下mongo连接相关的配置,在resin-web.xml中mongo配置如下: 
    99{{{ 
    1010<env-entry> 
     
    1313<env-entry-type>java.lang.String</env-entry-type> 
    1414<env-entry-value>mongodb://192.168.75.100:5566/price_front_cache?slaveOk=true;maxPoolSize=256;w=2;safe=true</env-entry-value> 
    15         </env-entry> 
     15</env-entry> 
    1616}}} 
     17其中,w=2;safe=true表示使用安全模式连接到复制组,等待复制操作至少在2台机器完成,但又没有配置复制集,因此报错。 
     18== 解决 == 
     19去掉配置中的w=2;safe=true即可。[[BR]] 
    1720 
    18 == 解决 == 
     21附上连接相关的配置:[[BR]] 
     22'''标准的连接字符串格式''' 
     23{{{ 
     24mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]] 
     25}}} 
     26 •mongodb:// 必选的前缀,用来标示这是一个标准连接格式的字符串 
     27 •username:password@ 可选的。如果有,驱动在连接到数据库服务器后会尝试登录到一个数据库。 
     28 •host1 URL的必选部分。它标示了要连接的服务器地址。 
     29 •:portX 是可选的。如果没有提供默认连接到:27017. 
     30 •/database 要登录的数据库的名称,只有username:password@语法使用后它才有用。如果没有提供,默认使用“admin”。 
     31 •?options 是连接的可选项。注意如果database没有提供,在最后一个主机和?符号中间依然需要一个斜杠"/"。可选项是名称=值的配对,他们使用"&"或者";"隔开。 
     32  
     33很多主机可能需要指定(连接到复制对/组)。 
     34  
     35这些可选项是: 
     36  
     37复制组: 
     38 •replicaSet=name 
     39  •驱动会检查连接到的复制组和这个名称是否匹配。意味着如果给出的主机是种子列表,驱动会尝试找到复制组内所有成员。 
     40 
     41单台服务器: 
     42 •slaveOk=true|false 
     43  
     44其他配置: 
     45 •safe=true|false 
     46  •true:驱动在执行更新操作后会发送一个getLastError命令确保更新成功(同时查看一下w和wtimeoutMS)。 
     47  •false:驱动在每次更新操作后不会发送getLastError命令。 
     48  
     49 •w=n 
     50  •驱动在getLastError命令中增加{w:n}。在safe=true的情况下. 
     51  
     52 •wtimeoutMS=ms 
     53  •驱动在getLastError命令中增加{wtimeout:ms}。在safe=true的情况下. 
     54  
     55 •fsync=true|false 
     56  •true:驱动在getLastError命令中增加{fsync:true}。在safe=true的情况下. 
     57  •false:驱动不在getLastError命令中增加同步参数。 
     58  
     59 •journal=true|false 
     60  •同步到日志文件。在safe=true的情况下. 
     61  
     62 •connectTimeoutMS=ms 
     63  •一个连接在超时之前可以保持打开的时间。 
     64  
     65 •socketTimeoutMS=ms 
     66  •套接字上面的发送和接收操作的超时时间。 
     67