JavaSpaces技術在那裏有真正的實際用途,它究竟是如何實現的?任何人使用JavaSpaces技術?
回答
我們目前正在使用javaspaces(Sun支架實現)來協調鬆散耦合的進程。它背後的想法很吸引人,而且API非常簡單。實際的實施是一個問題。它建立在Jini上,因此需要5或6個進程來提供空間。而且,至少在Sun的實施中,沒有辦法通過特定的端口進行通信,這使得防火牆有點痛苦。
我們遇到的另一個問題是空間中沒有隱含的排序。因此,如果您放入5個對象,並且您的閱讀/拿取模板匹配全部5個,則不會指定您將獲得哪一個。根據應用,這可能會也可能不是問題。
我相信Orbitz是Jini酒店的預訂系統。
基於Java Posse第#82,#84和#86這是對Vin Simmons的採訪,這項技術有時用於軍事或財務應用,這些應用在安靜的環境中是不幸的。
我在幾年前使用它,但它可能沒有太大的改變。
@Keith:它是(曾經是ATLEAST)可以開始在一個單一的過程/ JVM所有的服務,我認爲這是文檔告訴我們怎樣做到這一點。
相信的Jini/JavaSpaces的是在一些大型的應用程序使用(票務,手機等)在歐洲。也被GE飛機用於研究和分析。
SORCER lab在Texas Tech有一個基於Jini/Javaspaces構建的大型SOA架構,您可以在這裏找到一些幫助。
GigaSpaces是JavaSpaces的一個成熟的版本。它被廣泛用於保持安靜的財務應用。
對於實施它基本上是對的Jini頂部的交易對象數據庫。這些查詢與db4o類似。
我已經看到了它在金融應用中使用,主要用於管理計算工人在那裏條目被寫入到空間,從正面層應用程序(網格樣式),並通過在現場展示的工作相匹配,需要拉出工人。結果可以寫回空間,觸發由前端應用程序註冊的notify
,然後回讀完成的作品。
對於計算工人很不錯,但缺乏排序可能是你的問題(如果只有不可預測的,因爲) - 一些實現具備的功能來執行FIFO排序。它也用於長期數據存儲,因爲它是持久的,但我認爲這不是一個好主意。由於數據量較大,管理工具還不足以使其易於管理和性能受損。
使用Dan Creswell的Blitz JavaSpaces實現 - 它具有很多功能(可以在瞬態或持久模式下運行),設計爲可靠(具有事務日誌記錄功能)並保持高性能,並且非常可調。與其他Jini服務一樣,您可以配置「導出器」讓它監聽特定的端口以使防火牆更容易 - SSL傳輸和完整的PKI也被使用,並且由Jini的通信抽象化而成爲可能。
我認爲Gigaspaces是唯一通過以多種方式擴展規範而不斷創新的實現,這很好看。他們已經使其適合各種各樣的用例,並增加了實施功能,如集羣和高可用性。使用它會讓我擔心,因爲在社區中看到兩個或更多的這些功能的實現,我會更加高興,因爲Gigaspaces是相當專有的。
我現在還沒有意識到JavaSpaces的任何新用法。對於分佈式計算,大多數大型系統都是使用內存數據網格技術或分區的NoSQL類解決方案構建的。 (我看到很多正在使用的Oracle Coherence,但這可能是因爲我使用了它。)
爲了充分披露,我在Oracle工作。本文所表達的意見和觀點屬於我自己的觀點,並不一定反映我的僱主的意見或看法。
- 1. 項目管理+供技術人員和非技術人員使用的SCM?
- 2. 使用人工智能技術
- 3. 使用UI技術的網絡技術
- 4. 如何使用Web技術
- 5. 如何使用Bluemix技術
- 6. AI人臉檢測技術
- 7. JSF Facelets - 非技術人員
- 8. 使用推技術
- 9. Longpoll技術或任何其他方法
- 10. 任何技術重寫URL在asp.net
- 11. 任何人都可以解釋「Khronos技術堆疊」的技術適合在一起的方式嗎?
- 12. 任何使用不尋常技術的經驗?
- 13. 任何使用actionscript 3編碼heat shimmer/haze的技術?
- 14. 任何想法什麼視頻編碼技術YouTube使用?
- 15. 使用JMS技術的SMTP
- 16. mapwow.com使用什麼技術?
- 17. 使用圖像技術
- 18. 如何使用javascript和dom技術
- 19. 如何使用md5技術鹽
- 20. 如何使用的DragDrop技術
- 21. BlockBhain:私人區塊鏈技術
- 22. 學習Java人臉識別技術
- 23. 有沒有辦法讓非技術人員使用BigQuery報告?
- 24. 適用於任何RDBMS技術的通用語言
- 25. Java技術任務停止計時器
- 26. 你如何使用技術來記憶一組術語?
- 27. 是否有任何技術用標誌參數拆分方法?
- 28. 在Windows Identity Foundation中禁用任何加密技術
- 29. 通用技術的使用jQuery AJAX
- 30. 如何運行非技術性啓動的技術部門?