.. _user_guide_server_context: ============== Server context ============== **服务器上下文** 该 :class:`ServerContext ` 类驱动了服务器启动时采用的许可逻辑。 服务器上下文由以下信息组成: - ``context_type`` ,一个 :class:`LicensingContextType ` 类对象,用于定义是否允许需要签出许可证的 DPF 功能。 - ``xml_path`` ,设置 DPF 默认操作符功能。 有关详细信息,请参阅 :class:`AvailableServerContexts ` 类和 :ref:`user_guide_xmlfiles` 。 有两种主要的许可上下文类型功能可用: - **Premium:** 默认情况下,DPF 可以执行许可证签出,使获得许可证的 DPF 操作符可用。 - **Entry:** 此上下文中不准许 DPF 执行任何许可证签出,这意味着已授权的 DPF 运算符将失效。 有关每种许可上下文类型的操作符列表,请参阅 :ref:`ref_dpf_operators_reference` 。 The **Premium** operators reference includes licensed DPF operators. The **Entry** operators reference only includes unlicensed DPF operators. Change server context from Entry to Premium ------------------------------------------- **将服务器上下文从 Entry 更改为 Premium** DPF 服务器在 **Entry** 上下文中启动后,可升级到 **Premium** 上下文: .. code-block:: from ansys.dpf import core as dpf # start a server with entry capabilities server = dpf.start_local_server( context=dpf.AvailableServerContexts.entry ) print(server.context) .. rst-class:: sphx-glr-script-out .. code-block:: none Server Context of type LicensingContextType.entry with no xml path .. code-block:: # apply a premium context on the server server.apply_context(dpf.AvailableServerContexts.premium) print(server.context) .. rst-class:: sphx-glr-script-out .. code-block:: none Server Context of type LicensingContextType.premium with no xml path Change the default server context --------------------------------- **更改默认服务器上下文** 服务器的默认上下文是 **Premium** 。您可以使用 ``ANSYS_DPF_SERVER_CONTEXT`` 环境变量更改上下文。 有关详细信息,请参阅 :py:mod:`` 模块。您也可以使用此代码更改服务器上下文: .. code-block:: from ansys.dpf import core as dpf dpf.set_default_server_context(dpf.AvailableServerContexts.entry) print(dpf.server_context.SERVER_CONTEXT) .. rst-class:: sphx-glr-script-out .. code-block:: none Server Context of type LicensingContextType.entry with no xml path .. warning:: 由于启动一个 ``InProcess`` 服务器意味着将 DPF 二进制文件链接到您当前的 Python 进程,您不能启动一个新的 ``InProcess`` 服务器。 因此,如果您的本地 ``InProcess`` 服务器已经是 **Premium** ,您就不能将它设置为 **Entry** 。 ``InProcess`` 是默认的服务器类型,因此应在脚本开始时设置适当的命令,以便作为 **Entry** 运行。 Release history --------------- **Entry** 服务器上下文在服务器版本 6.0(Ansys 2023 R2)及更高版本中可用。 服务器版本早于 6.0 时, **Premium** 是默认服务器上下文,所有 **Premium** :ref:`ref_dpf_operators_reference` 都可用,仅取决于其发布日期。