2010-02-14 76 views
3

對模板高速緩存使用SQLite存儲 的好處是讀取 的速度更快,並且在緩存元素的數量 很重要時可以執行寫入操作。SQLite爲什麼適合模板緩存?

我從來沒有使用過它,但如何通過比普通文件系統更快地使用SQLite?

IMO的開銷(啓動連接)會使它變慢。

順便說一句,有人可以提供演示如何使用SQLite?

回答

3

「啓動連接」沒有真正的概念:SQLite數據庫作爲單個文件存儲在本地文件系統中;所以沒有什麼像網絡連接。

我認爲使用SQLite數據庫的速度可能會很快,因爲只有一個文件(數據庫),而不是每個模板一個文件 - 每個對文件的訪問都會花費一些資源;操作系統可能能夠更有效地緩存對一個大文件的訪問,以訪問多個不同的小文件。


大約「演示如何使用SQLite」,它種取決於你將要使用的語言,但你可以通過看看SQLite documentation開始,並在你的可用的API編程語言;訪問一個SQLite數據庫並不難:基本上,你必須:

  • 「連接」 到DB - 即打開文件
  • 發出一些SQL查詢
  • 關閉連接

這與其他任何數據庫引擎沒有多大區別:最大的區別在於無需設置任何數據庫服務器。

+0

我正在使用PHP語言。如何可以有**沒有**數據庫服務器? – user198729 2010-02-14 15:46:39

+0

請參閱本頁的第二部分*(「無服務器」)*:http://www.sqlite.org/different.html – 2010-02-14 18:32:51

1

SQLite比標準文件系統的好處在於它的緩存機制。 SQLite將數據存儲在頁面中並將頁面緩存到內存中。重複調用已存在於內存中的頁面上的數據將跳過對文件系統的調用。

雖然使用SQLite有一些開銷。當您連接到SQLite數據庫時,引擎將讀取並分析模式。在我們的系統中,這需要30ms(儘管對於較小的模式通常少於1ms--我們剛剛少於100個表格和數百個觸發器和索引)。