erlang小结

本文介绍Erlang配置文件设置、ez包使用方法、内存占用检查及Mnesia数据库集群搭建过程。涵盖elog配置、ez包创建与加载、erts_debug:size函数用法及Mnesia表操作等关键知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.erlang的配置文件:
   erl -boot start_sasl -config elog1

  elog1.config文件内容:
  [{kernel, [{error_logger,      {file, "/home/cas/erlang_log_test/error1.log"}}]},
    {sasl,   [{sasl_error_logger, {file, "/home/cas/erlang_log_test/sasl1.log" }}]}].

2.erlang的ez包使用例子:
  erlang打包命令:zip:create("beamtest.ez", ["beamtest"], [{compress, all},{uncompress,[".beam",".app"]}]).
  文件beamtest.ez和目录beamtest必须一致; beamtest目录必须是单独目录。
  
  使用ez包:export ERL_LIBS=/home/cas/ez_test_imp/deps; erl -pa ebin
  查看模块信息命令:Module:module_info().
  查看载入模块的路径命令:rp(code:get_path()).

3.erlang中统计变量大小的没有公开函数:
   erts_debug:size。
   参看地址:http://www.erlang.org/doc/efficiency_guide/processes.html  

4.mnesia节点集群:

mnesia:create_table(dict, [{ram_copies, [node()]}, {attributes, {english, chinese}}]),
erl -setcookie cupid -name test1@127.0.0.1
mnesia:create_schema([node()]).
mnesia:start().
rr("dictionary_record.hrl").
mnesia:create_table(dictionary, [{ram_copies, [node()]}, {attributes, record_info(fields, dictionary)}]).
Row = #dictionary{english=aaa, chinese=bbb}.
mnesia:dirty_write(Row).
mnesia:del_table_copy(dictionary, 'test2@127.0.0.1').
mnesia:del_table_copy(schema, 'test2@127.0.0.1').
erl -setcookie cupid -name test2@127.0.0.1
mnesia:start().
mnesia:change_config(extra_db_nodes, ['test1@127.0.0.1']).
mnesia:change_table_copy_type(schema, node(), disc_copies).
mnesia:add_table_copy(dictionary, node(), ram_copies).
rr("dictionary_record.hrl").
Row = #dictionary{english=ccc, chinese=fff}.
mnesia:dirty_write(Row).
mnesia:delete_schema([node()]).
     
        退出集群:mnesia:del_table_copy(schema, 'test2@127.0.0.1').
      


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值