2010-08-27 38 views
0

我一直在考慮使用AIR,但是如果沒有能力輕鬆連接到Oracle,它不太可能會用到它。我需要一種將簡單警報推送給企業系統用戶的方法。目前他們希望在瀏覽器窗口中顯示一些內容,但我認爲這不是最好的選擇,而且看起來很糟糕。 AIR透明浮動窗口看起來很棒。對於XP電腦桌面小工具的任何建議連接到OracleDB?

無論如何...有什麼建議做什麼?

回答

0

推或拉?

如果是拉,我會讓數據庫通過web服務生成一個簡單的RSS feed。 10g或更高版本有一個內置的網絡服務器(XDB協議服務器),可以發佈這個。然後你把整個客戶的東西留給他們。

如果真的需要推動,那麼我必須考慮UTL_HTTP,儘管任何推送技術都需要在PC上打開和偵聽端口。你會讓最終用戶的機器成爲某種看起來很危險的'服務器/網絡服務器'。

您也可以從數據庫發送電子郵件,也有一些爲Oracle創建了Twitter發佈者的人,儘管這兩者在技術上都會牽扯到客戶端。

+0

這可能是拉我猜。 AIR應用程序將位於客戶端計算機上。那麼我可以更新Feed?那是你在說什麼?感謝評論! – jasonflaherty 2010-08-27 16:44:48

+0

取決於你需要更新的速度 - 如果幾秒/分鐘的延遲是可以接受的,並且你想把相同的信息推送到很多機器上,那麼RSS將是一個好方法(因爲鏈已經存在) - 但它不太適合實時信息(例如,如果你的客戶將不斷地輪詢飼料的變化)。 – JulesLt 2010-08-31 06:48:00

+0

這將是一個每週的事情,所以RSS飼料將是我認爲最好的想法。只顯示最近的項目會很容易。你認爲有什麼問題有29k電腦拉動飼料?服務器問題是?再次感謝。 – jasonflaherty 2010-09-02 03:18:30

0

幾個想法 - 看看Growl For Windows - 它是一個通知系統,啓動OS X,具有已發佈的協議(GNTP)。

好的是,客戶端很容易改變客戶端通知的形式。

例子:

http://www.growlforwindows.com/gfw/displays.aspx

甚至還有一個Flash/AIR庫,如果是 '原生' 安裝就不會被允許。

同樣,藉助Growl,您可以插入SMS,IM系統,Twitter以及他們下週發明的任何其他內容,並將插件訂閱到類似系統。

我認爲這種方法的優點是它可以減少開發工作,只需編寫一個應用程序,在一側查看數據庫,並將通知從另一側推出。

如果您想從數據庫一路「推」,那麼您還應該查看Oracle AQ(消息被觸發器觸發,如果您沒有直接訪問修改數據庫的代碼)。

考慮到AQ和Java Growl庫有一個JMS接口,所以我覺得這將是'最少工作'選項 - 服務器應用程序將訂閱JMS通道並轉發每個接收的內容消息作爲咆哮消息。 或者,您可以通過使用其他語言的PL/SQL函數與AQ進行接口。

另一種方法是類似的,但不是使用Growl/GNTP,使用更廣泛接受的消息傳遞標準 - 我們編寫了基於Flash的應用程序,需要使用AMQP作爲協議從服務器「推送」消息,以及RabbitMQ作爲消息傳遞服務器。

這種方法的缺點是您還必須編寫客戶端。

無論哪種方式 - 你想要的是一個位於你的客戶端和d/b之間的服務器,並將「事件」轉換爲易於使用的消息傳遞協議。

+0

謝謝!我會考慮咆哮。你是否在防火牆內的企業領域使用過它?那裏有任何問題? – jasonflaherty 2010-08-27 16:46:55

+0

我沒有 - 並且從站點不清楚需要哪些防火牆更改來支持它,但我會推定一些東西。我還記得有人編寫了一個直接從Flash工作的Oracle數據庫驅動程序,但找不到證據(從安全的角度來看,這聽起來像是一種硬性銷售 - 從瀏覽器直接向數據庫直接...) – JulesLt 2010-08-31 06:44:51