分布式系统拓扑

发布于 2024-11-26 02:33:33 字数 845 浏览 4 评论 0原文

尝试将电子投票系统作为一个大学项目实施,刚刚迈出了实现我的目标的最重要的一步<;系统架构>>

多服务器/多客户端,必须真正可靠到大约 8000 万客户端在线,它还必须允许新服务器加入以支持投票过程,其输出将是统计数据和数据。报告,以便它必须允许我随时收集信息,支持加密、散列、摘要确认等。

我的目标只是支持大量客户端而没有中心故障点,然后使客户端找到合适的服务器进行身份验证&投票
合适的服务器取决于 2 个标准:

  • 服务器距离优先级
  • 服务器负载优先级

使用的第一个标准 最初仅在投票过程中使用 两个标准

在搜索我的项目周围的示例后发现 6 个解决方案:

  • 服务器和服务器之间的动态 DNS 服务器客户
  • 端与客户端之间的 Web Farm 负载平衡调度程序服务器
  • 无服务器 p2p 云服务器,客户端作为 p2p 服务器加入,使用 PNRP 获取服务器列表
  • 无服务器/状态服务器 p2p 服务器云,客户端连接到状态服务器以获取服务器列表
  • 从主服务器 DHT 网络向下的服务器树
  • & ;数据库系统

从我的角度来看,最后一个解决方案是合适的,因为没有任何瓶颈故障点,这导致我开始搜索开箱即用的 DHT 库或完整的分布式系统以集成到我的应用程序中,或者只是重新发明轮子&从头开始实施整个事情!

问题:
- 我选择了正确的解决方案吗?
如果是,请指出通往开箱即用的 [.NET] 库或系统的正确路线!
如果否,请指出合适的 [.NET] 解决方案,即使我在我的 6 个解决方案中没有提到它!

问候 ,

Trying to implement an electronic voting system as a college project and just faced the most important step towards my aim < the system architecture >

Multi-Server/Multi-Client , MUST really be reliable to the point of about 80 million clients are online , It also MUST permit new server joining to support the voting process , Its output will be statistics & reports so that it MUST allow me gathering information at any time , Supporting encryption , hashing , digest acks , .. etc

My aim is just to support lots of clients without central point of failure then make client fount the suitable server(s) to authenticate & vote
Suitable server(s) depends on 2 criteria :

  • Server distance priority
  • Server load priority

First criteria used Initially only , Both are used during voting process

After searching samples around my project found 6 solutions :

  • Dynamic DNS server in between servers & clients
  • Web Farm Load Balancing Dispatcher in between clients & servers
  • Serverless p2p cloud of servers , client join as the server of p2p using PNRP to get list of servers
  • Serverless/State-Server p2p cloud of servers , client connects to state server to get list of servers
  • Servers tree down from main server
  • DHT network & database system

From my point of view last solution was the suitable as there isn't any bottle neck point of failure , this leads me start searching an out of box DHT library or full distributed system to be integrated in my application or just reinvent the wheel & implement the whole thing from scratch !!

Questions :
- Did i choose the right solution ?
If YES , Please point me to the right route leads to an out of box [ .NET ] library or system !
If NO , Please point me to the suitable [ .NET ] solution even that I didn't mention it in my 6 solutions !

Regards ,

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

菩提树下叶撕阳。 2024-12-03 02:33:33

NChord 可以帮助您入门,而不必从头开始,并且对于学术项目来说可能已经足够了。

NChord could get you started without having to start from scratch and probably will be good enough for an academic project.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文