问题标签 [distributed-computing]

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.

0 投票
3 回答
743 浏览

c++ - 分布式算法编程的帮助库?

当您编写分布式算法时,您是否使用任何库来对处理器、寄存器、消息、链接等抽象事物进行建模?有没有这样做的图书馆?

我正在考虑例如自稳定算法,例如自稳定最小生成树算法。

0 投票
5 回答
938 浏览

c++ - 如何在不可靠的集群上分发程序?

我正在寻找的是以下任何/所有内容:

  • 工人故障的自动发现(例如计算机关闭)
  • 检测给定IP地址范围内所有正在运行的(linux)PC(计算机开启)
  • ...和汽车工人产卵(ping + ssh?)
  • 负载平衡,以便工作人员不会减慢其他进程(很好?)
  • 某种形式的消息传递

...并且不想重新发明轮子。

C++ 库、bash 脚本、独立程序……都欢迎。

如果您举一个软件示例,请告诉我们它具有上述哪些功能。

0 投票
1 回答
169 浏览

architecture - EagerReadDerivation:平衡收益与成本

我正在为即将开发的 Silverlight 应用程序研究领域驱动设计和分布式 DDD。EagerReadDerivation 模式似乎会提高应用程序的可伸缩性,但代价是增加了复杂性。

该应用程序可能有成千上万的用户上传需要由多个服务处理的大型文本文件(超过 100,000 行)。我们还需要支持“假设”场景(例如 ParallelModel)。我相信模型驱动的方法将帮助我们管理复杂性,所以我想尽可能地将逻辑排除在数据库之外。

我的问题是针对尝试过 EagerReadDerivation 模式的开发人员:它是否为您带来了回报,是否值得在您的应用程序中增加额外的复杂性?

0 投票
4 回答
2604 浏览

c++ - 关于 C++ / 分布式系统 / 网络项目的建议

我想从事一个 2-3 个月的项目(全职),该项目涉及 C++ 编码并与网络(协议堆栈)相关。我正在考虑编写自己的网络堆栈,但这似乎并不有趣。如果能找到一个想法来为分布式系统/GPU 实现类似 tcp/ip 的堆栈,就网络性能而言,它会更好。我已经在谷歌上搜索了 3 个小时,但没有遇到任何值得花费 2 个月的东西。像 netperf 这样的开源项目似乎超出了我的范围。我真的很想要一个相对较小的独立项目,我可以按照自己的节奏进行工作。这个项目的目的是利用我的空闲时间在一个项目上(我以后可能会在开源许可下发布)并获得 C++、网络、并行编程、GPU 方面的专业知识和实践经验,

我似乎在寻找想法时遇到了障碍(或者我可能不太清楚我到底要做什么)。所以任何建议都会非常感激。谢谢!

0 投票
1 回答
222 浏览

concurrency - 对并发和分布式应用程序进行编程的良好硬件设置是什么?

我没有钱构建自己的超级刀片系统,但我想进入并发和分布式编程(想想 CCR/DSS、Hadoop、伏地魔等)。

我目前有一个 4GB 的 Q6600 和一些单独的硬盘,但仅此而已。虽然我可以编写多线程程序,但我无法正确测试分布式文件系统/键值存储并寻找相关的瓶颈(磁盘访问、网络等)。

有没有人有一些建议?购买一些便宜的小盒子并建立一个迷你网络?或者可能是一个带有两个 i7 和 ESX 以及一个模拟网络的盒子?

编辑:

我目前正在使用 VirtualBox 和 VmWare,这对我来说看起来不够好,如果我错了,请纠正我:例如,硬盘驱动器可能会锁定,或者因为两个虚拟机在它们上面运行,或者因为所有硬盘驱动器访问都是通过相同的硬盘控制器引导。网络是完全虚拟的,所以这里也没有真实的案例测试。

如果我走虚拟化路线,你会推荐什么让我尽可能接近“现实生活”?

0 投票
8 回答
21621 浏览

java - 集群共享缓存

我正在寻找一个允许我在多个 JVM 之间共享缓存的 java 框架。

