2008-10-25 101 views

回答

1

好了,我們是完全是由明年的某個時候瞄準生產項目中使用Prevayler,但我們不會關閉足以給任何真正的球探報告。我們認爲它會起作用...

+0

格倫,你能回答我關於Prevayler的問題嗎? http://stackoverflow.com/questions/454294/what-are-synchronizing-strategies-for-prevayler – Sergey 2009-01-18 10:03:23

1

「LMAX是一個新的零售金融交易平臺,因此它必須以低延遲處理許多交易,該系統建立在JVM平臺上,業務邏輯處理器可以在單線程上每秒處理600萬個訂單,業務邏輯處理器通過事件採購完全運行在內存中。「

http://martinfowler.com/articles/lmax.html

2

我曾經使用Prevayler工作的約五六年以計算機爲基礎會考/評估系統的一部分的公司。

Prevayler用於將物理位置在單個測試中心內的服務器上的候選人測試狀態存儲起來。存儲的數據量相當低,因爲最多隻有幾百名候選人在單一測試中心進行測試。因此,2004年在商用硬件上運行Prevayler是可行的 - 「服務器」在大多數情況下只是爲了進行考試而臨時借用的典型低端臺式機。

這個想法是,如果考生的計算機在他們參加考試時發生故障,那麼他們可以在相同或不同的計算機上快速恢復測試。它工作得很好。

當某些新需求導致對象模型發生變化時,偶爾會遇到困難,因爲默認情況下,Prevayler將對象模型與磁盤上的數據表示關聯。這實際上並不是我們的主要問題,因爲對象模型的變化發生在考試之間,在這一點上我們通常可以拋棄舊數據(由於我們的設計不好,除了一些例外)。

有很多事情可以改變對象模型,這對您的應用程序來說是最好的。拋棄舊數據通常是我們最好的解決方案。

還有一個後端系統,它將來自所有測試中心的候選人測試彙總到一個SQL數據庫中。這存儲了比Prevayler當時可以合理處理的數據量更大的數據。今天在那裏使用Prevayler可能是可行的,但我不認爲這些使用模式特別適合Prevayler,因爲大多數數據傾向於寫入,讀取一次用於標記,然後被遺忘並被視爲存檔數據除非測試的結果被查詢。

該公司已經開始從Prevayler搬走,但其原因比技術更具政治性。