2013-09-26 53 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

當然,但如何分配數據的方法可以是相同的。我想展示類似方法的原理,包括瀏覽器和服務器。這是一樣的。 –