gpt4 book ai didi

c++ - 如何将一大块 native 代码变成可扩展的服务?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:59:05 25 4
gpt4 key购买 nike

您好,我有一大块用 Eiffel 开发的软件。可以从 C++ 使用此代码,但它会加载 Eiffel 运行时,并且我不能相信 Eiffel 代码和运行时是线程安全的,当从 C++ 访问多个线程时

我需要将此 native 代码转换为服务,但我想在高负载的情况下扩展到多个服务器。我不想将缩放方面委托(delegate)给 Eiffel 代码和运行时,因此我正在考虑使用现有的可缩放选项包装此代码。

Apache 网络服务器下是否有任何东西可以让我提供对这段代码的线程安全访问? Eiffel 代码实例池怎么样?我的想法是这样的:

[网络上的大量客户端请求] ---> [一些可扩展的框架] --> [创建 Eiffel 代码的一个或多个实例]

我希望框架能够让我包装昂贵的代码块的多个实例,并且我希望通过添加更多机器来像网络农场一样扩展它。

最好的问候

塞夫

最佳答案

如果您不依赖于 Apache 但任何其他框架就足够了,我建议您查看 ZeroMQ消息传递框架。它的ZMQ_PUSH/ZMQ_PULL modelzmq_tcp运输似乎做你想做的事。

您的设置类似于:一个为外部请求提供服务的“主”进程(使用任何语言/平台,可能是 Apache mod)和一个运行时可配置的 C++ 工作进程,这些进程调用 Eiffel 代码并将结果推回。

关于c++ - 如何将一大块 native 代码变成可扩展的服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5153971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com