erlang 关于erlang:小心使用erlang的monitor 要从一次线上的内存透露说起. 最终定位到在异步send办法中, monitor了被调用过程, 而又没有开释, 导致透露. 违反直觉的是, 这个透露是双向的, A monitor B后, A会记录 monitors B, B会记录 monitored_by A. 过程A退出后, 过程B不会开释 monitored_by A. 所以, 在应用monitor时, 留神在任何状况下, 都要demonitor.
erlang 关于erlang:最简洁的Erlang基础 Erlang读音/ˈɜːrlæŋ/。第一次见到的时候总感觉怎么读都读不对,起初在维基上看到Erlang标注了音标,能力精确的读出来,而且也没那么怪异。因为工作才有机会接触这门语言,也因而只有三天的工夫能够看《Erlang程序设计》这本书。学习这门语言的时候带着一个工作指标:把一个Erlang日志收集剖析统计的代码转换成Python的。…
erlang 关于erlang:从erlang-otp21-升级-otp23-遇到的坑 最近将erlang从otp21.3.8.17降级至最新的otp23.1. 遇到了两个编译不告警, 但版本前后语义不统一, 且在changelist中未提及的问题. 在此做个记录.
erlang 关于erlang:使用fprof-profile-erlang 概述不谈profile tools的重要性. erlang profile肯定要看看上面这篇.[链接]这篇blog记录一些实操.步骤fprof采集数据在程序中, 或者间接remote_console触发采集. {代码…} 不传递参数状况下, 默认会将fprof信息写入fprof.trace文件.应用kcachegrind 查看fprof的后果应用erlgrind转化为callgrind格局 {代码…} 装置kcach…
erlang 使用mnesia在节点间共享内存 有很多场景需要在一系列节点间共享内存数据. 如, 有一系列水平对等的网关, 可以在任意网关节点上拿到所有网关的特定内存信息. 一般的做法是使用zookeeper, etcd等提供了分布式一致性保证的服务. 使用zookeeper, etcd做节点间的数据同步当然没有问题. 但是: