标签: distributed

可靠(耐用)的分布式日志引擎

试图找到分布式系统的商业日志框架.此框架必须允许远程服务器上的.NET应用程序记录消息,然后可以在中央位置收集消息.如果可能,中央位置应将消息存储在SQL Server数据库中.

要求:

  1. 能够启动远程服务器上的消息记录,即使网络中断阻止立即将消息分派到中央位置.
  2. 将消息分派到中央位置应由运行.NET应用程序的进程以外的进程处理,以防止ASP.NET应用程序或Web服务的性能下降.
  3. 确保最终将消息传递到中心位置.例如,如果远程服务器在网络没有响应的时间段结束时重新启动,则在恢复远程服务器和正常网络条件时仍应传送已记录的消息.

.net logging distributed reliability unreliable-connection

5
推荐指数
1
解决办法
1580
查看次数

分布式缓存技术

我对满足以下要求的开源消息传递和/或分布式缓存技术感兴趣.

  • 多个负载均衡的Java Web应用程序实例(可能在Amazon EC2上)
    • 随着时间的推移,实例的数量可能会随着缩放而变化.
  • 当请求带有id FOO时,事件会在内存中缓存一段时间.
    • 缓存事件的持续时间在请求有效负载中指定,并在请求之间变化.
    • 持续时间相对较小(大约几分钟).
    • 不需要持久性.在罕见的情况下,发生了戏剧性的事情并且服务器必须重新启动,它可以忘记过去的事件.
  • 有关请求的信息需要传播到所有服务器实例
    • 信息的传播不得显着影响服务器的性能,尤其是响应延迟.它应该与请求处理异步.但是,它应该相当快并且可以扩展到大量请求.
    • 不同的服务器实例可以不同步.即,可接受的是,在一段短时间内(大约几秒),服务器实例2不知道FOO在服务器实例1上发生,直到该信息传播到它.

任何想法,将不胜感激.如果任何解决方案需要特定的配置/定制以满足要求,请提及我需要做的事情.

编辑我并不是说暗示当前的答案是不相关的,但我的问题并不明确.请不要只指向阳光下的每个MQ和JSR-107库.只有您有理由相信我的要求.

java performance distributed caching distributed-caching

5
推荐指数
1
解决办法
1803
查看次数

是否存在开源分布式日志库?

我在谈论一个允许我从不同机器记录事件的库,并将这些事件在"全局"时间轴上以足够高的精度对齐.

实际上,我问,因为我自己在集群计算项目中编写了这样的东西,我发现它非常有用,我很惊讶我找不到任何类似物.

因此,重点是这样的事情是否存在(我更好地为此做出贡献)或者什么都不存在(我最好写一个我的解决方案的开源模拟).

以下是我希望从这样的库中获得的功能:

  • 独立于不同机器之间的时钟偏移
  • 定时精度至少为几毫秒,最好是几微秒
  • 可扩展到数千个并发日志记录进程,每秒至少有几兆字节的聚合日志
  • 软实时操作(我不想从200台机器上收集200个大型日志,然后计算时钟偏移并合并它们 - 我想看看"现场"会发生什么,可能会有10秒的小延迟)

language-agnostic logging monitoring distributed cluster-computing

5
推荐指数
1
解决办法
1468
查看次数

我需要有关分布式媒体存储数据存储的建议

我想开发一个多媒体系统,系统需要保存数百万个视频和图像,所以我想选择一个分布式存储子系统.谁能给我一些建议?谢谢!

distributed hbase couchdb mongodb couchbase

5
推荐指数
1
解决办法
1159
查看次数

分布式领域驱动设计资源

我对开发DDD应用程序非常有信心,但是一个继续引起我问题的领域是两个应用程序相互集成.我正在努力寻找关于这个主题的任何有用的书籍或资源.像EAI模式这样的书籍深入探讨了消息传递模式和消息构建,但并没有真正解释如何构建利用这些模式的系统.

我搜索过高和低,我很确定没有示例应用程序可以说明如何集成两个系统.我理解异步消息传递的概念,但再次找不到如何应用它的好例子.

SOA上的资源似乎不重复相同的概念,而没有演示如何实现它们,而且往往更关心的是销售我的产品.

以下是我正在努力回答的问题:

  1. 每个应用程序是否应该拥有自己的数据副本?例如,组织中的每个应用程序是否都有自己的客户端列表,并在收到消息后更新?

  2. 在DDD堆栈中的什么时候传递消息?它们是域事件的结果吗?

  3. 我可以组合异步消息传递和WCF,还是我必须选择?我是否将WCF用于发布/订阅的请求/响应和消息传递?

  4. 一个DDD应用程序如何使用另一个应用程序的服务?一个DDD应用程序是应该通过其应用程序服务查询另一个系统的数据,还是应该已经拥有自己的数据本地副本,如第1点所述?

  5. 显然我不能跨两个系统进行交易.我该如何避免这种情况?

如果我听起来很困惑,那是因为我.我不是在寻找上述问题的答案,只是指出将回答这个和类似问题的资源方向.

messaging soa distributed domain-driven-design dddd

5
推荐指数
1
解决办法
1905
查看次数

如何将Redis用作分布式键值存储

我的要求 -

  1. 分布式应用程序坐在不同的机器上进行set/get操作
  2. 能够添加服务器并重新平衡某些数据区域.[AKA - 一致哈希]

问题 - 通过REDIS客户端查看实现一致性哈希的方法 - JEDIS等.它们似乎将shardinfo的密钥存储在内存中,因此不确定啊[1]会起作用.

distributed key redis

5
推荐指数
1
解决办法
5898
查看次数

如何使用net.tcp绑定保护WCF通信

如何使用两个C#应用程序之间的net.tcp绑定来保护WCF通信?我遇到了传输和消息安全问题,但有没有我可以实现的解决方案使用其中一个?

.net security wcf distributed net.tcp

5
推荐指数
1
解决办法
3605
查看次数

PHP中无状态Web应用程序中的持久性多节点事件

我正在构建一个将在多个节点上运行的OO PHP应用程序,并且本质上将是相对无状态的,我需要实现正确的发布者 - 订阅者(http://en.wikipedia.org/wiki/Observer_pattern/http:// sourcemaking.com/design_patterns/Observer/php)样式事件.

我的问题是,我该如何处理事件?

在我的应用程序中,我们使用的是Cassandra,Redis,Mongo和RabbitMQ等技术.

我知道PHP有一个事件EXTENSION可用,但从我可以告诉它坚持状态 - 或者如果利用memcached之类的东西它可以在该节点内使用...但我的应用程序将分布在多个节点上.

因此,让我们看一个示例:在节点1上,更新度量标准(度量标准ID 37),并且需要更新订阅该度量标准的任何内容.这会在更新时发布更改和更改.

我有一些订阅更新的度量标准ID 37,例如度量标准38,可能需要在度量标准37的值更改时重新计算.

度量标准38当前已实例化并在进程ID 1011中的节点2上使用...度量标准37如何告知节点2上的度量标准38(在这种情况下为进程ID 1011)以运行预订函数?

Metric 39订阅Metric 38正在更新,但未在任何地方实例化...当Metric 38完成更新时,Metric 39如何更新?

我正在考虑使用RabbitMQ作为我的事件队列管理器,并且在每个节点上都有一个守护进程样式的"事件使用者"应用程序,它读取事件队列中的事件(为了负载平衡/分配工作).

然后消费者看到"Metric:38:Updated"它会检查像Redis那样订阅"Metric:38:Updated"的内容并获取值("What:Function:Values")并执行类似call_user_func_array(array($ what)的操作,$函数),$值); ....但这似乎可能会导致开销和一定程度的同步问题...

我正在使用Doctrine MongoDB ODM来保存我的对象...为了处理同步问题我想到了这样的事情:对象可能有版本号...(版本= 1.0)并且redis可用于维护快速参考到对象的最新版本(ObjectVersion:ObjectType:ObjectId)= 1.1当在标记为@critical的对象属性(像isDeleted,货币余额等)上调用getter时,它可以检查实例的版本ID是否为等于redis中的版本#,如果需要,则从mongo更新其值...

另一种设置是使用amphp/amp(http://amphp.org/docs/amp/reactor-concepts.html)和某种形式的RPC来同步节点

因为我对网络开发(从c#转移)和无状态,并且分发...相当新.我认为向社区询问是否有人有更好的建议是个好主意?

php events distributed rabbitmq

5
推荐指数
1
解决办法
471
查看次数

Hadoop的分布式替代品

我有一个奇怪的问题。

什么是hadoop的一些分布式和可扩展的替代方案。我正在寻找像HDFS这样的分布式文件系统,该系统可以用作廉价而有效的存储,并希望在其之上具有数据处理引擎(批处理/实时)。我知道Spark可以是一个很好的选择。但是我想将此系统用作分布式,容错和可扩展的文件存档。是否有合适的解决方案?欢迎提出建议。谢谢 :)

storage distributed hadoop distributed-system hdfs

5
推荐指数
1
解决办法
4050
查看次数

OTP主管可以监视远程节点上的进程吗?

我想在我正在构建的分布式应用程序中使用erlang的OTP主管。但是我很难弄清这种主管如何监视远程节点上运行的进程。与erlang的start_link函数不同,start_child没有用于指定将在其上生成子节点的Node的参数。

OTP主管可以监视远程孩子吗?如果没有,我如何用erlang实现呢?

erlang distributed erlang-otp erlang-supervisor

5
推荐指数
1
解决办法
663
查看次数