-
Application.start
的时候没有捕获返回值又犯不严谨的错误,写下了代码:
Application.start riakc
后来才发现,
riakc
需要riak_pb
的启动,riak_pb
需要protobuffs
启动,其实只要检查一下Application.start
的返回值就能发现了。
改为::ok = Application.start riakc
-
supervisor 提示
invalid mfa
传给
pooler
的参数里面有个启动worker的参数,格式为{module(), start_func(), args}
。我传{:xxx_worker, :start_link, [host: "127.0.0.1]}
,程序报错invalid mfa
,试错法怎么都弄不对,读pooler
的代码也看不出个所以然来,因为它是直接丢给supervisor来启动worker的。
到最后还是彪哥指出,丢给supervisor的参数得是list,因为supervisor在调用start_fun的时候会添加(用++
符号)自己定义的一些参数。然后,把代码改成{:xxx_worker, :start_link, [[host: "127.0.0.1]]}
就好了。
网友评论