我正在编写一个分布式Erlang应用程序,其中几个节点通过有限带宽的网络连接。因此,当不同节点上的进程相互发送消息时,我希望能够最小化通过网络发送的数据包的大小。
我从了解到,Erlang分发机制在内部使用erlang:term_ to _ binary /1,2将Erlang消息转换为通过网络发送的外部二进制格式。现在,term_ to _binary/2支持多个选项,这些选项对于减少二进制文件()的大小很有用,包括压缩选项以及选择具有更有效浮点数编码的次要版本的能力。
我希望能够告诉分发机制在每次通过网络发送消息时都使用这两个选项。换句话说,我希望能够指定分发机制调用term_to_bin
假设我们计划使用GNU Lesser General Public License下的一个开源项目来开发一个基于云的社交网络系统(一个基于web的系统,具有水平可扩展的数据库作为后端)。完成的应用程序将是闭源的。
因此,如果我们使用GNU Lesser General Public License许可的源代码,或者即使我们修改了它,我们是否被允许这样做(即,如果我们完成的产品将是封闭源代码的,我们是否违反了许可证。)
完成的应用程序将是基于商业的-但我们不销售任何打包的产品-例如,我们将通过广告或下载应用程序来盈利。
我需要在内存中拥有数据并跨节点分布,我可以看到Hazelcast和Apache支持JCache和密钥值对。但通过自己的algo分配(如散列)
我的要求是数据(元素)应该按照时间戳( Java数据对象中的一个字段)进行排序,并在堆中作为一个列表(像分布式链接列表)进行分区。
例:假设我们有4个节点。
List 1 on Node 1 -> element(1), element(2), element(3).
List 2 on Node 2 -> element(4), element(5), element(6).
List 3 on Node 3 -> element(
我有一个持续收集数据并将其存储在本地数据库中的设备。我还希望每隔10秒通过网络将该数据复制到另一台计算机,以确保数据的可靠性。我应该使用事务复制来实现这一点吗?如果网络连接暂时不可用,一旦连接恢复,复制服务是否会自动传输所有积压的数据?收集数据的计算机是否可以是SQL Server Compact,或者是否必须至少是工作组版才能成为发布者。第二台PC将运行SQL Server Express,并将成为订阅方。谢谢。