我需要的是像Hazelcast但没有“分布式”部分的东西。我希望能够在缓存中添加一个项目并将其自动同步到其他“组成员”缓存。如果可能的话,我希望通过可靠的多播(或类似的东西)同步缓存。

我看过Shoal,但遗憾的是“分布式状态缓存”似乎不足以满足我的需求。

我看过JBoss Cache但对于我需要做的事情来说似乎有点矫枉过正。

我看过JGroups,这似乎是我需要做的最有前途的工具。有没有人有 JGroups 的经验?最好将它用作共享缓存?

还有其他建议吗?

谢谢 !

编辑:我们正在开始测试以帮助我们在 Hazelcast 和 Infinispan 之间做出决定,我很快就会接受答案。

编辑:由于突然的需求变化,我们不再需要分布式地图。我们将使用 JGroups 作为低级信号框架。谢谢大家的帮助。

0 投票
4 回答
6789 浏览

c++ - C++ 分布式编程

是否有任何用于分布式内存缓存、分布式任务、发布/订阅消息传递的库?我在 Java 中使用过 Hazelcast,我想要类似的东西。

我知道 Memcached 是一个内存缓存,甚至是分布式的,但它缺少消息传递和远程任务。

我只需要一些东西来协调服务器集群,而不使用传统的 RPC 和套接字编程。

0 投票
4 回答
2369 浏览

c# - 了解有关分布式计算的更多信息

我有兴趣了解更多关于分布式计算的知识以及如何去做——主要是在 C++ 中,但我也对 C# 感兴趣。

有人可以推荐一些资源吗?我对这个话题知之甚少,所以我应该从哪里开始?

谢谢。

0 投票
3 回答
6718 浏览

java - 大型集群上的 Ehcache 性能

我想使用 Ehcache 复制缓存,首先作为 Hibernate 二级缓存的后端,其次作为任何数据的缓存。

我知道像 memcached 这样的分布式缓存是如何工作的,并且我知道它可以扩展到大型集群,但是我找不到 Ehcache 复制在大型集群上的行为方式。

  • 有人指向某些信息或某种基准吗?

我发现可以使用许多复制策略,例如 RMI、JGroups、JMS 或 Terracotta,而 RMI 和 Terracotta 似乎是最受欢迎的。

  • 它们如何在大型集群上进行比较?

当我添加许多节点(比如几十个)时,复制会扼杀我的表现吗?

0 投票
1 回答
1705 浏览

c# - .net 分布式网格计算迁移,关于库、架构的建议

我有一个c# 多线程蒙特卡罗模拟,应用程序已经结构化,可以将其划分为独立执行的任务,任务控制器执行任务,聚合中间结果,检查收敛(早期终止标准)然后返回最终结果,目前这是使用 ThreadPool 实现的。

我想利用不止一台计算机来帮助计算。我没有使用 IIS 的批准或基础设施(这是不会改变的策略),但我可以使用例如WCF 和 NetTcpBinding端点绑定,我已经测试了这种跨服务器的通信,它具有适当的权限和工作。

首先,我想在其他服务器上有一个主 exe(控制台应用程序)和几个从属服务器作为专用工作人员(这些应该是 exes 吗?还是 windows 服务?),最终我可以让这个设置在数百个工作站上运行(以及作为服务器)在公司空闲时间(或屏幕保护程序处于活动状态时)。

我可以自己写这个,但我必须处理通信,1、2 路?提前终止(中间收敛结果检查)、取消不再需要的任务、部署工作、发现用于部署工作的可用和就绪机器、如果工作站不再空闲则限制/暂停工作?分布式系统中的所有其他内容?

主人(任务控制器)应该知道所有奴隶工人的地址(ip)并告诉他们工作(如果它们可用的话),还是奴隶工人应该只知道主人地址并在他们有能力时请求工作这样做,还是沟通应该双向流动?这将按24 小时制运行,每天启动约 9 次运行,以支持不同的业务区域。

我正在寻找可以提供帮助的.net 网格/分布式库的建议以及一些架构建议。

更新

有没有人使用以下任何一种体验?

或使用来自 .net 的 JavaSpaces、Jini 或找到等效的 .net 技术

谢谢