免责声明:这个页面的目的是给一个高级介绍不同方式Gurobi可以部署和许可。它不包含所有许可证类型有其利弊或提供任何商业信息。目标是解释哪些因素是重要的在选择许可类型。确保工作(技术)客户经理了解所有的细节和你的情况作出正确的选择。
概念
在本文档中,我们使用一些重要的概念。
- 模型:一个特定问题的数学描述你想要Gurobi解决。
- API:Gurobi软件的一部分,你与当你编写自己的应用程序代码。你调用API函数来描述一个模型,要求Gurobi解决它和检索的解决方案。
- 引擎:Gurobi的一部分的软件模型,找到最优的解决方案。这部分包含所有的数学优化算法。
体系结构
使用Gurobi,你会工作的引擎和API。主要有三种方式,你可以把这两个部分。注意你的工作方式与API和算法用于解决模式的引擎,所有选项都是相同的。
- 进程内:你的代码使用API定义内存模型。只要你问Gurobi解决模型,发动机运行在同一进程中使用模式的内存中表示。
- 客户机-服务器:你仍然在代码中使用API。并行运行Gurobi计算服务器组件作为一个单独的过程,通常在另一台机器或容器。只要你问解决您的模型,API自动发送它到你的计算服务器主机引擎。一旦解决方案是可用的,它是通过API返回到您的应用程序代码。
- 云:以上选项都完全在您自己的环境中运行(本地或在云环境中由你)。第三种选择是让我们为你管理和运行引擎在我们AWS或Azure环境。应用程序仍然使用API,但只要你想解决模型,它被送到Gurobi即时云。我们确保您选择的机器运行解决模型和解决方案。在引擎盖下,我们使用相同的计算服务器技术。
许可机制
授权的目的是确保Gurobi用于同意通过合同的方式。这包括计算并发用法相同的许可证。我们提供各种机制。
- 基于机器:你的许可证将“锁定”到一个特定的机器一旦激活许可证。它不能被激活或另一台机器上使用。这台机器与许可的机器引擎将运行。
- 令牌服务器:再许可是固定在一个特殊的机器,但是机器将运行Gurobi令牌服务器。发动机可以在任何机器上运行(通常比令牌服务器,另一台计算机上或在一个容器)。当引擎想解决一个模型时,它需要获得一个令牌从牌服务器负责计算并发使用。我们这种方法也叫“浮动使用”,它也适用于容器。
- 网络许可服务:另一个可能性是我们管理云中的许可和令牌。你不需要运行一个令牌服务器。相反,引擎(它仍然运行在您的环境中)将连接到我们的网上服务来检索一个令牌。
即时云,不需要任何上述选项自Gurobi引擎是由我们管理。
如何选择?
时应考虑下列因素讨论许可类型。
- 灵活性:有多少机器/容器将运行应用程序,需要使用Gurobi吗?多久架构改变?
- 安全:你能连接到外部服务即时云或Web许可服务或有政策到位,防止这种情况吗?
- 预期的性能:多快你的终端用户期望的结果吗?他们能等吗?
- 用法:多长时间将Gurobi解决一个模型?平均一天是什么样子?使用预期的峰值是什么?
- 性能:典型的运行时为您的模型是什么?你考虑的参数,可以提高运行时分析日志文件,或与Gurobi团队讨论过这个吗?
- 缩放:你需要能够扩展您的应用程序独立于Gurobi引擎?
- 特点:你需要的功能就像排队、优先级、身份验证/授权,解决异步,仪表盘和REST API ?
正如你所看到的,选择许可类型不仅仅是口味和价格的问题。回答上面的问题应该引导你走向正确的架构和许可类型。Gurobi团队很乐意讨论这些主题和看看你的模型来决定你的最佳选择。
评论
0评论
请登录留下你的评论。