资源使用自定义代码、Kubernetes、Service Fabric 的经验法则

Rule of thumb for resource usage custom code, Kubernetes, Service Fabric

我有代码可以从队列中获取消息并且可以正常工作。这项工作主要是 I/O 绑定的。我需要能够扩展工人的数量。

我可以编写一个应用程序来管理线程或使用 TPL 来扩展和管理工作线程。这行得通,但加班已被证明在许多方面都是一种糟糕的方法。

比较这 3 个选项是否可以根据相同数量的工人消耗多少资源来对它们进行排名?

1) 编写一个简单的应用程序和 运行 许多实例。

2) 在 Service Fabric 中部署简单应用程序并对其进行扩展。

3) 使用 Kubernetes 执行类似于 2) 的操作。

其他人使用这种方法吗?

我知道还有其他因素,但我专注于资源使用比较。

有很多方法,其中大部分已经在类似的 Whosebug 问题上得到解答。

其中的每一个都会有优点和缺点需要考虑,只有对您的解决方案进行深入分析才能选择正确的解决方案。我可以推荐的是对每种方法进行概念验证,并检查哪种方法适合您的应用程序。

我建议你先看看这些:

Simulate 10,000 Azure IoT Hub Device connections from Azure Service Fabric cluster

What is the scenario for deploying multiple applications in service fabric?

并在 this github issue 上讨论了一些要点。