[ruby-oci8-devel] Support FAN in Ruby-OCI8
shiwei zhang
shiwei.zhang at oracle.com
Fri Apr 11 04:28:24 EDT 2008
Hi, Kubo, ruby-oci8-devel,
I want to implement FAN (Fast Application Notification) functionality
for Ruby-OCI8. Do you have any concerns about this?
When we've supported FAN in Ruby-OCI8, ruby users can still use nearly
the same APIs to talk to Oracle DB. They are able to choose FAN enabled
or disabled when using Ruby-OCI8. For single DB instance it's not
critical to enable FAN, but for multiple DB instances it's much more
beneficial to enable FAN. In PHP, if a user wants to enable FAN he needs
to setup "oci8.events = On" in the file php.ini. Yet in Ruby-OCI8 we
don't have the configuration file like php.ini, so how should we provide
an interface for ruby user to feed in his choice? Add a parameter in
OCI8.new()? Add a configuration method for the class OCI8? Do you have
some suggestions?
FAN Benefits:
FAN is a notification mechanism that Oracle RAC uses to notify other
processes about cluster configuration and service-level information,
including status changes such as UP or DOWN events. FAN UP and DOWN
events can apply to instances, services, and nodes. FAN also publishes
Load Balancing Advisory events.
Without FAN, OCI8 can hang until a TCP timeout occurs and an error is
returned, which might be several minutes. Enabling FAN in OCI8 can allow
your applications to detect errors and re-connect to an available
database instance without the user being aware of an outage.
http://download.oracle.com/docs/cd/B28359_01/rac.111/b28254/rac_glossary.htm#sthref1765
Thanks & Best Regards,
Shiwei
More information about the ruby-oci8-devel
mailing list