记录几个小问题

1erlang的节点没法ping通。java

 通常影响erlang节点互ping的因素大体有以下几个:linux

a) 设置相同的cookie;mongodb

b) 防火墙关闭;shell

  两个server节点和 mnesia节点互ping的过程当中,首先设置了相同的cookie,其中一台物理机上的server1节点设置相同的cookie后,没发pingmneisa节点,但两台物理机之间能够互相ping通,说明网段访问没问题。vim

cookie又再次检查,在erlangshell下,erlang:get_cookie(),查看获取的cookie是同样的。 防火墙看了下, 在linuxshell下,执行命令$  service iptables status   iptables: Firewall is not running  说明防火墙没开启,没问题.cookie

纠结中,对linuxhostname不使用其名字,而用ip地址,发现能够ping通,root@127.0.0.1 spa

 

而后,在 vim /etc/hosts 下,写下要ping的这个网段的全部  iphostname对应的关系,server

再继续设置相同的cookie后,net_adm:ping/1 ,成功了,网段内的节点以前能够互相ping通访问了。索引

 

2mongodbUTC时间ip

 

ErlangmongoUTC时间,是为了建立collection的时候,建立该时间,而后在索引中设置过时时间,这样就能够定时删除过时数据了。

这里的这个collection的建立时间,为mongoutc时间.     须要注意的是:mongo中的date类型以UTC(Coordinated Universal Time)存储,就等于GMT(格林尼治标准时)时间,咱们是+8时区,也就是时差相差8,因此+8小时就是系统当前时间.

对于java来讲,直接new Data() ,获取的便是UTC时间,而这个字段为date数据类型的.

对于erlang来讲,没有date的数据类型,而一开始走着想是先把时间转为UTC时间,而后在存入,发现这样存到mongo中的是string类型的.最后,发现now() 这样,直接存入的便是mongoUTC时间,也是data类型的.

相关文章
相关标签/搜索