2013-09-26 56 views
0

我有多个配置文件,我需要从磁盘读取并应用于许多记录。 我需要改善这一点以提高性能。建议使用Redis或Memcached作为FILES的缓存吗?

我有两个过程。

处理1:更新配置:

  • 这将更新内容配置文件。
  • 这可以从多个位置运行。

进程2:应用配置:

  • 它使用的配置文件的内容。
  • 这可以从多个位置运行。
  • 目前,这是使用直接文件+ n/w IO来读取更新的配置文件。

Both processes are back-end and there is no browser involved here.

我应该使用Redis的或Memcached的用作文件缓存?

请注意,该文件需要从一个公共位置读取。它们正在被另一个后台进程更新。更新可以随时发生。配置文件的大小是1K到10K。

我希望Process2以最快的方式访问更新的配置文件。

回答

0

Redis是一个不错的选择,因为它使用可选的持久性保留了内存中的数据。所以这种方法不必接触硬盘。

我在这里可以看到每个客户需要了解Redis的问题,并且使用一些支持库,例如用Java或任何你使用的语言。

为什么不使用http本身,例如部署一些http文件服务器。您还可以提供版本检查+缓存,以便客户端可以在服务器上存储文件版本,并在服务器具有相同文件并使用相同文件下载内容时使用客户端缓存内容。这就是所谓的HEAD,看看

你应该使用与web本身相同的方法。每个浏览器都会下载内容,html,css,图像等。对您而言,最佳的改进是客户端缓存,例如css或图像存储在浏览器缓存中,并只下载第一种类型或更改时间。

如果你不想要,你不能使用完全REST方法本身。

+0

我想澄清,这里没有浏览器。两个进程都是后端。 –

+0

当然,但如何分配数据的方法可以是相同的。我想展示类似方法的原理,包括浏览器和服务器。这是一样的。 –