Erlang/Elixir: 用Distillery替换Exam打包器

2016-08-19
阅读 2 分钟
4.8k
Distillery 是一个新的在未来用于替换Exrm的Elixir应用程序发布工具. 它有比Exrm更快的构建速度, 完全用Elixir开发, 更灵活的配置, 目标是成为MIX本身的一部分, 作为Elixir的标准工具.

Erlang/Elixir: 外部通信之-C节点

2016-08-13
阅读 10 分钟
5.2k
系列:Erlang/Elixir: 外部通信之-NIFErlang/Elixir: 外部通信之-端口驱动Erlang/Elixir: 外部通信之-C节点 C节点使用Erlang提供的 Erl_Interface 与 Erlang VM进行交互, 因此需要在C文件中包含头文件:#include "erl_interface.h" 2016-08-14 更新: C节点多线程示例 [链接]

Erlang/Elixir: 外部通信之-端口驱动

2016-08-12
阅读 9 分钟
5.3k
系列:Erlang/Elixir: 外部通信之-NIFErlang/Elixir: 外部通信之-端口驱动Erlang/Elixir: 外部通信之-C节点 本文是Erlang/Elixir和外部世界通信的第一篇, 阐述了端口驱动的基本概念以及和外部世界的通信方式, 目前主要有如下几种方式 NIF Port Port driver C node 这一篇文章从端口驱动开始讲起, 后续的文章我会介绍其他...

Erlang/Elixir: 使用 Leex 和 Yecc 解析领域语言(DSL)

2016-06-22
阅读 4 分钟
6.6k
本文需要对编译原理有一定的了解. Leex 是一个 Erlang 语言实现的词法分析器(Lexical Analyzer). 接收字符流输入, 产生符号流输出.Yecc 是一个 Erlang 语言实现的语法分析器(Syntactic Parser). 接收符号流输入, 产生AST.

使用 Rust 语言开发 Erlang NIF

2016-06-22
阅读 3 分钟
6.5k
Rustler 是一个在安全的用 Rust 编写 Erlang NIF 的库. 这里安全的含义是, 它不会导致 BEAM(Erlang 虚拟机)的崩溃. 该库提供了一个设施用于生成与BEAM交互的模板, 处理Erlang Term的编码和解码. Rustler 适用于 Erlang 和 Elixir, Elixir 是首选的.

Erlang/Elixir: 有限状态机原理笔记

2016-05-22
阅读 6 分钟
5.1k
OTP 原理 有限状态机被描述为如下形式的一组关系集合. 含义可以解释为:如果在状态S的时候发生了事件E, 那么执行动作A并且使状态S过渡( transition )到状态S'. 对于使用 gen_fsm 行为的有限状态机来说, 状态过渡规则被实现为一些 Erlang 函数, 他们遵循如下的约定: {代码...} 对于这种形式的函数, 状态机存在多少个状态, ...

Erlang/Elixir: 连接到远程节点

2016-05-20
阅读 2 分钟
3.8k
启动服务器, 同时设置SSH的系统目录和用户目录. 如果不设置, 系统目录默认为/etc/ssh(需要root权限), 用户目录为~/.ssh

Erlang/Elixir: 在Ubuntu上通过SystemTap对Erlang进行运行时的动态追踪

2016-05-20
阅读 13 分钟
4.6k
SystemTap 是监控和跟踪运行中的Linux 内核的操作的动态方法. 这句话的关键词是动态. 因为SystemTap 没有使用工具构建一个特殊的内核, 而是允许您在运行时动态地安装该工具.

Erlang/Elixir: 在OSX上通过DTrace对Erlang进行运行时的动态追踪

2016-05-19
阅读 11 分钟
5.5k
2018-02-17 更新对于 El Capitan, 以及之后的OSX系统, 需要禁用SIP(System Integrity Protection)参考: System Integrity Protection是什么 如何让Dtrace能够重新工作 系统完整性保护添加另外一层安全保护模型 EL Capitan中的Rootless是什么? Dtrace指南

Erlang 内存管理: 内存分配器简介

2016-05-05
阅读 1 分钟
5.8k
这里介绍的是 Erlang 自己实现的内存分配器, 并非操作系统的内存分配器, Erlang 需要调用操作系统的分配器获取一大块内存, 并用于 Erlang 系统内部的内存分配, 来满足比如创建进程, 原子, 二进制数据, 驱动等数据结构的内存需求.

Erlang版本管理工具: Kerl

2016-04-10
阅读 3 分钟
6.9k
首先给大家分享一个笑话, 这是程序员专用笑话, 祝各位开心! 英语说明很简单, 就是叫你如何画一个猫头鹰, 分为两个步骤: 第一步: 画一些圆 第二部: 画剩余的部分 安装 安装过程非常简单, 两行命令即可, 最好能把kerl添加到PATH环境变量中. 下载 {代码...} 修改执行权限 {代码...} 使用 显示所有的发布版本 {代码...} 构建...

Riak: 在OSX上快速搭建Riak开发集群

2016-04-07
阅读 2 分钟
5.3k
首先从Github上克隆riak-dev-cluster工具, 该工具创建的只是一个测试集群, 主要用于在开发中进行测试, 不建议在产品环境中使用.

Elixir 分布式 Application 故障转移和接管

2015-11-02
阅读 3 分钟
5.1k
Elixir 可以运行在主/从, 故障转移/接管模式下. 要使Elixir应用程序能够执行故障转移/接管, Elixir应用程序必须是一个OTP应用程序.