在处理货币计算时,您可以根据自己的优势和劣势对Oracle/PL SQL和Java进行比较.如果你要开发一个应用程序,它将处理大量的金钱计算你会使用哪两个?为什么?
这个问题不是引起oracle/pl sql和java爱好者之间的争论我只是想知道什么被认为是这种要求的最佳实践或标准方法以及背后的原因.
场景将是:
提前致谢.
这些标准肯定有利于使用PL/SQL.
1)数据来自数据库(最低Oracle 10g).
2)程序将根据聚合数据(100k-1M)记录计算和生成发票
5)计算中将使用几个参考表
6)程序将每天运行一次
如果它在数据库中并涉及数据,尤其是大量数据,则PL/SQL是默认选项.
其余标准评估起来比较棘手:
3)业务规则非常复杂
4)业务规则可能每月至少更改一次
PL/SQL绝对能够进行计算,并且它具有许多内置的算术功能.因此,它归结为"业务规则"和"复杂"的含义.我们可以在PL/SQL中编写复杂的业务逻辑(我已经完成了),但Java具有语言功能,这无疑使任务更容易:我正在考虑反思和内省之类的东西.
也许您正在考虑使用规则引擎?当然,金融服务业一直是规则引擎的主要用户.并且从处理中抽象出规则集将使得更容易满足第四标准.
Java有两个已建立的Rule Engines,Drools和JESS.还有就是在PL/SQL一个规则引擎,而且已经有一段时间了,但它主要是用来作为Oracle数据流的一部分.但是,API已暴露,因此可用于其他目的. 了解更多.
如果您正在考虑规则引擎,那么我认为这会向Java倾斜.业务规则处理是一种专业的编程范例,Java中的经验和支持比PL/SQL更多.我怀疑这意味着在中间层而不是Java存储过程中使用Java,这对网络流量和性能有影响.
| 归档时间: |
|
| 查看次数: |
1531 次 |
| 最近记录: |