gpt4 book ai didi

java - 快速简便的服务器端缓存?

转载 作者:行者123 更新时间:2023-11-30 11:28:09 28 4
gpt4 key购买 nike

此设置是否可以用作服务器端缓存?这些值会保留在内存中而不被 GC 处理吗?

Servlet 在应用服务器启动时创建,并且是应用程序中唯一的 Servlet。因此,如果 Servlet 停止,应用程序将关闭。该应用程序只会在一个 JVM 上运行。

public class HtmlServlet extends HttpServlet
{
private ConcurrentHashMap<String, Object> cache;

public void init() throws ServletException
{
cache = Cache.init();
}

}

public class Cache
{

private static ConcurrentHashMap<String, Object> cache;

public synchronized static ConcurrentHashMap<String, Object> init()
{
if (cache == null)
{
cache = new ConcurrentHashMap<String, Object>();
}
return cache;
}

public static void set(String s, Object o) { ... }
public static Object get(String s) { ... }
public static void remove(String s) { .. }
}

最佳答案

这看起来没有任何明显的缺陷。除了缓存可能会填满和崩溃的事实,因为没有任何东西可以自动删除旧条目。

如果您在使用缓存时不小心,您可能会引入一个微妙的内存泄漏,它可能会不断填满。

关于java - 快速简便的服务器端缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19004483/

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