2010-08-27 37 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