问题标签 [erlang]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
erlang - Mnesia 数据库的存储容量是多少?
有些地方规定2GB期限。有些地方说这取决于节点的数量。
rest - 通过 REST 访问 Erlang 业务层
对于一个大学项目,我正在考虑在 Erlang 中实现业务层,然后使用 REST 通过多个前端访问它。我想利用分布式应用程序等 OTP 功能。
我的问题是如何将 gen_server 调用/强制转换暴露给其他应用程序?显然,我可以通过特定于语言的“桥”(如 OTP.net 或 JInterface)进行 RPC 调用,但我想要一种一致的方式来访问它,如 REST。
c - 用于解析 Erlang 二进制文件的 C 库?
我有一个 erlang 服务器,它将通过 tcp 套接字与用 C 编写的客户端进行通信。是否有任何 C 库用于将 erlang 二进制术语解析为 C 结构?
我意识到这不是绝对必要的,但它会非常方便。
erlang - 如何在erlang中拆分二进制文件
我想要的是,我认为,相对简单:
任何指针?
erlang - 学习二郎?speedbump 线程,常见,小问题
我只想知道当你刚接触 Erlang 时,你和最终解决方案之间的所有小问题。
例如,这是我遇到的第一个减速带:
- 如果您在多个线程中生成,请使用 control_process(Socket, Pid)。正确的数据包到正确的线程。
- 您要开始与另一台服务器通话吗?记住 net_adm:ping('car@bsd-server')。在外壳中。否则无法进行任何沟通。
- Timer:sleep(10),如果你什么都不想做。调试时总是有用的。
ruby - Erlang 中的 Ruby
是否可以将 Ruby 嵌入到 Erlang 中?Yecc 会是正确的工具吗?如果可能的话,大概需要多少工时?
erlang - Erlang 和运行时记录限制
我正在开发一个 Erlang 系统,并且由于记录是编译时预处理器宏(几乎),并且它们不能在运行时被操纵......基本上,我正在使用属性模式,其中属性在运行时添加到前端 (AS3) 上的对象。理想情况下,我会在 Erlang 端使用一个列表来反映这一点,因为它是一种基本数据类型,但随后无法使用 QCL [查询 ETS 表] 中的记录,因为要使用它们我必须明确说明我使用哪个记录属性想要查询...我在 larges 表中至少有 15 列,因此将它们全部列在一个巨大的 switch 语句(case X of)中简直丑陋。
有谁知道如何优雅地解决这个问题?也许一些内置函数用于创建具有适当签名的元组以用于模式匹配(用于 QLC)?
谢谢
security - Erlang : Disallowed Nodes / Maybe Cookie 问题
试图让两个 erlang 节点相互交谈:一个在 Ubuntu 机器上,一个在 Windows XP 上。
我们收到“来自不允许节点的连接尝试”消息,该消息阻止一个节点接收来自另一个节点的消息。
他们都使用 5.XXX 版本的 Erlang OTP。
两个节点都有相同的 cookie (.erlang.cookie)
我们正在启动接收器节点:
并使用 'fred@ipaddress' 调用函数(单引号)
我们已经关闭了防火墙。
那么还有什么可能阻止连接?
更新:我们使用 erlang:get_cookie() 来检查两个节点上的 cookie,并且值不同。这就是问题所在。我们认为我们通过将相同的 .erlang.cookie 文件放在我们在两台机器上运行 erlang 的目录中来设置 cookie。但也许这是错误的地方?
更新 2:感谢大家的回答。我们选择 Ranok 作为我们的答案,因为它对我们很有效。我敢肯定,一些设置 cookie 的替代方法也可以。
erlang - 如何重命名运行 mnesia 数据库的节点
我在 machine1 上创建了一个 Mnesia 数据库/模式。该节点被命名为 mypl@machine1。然后我将所有文件移动到 machine2,因为 machine1 发生故障。只要代码以“mypl@machine1”的名称运行,一切都运行良好。显然这有点令人困惑,因为它现在在 machine2 上运行。
如果我使用节点名称“mypl@machine2”启动 Erlang,Mnesia 数据库将显示为空。
如何将 Mnesia 数据库中的节点从 machine1 重命名为 machine2?