bokeh.server.tornado#
提供 Bokeh Server Tornado 应用程序。
- class BokehTornado(applications: Mapping[str, Application | ModifyDoc] | Application | ModifyDoc, *, absolute_url: str | None = None, prefix: str | None = None, extra_websocket_origins: Sequence[str] | None = None, extra_patterns: URLRoutes | None = None, secret_key: bytes | None = None, sign_sessions: bool = False, generate_session_ids: bool = True, keep_alive_milliseconds: int = 37000, check_unused_sessions_milliseconds: int = 17000, unused_session_lifetime_milliseconds: int = 15000, stats_log_frequency_milliseconds: int = 15000, mem_log_frequency_milliseconds: int = 0, use_index: bool = True, redirect_root: bool = True, websocket_max_message_size_bytes: int = 20971520, websocket_compression_level: int | None = None, websocket_compression_mem_level: int | None = None, ico_path: str = '/home/runner/miniconda3/envs/bk-release-build/lib/python3.10/site-packages/bokeh/server/views/bokeh.ico', index: str | None = None, auth_provider: AuthProvider = <bokeh.server.auth_provider.NullAuth object>, xsrf_cookies: bool = False, include_headers: list[str] | None = None, include_cookies: list[str] | None = None, exclude_headers: list[str] | None = None, exclude_cookies: list[str] | None = None, session_token_expiration: int = 300, **kwargs: Any)[source]#
用于实现 Bokeh 服务器的 Tornado 应用程序。
- 参数:
applications (dict[str,Application] 或 Application) –
从路径到
Application
实例的映射。如果值是单个 Application,则会生成以下映射
applications = { '/' : applications }
当连接进入给定路径时,关联的 Application 用于为会话生成新文档。
prefix (str, 可选) – 用于所有 Bokeh 服务器路径的 URL 前缀。(默认值:None)
ico_path (str, 可选) – 要为
/favicon.ico
返回的 .ico 文件的路径。extra_websocket_origins (list[str], 可选) –
可以连接到 websocket 的主机列表。
当使用
server_document()
或类似方法将 Bokeh 服务器应用程序嵌入到外部网站时,通常需要这样做。如果为 None,则将假定为
["localhost"]
(默认值:None)extra_patterns (seq[tuple], 可选) –
(str,http 或 websocket 处理程序)元组的列表
使用此参数向 Bokeh 服务器的自定义部署添加其他端点。
如果为 None,则将使用
[]
。(默认值:None)secret_key (str, 可选) –
用于签署会话 ID 的密钥。
默认为环境变量
BOKEH_SECRET_KEY
的当前值sign_sessions (bool, 可选) –
是否对会话 ID 进行加密签名
默认为环境变量
BOKEH_SIGN_SESSIONS
的当前值。如果为True
,则还必须提供secret_key
(通过环境变量设置或作为参数值传递)generate_session_ids (bool, 可选) – 如果未提供会话 ID,是否生成会话 ID(默认值:True)
keep_alive_milliseconds (int, 可选) –
保持活动 ping 之间的时间间隔(毫秒)(默认值:37000)
通常需要 ping 来保持 websocket 打开。设置为 0 以禁用 ping。
check_unused_sessions_milliseconds (int, 可选) – 检查未使用会话之间的时间间隔(毫秒)(默认值:17000)
unused_session_lifetime_milliseconds (int, 可选) – 未使用会话生存时间(毫秒)(默认值:15000)
stats_log_frequency_milliseconds (int, 可选) – 记录统计信息之间的时间间隔(毫秒)(默认值:15000)
mem_log_frequency_milliseconds (int, 可选) –
记录内存信息之间的时间间隔(毫秒)(默认值:0)
启用此功能需要安装可选依赖项
psutil
。use_index (bool, 可选) – 是否在
RootHandler
中生成正在运行的应用程序的索引(默认值:True)index (str, 可选) – 如果 use_index 为 True,则用作 “/” 索引的 Jinja2 模板的路径。如果为 None,则使用基本内置应用程序索引模板。(默认值:None)
redirect_root (bool, 可选) –
当只有一个正在运行的应用程序时,是否将对
"/"
的请求自动重定向到该应用程序(默认值:True)如果配置了多个 Bokeh 应用程序,则此选项无效。
websocket_max_message_size_bytes (int, 可选) – 设置 Tornado
websocket_max_message_size
值。(默认值:20971520)websocket_compression_level (int, 可选) – 设置 Tornado WebSocket
compression_level
,文档请参阅 https://docs.pythonlang.cn/3.7/library/zlib.html#zlib.compressobj。websocket_compression_mem_level (int, 可选) – 设置 Tornado WebSocket 压缩
mem_level
,文档请参阅 https://docs.pythonlang.cn/3.7/library/zlib.html#zlib.compressobj。index – 用于根 URL 的 Jinja2 模板的路径
auth_provider (AuthProvider, 可选) – AuthProvider 实例
include_headers (list, 可选) – 要包含在会话上下文中的请求标头列表(默认情况下,包含所有标头)
exclude_headers (list, 可选) – 要在会话上下文中排除的请求标头列表(默认情况下,包含所有标头)
include_cookies (list, 可选) – 要包含在会话上下文中的 Cookie 列表(默认情况下,包含所有 Cookie)
exclude_cookies (list, 可选) – 要在会话上下文中排除的 Cookie 列表(默认情况下,包含所有 Cookie)
session_token_expiration (int, 可选) – 新会话令牌对于会话创建有效的持续时间(秒)。超过到期时间后,令牌将无法创建新会话(默认值:300)
任何其他关键字参数都将传递给
tornado.web.Application
。- get_session(app_path: str, session_id: ID) ServerSession [source]#
按名称应用程序路径和会话 ID 获取活动会话。
- get_sessions(app_path: str) list[ServerSession] [source]#
获取应用程序的所有当前活动会话。
- 参数:
app_path (str) – 要为其返回会话的应用程序的配置应用程序路径。
- 返回:
list[ServerSession]
- resources(absolute_url: str | bool | None = None) Resources [source]#
提供
Resources
,用于指定 Bokeh 应用程序会话应从何处加载 BokehJS 资源。
- start() None [source]#
启动 Bokeh 服务器应用程序。
启动 Bokeh Server Tornado 应用程序将运行定期回调以进行统计信息记录、清理、ping 等。此外,还将运行配置的 Bokeh 应用程序定义的任何启动挂钩。
- stop(wait: bool = True) None [source]#
停止 Bokeh 服务器应用程序。
- 参数:
wait (bool) – 是否等待有序清理(默认值:True)
- 返回:
None
- property applications: Mapping[str, ApplicationContext]#
配置的应用程序
- property io_loop: IOLoop#
此 Bokeh Server Tornado 应用程序正在其上运行的 Tornado IOLoop。