java - 我可以只加载一次大量数据并在每个请求中使用它吗?

标签 java php

有没有办法将大数据对象加载到内存中,通常每个请求都必须加载一次?

在 Java 中,当加载 servlet 时,您可以在 servlet 中实例化一个对象,但是一旦它存在,您就可以在任何请求中使用它。示例如下。这可以用 PHP 完成吗?

public class SampleServlet extends HttpServlet {  
  private static HugeGraphObject hgo;

  public void init() {
    hgo = HugeGraphObjectFactory.get();
  }

  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    String param = request.getParameter("q");
    response.getWriter().write(hgo.getSomeThing(param));
  }
}

最佳答案

您可以将其缓存在 APC 中。像这样的事情,

$hgo = apc_fetch("hgo_v1");

if (!$hgo) {
   $hgo = HugeGraphObjectFactory();
   apc_store("hgo_v1", $hgo);
}

这样,每个服务器实例只需要加载一次对象。

关于java - 我可以只加载一次大量数据并在每个请求中使用它吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3041331/

相关文章:

php - 使用 Jquery Ajax JSON 从数据库发送数据

php - 使用 PHP 爆炸来自 mysql 的数据

java - Spring 启动2.2.2 : Jackson serializer for custom pagination doesn't work

java - lucene中生成倒排索引是否需要保存字段本身

java - 尝试重新绘制 jpanel

java - 使用 Jackson 数据绑定(bind)跳过嵌套字段?

java - 使用 Java 8 Streams API,在调用 Collectors.toSet() 时是否可以依赖 sorted()?

javascript - 如何对另一个文件进行 POST 并将该文件加载到主文件中?

javascript - 如何保存cookies

php - 计算服务器和用户时间之间的差异