代码之家  ›  专栏  ›  技术社区  ›  Madhu

可靠的数据服务

  •  1
  • Madhu  · 技术社区  · 17 年前

    如何确保我的文件服务是可靠和可扩展的?它能处理多少个并行请求?

    我的想法超出了硬件能力和带宽。

    我在跟踪 Streaming large files in a java servlet

    2 回复  |  直到 17 年前
        1
  •  3
  •   BalusC    16 年前

    如果这些是静态文件,只需链接到它 直接地 . 所有优秀的servletcontainers/appserver DefaultServlet . 如果这些是静态文件 外部 将它们链接到的webapplication,也可以将这些文件的根文件夹作为另一个上下文添加。目前还不清楚您使用的是哪个服务器,但是如果是tomcat,您可以添加一个新的 <Context> 到 server.xml :

    <Context docBase="/path/to/static/files" path="/files" />
    

    这样就可以通过 http://example.com/files/... .

    如果这些是动态生成的文件或来自数据库的文件,那么您需要开发一个有效执行io任务的servlet:即不要不必要地将整个数据存储在内存中(例如 ByteArrayInputStream 或 byte[] 在将它们发送到输出之前。只需写入字节 立即 当输出进入时。你可能会发现这些例子 basic fileservlet 还有一个 advanced fileservlet (支持简历等)有用的。

        2
  •  0
  •   Gandalf    17 年前

    如果您只是从文件系统中提供静态文件,那么只需使用apache—这将比您自己编写的任何东西都要好。