gpt4 book ai didi

python - Flask/Django 服务器和 Bokeh 服务器

转载 作者:太空狗 更新时间:2023-10-30 00:54:06 24 4
gpt4 key购买 nike

我想用 Python 3.x 实现一个基于 Web 的动态仪表板(就像 R 的 Shiny)

根据我在 YouTube 上阅读和看到的内容,Bokeh 似乎很有前途。

不清楚的是我何时何地需要 Bokeh 服务器和 Flask/Django 服务器?他们会互补吗?或者我可以在任何一个上工作?他们会提供相同的服务吗?

最佳答案

Bokeh 服务器基于 Tornado它本身就是一个功能强大的 Python Web 框架和异步网络库。根据您的需要,可以简单地编写一个 Bokeh 应用程序,让它以您想要的方式显示您想要的一切。 Bokeh 公开了一些通过 Jinja2 模板自定义应用程序外观的功能。您可以在 Gapminder Demo 中看到这方面的示例在 http://demo.bokeh.org .

但是,您可能有更复杂的需求,尤其是在身份验证和访问方面,或者您需要将现有站点集成到其中。在这种情况下,您可能正在考虑将 Bokeh 应用程序嵌入到另一个页面中,该页面可能由 Flask、Django、IIS 或其他任何服务提供。有两种基本方法可以做到这一点:

  • 使用 server_document 生成 <script>您可以将其模板化到您的页面中的标记,这会将来自 Bokeh 服务器的应用程序嵌入到页面中
  • 使用<iframe>将来自 Bokeh 服务器的 URL 嵌入到页面中

这些都可以正常工作。根据部署环境的复杂程度,可能需要做更多的“devops-y”类型的事情来使用代理后面的 Bokeh 服务器或负载平衡器等。Running a Bokeh ServerUser's Guide为需要深入了解这些细节的任何人提供更多信息。

如果您要将来自 Bokeh 服务器的应用程序嵌入到另一个网页中,则 Bokeh 服务器确实需要启动并运行才能为该应用程序提供服务!如何实现这一点是一个单独的问题,您可以通过几种方式实现:

  • 作为外部进程启动,并使用类似 supervisord 的方式进行管理.您可以在 https://github.com/bokeh/demo.bokeh.org 查看完整的示例部署

  • 通过启动您自己的 Tornado,在您的 Flask/Django/任何应用“内部”嵌入一个 Bokeh 服务器 IOLoop .您可以在 examples/howto/server_embed 中看到此技术的一个示例.另外,这可能应该被认为是童话般的高级用法。

关于python - Flask/Django 服务器和 Bokeh 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41237529/

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