设计模式,用于在地图对象中存储大多数请求的图像

时间:2014-11-12 15:21:53

标签: java tomcat design-patterns

我有一个网站,可以让用户生成图片。然后我提供一个嵌入链接 他们可以粘贴在他们的博客/网站上。该链接包含一个简单的HTML img 调用然后将图像从我的webapp返回到他们的网站的元素。

目前,我正在从文件系统中读取图像并通过它返回 响应输出流。

我的问题是,有更好的更有效的方法吗?我大多想要 将前10个图像保留在内存中以便更快地访问。

我目前有一个单例对象,可以在应用启动期间存储一些数据。我的想法是创建一个Map / List对象,然后将图像字节存储在那里。我的图像具有唯一的名称,因此应该使它更简单。

我想知道我需要存储图像名称,最后一次访问,频繁访问,然后踢出上次访问的图像或访问次数较少的图像。

如果已经有了这样的设计模式,我宁愿不重新发明轮子。任何人都有类似的东西?任何关于实现这一目标的最佳方法的一般概念都会有所帮助。

我使用Tomact 7,Java 7

2 个答案:

答案 0 :(得分:1)

您正在寻找的是一个缓存库。

退房:

答案 1 :(得分:1)

你已经看过Guava-Libraries from Google了吗?你可以在那里找到一个LoadingCache,它可能正是你想要的。查看CachesExplained Wiki page