As the Oracle docs say,
The Oracle RAC, FAN, Oracle 12c Fast Application Notification (FAN) feature provides a simplified API for accessing FAN events through a callback mechanism. This mechanism enables third-party drivers, connection pools, and containers to subscribe, receive and process FAN events. These APIs are referred to as Oracle RAC FAN APIs.
If we simplify it, FAN[Fast Application Notification] is a mechanism that Oracle RAC uses to notify ONS about service status changes, like UP and DOWN events, Instance state changes etc.
Oracle RAC notifies the cluster about FAN events the minutes any changes have occurred. So the benefit is instead of waiting for the application to check on individual nodes to detect an anomaly , the applications are notified by FAN events and are able to react immediately.
Any changes that occur in a cluster configuration will be notified by Fast Application Notification to ONS.
We can also use server callouts scripts to catch FAN events.
FAN also publishes load balancing advisory (LBA) events. Applications are in a position to take full advantage of the LBA FAN events to facilitate a smooth transition of connections to healthier nodes in a cluster. One can take advantage of FAN is the following ways:
- When using integrated Oracle Client, the applications can use FAN with no programming whatsoever. Oracle 120g JDBC, ODP.NET, and OCI would be considered as the components of the integrated clients.
- Programmatic changes in ONS API make it possible for applications to still subscribe to the FAN events and can execute the event handling actions appropriately.
- We can also use server callouts scripts to catch FAN events at a database level.
In next article, we will learn about Benefits of FAN and supported event types.
Thank you for giving your valuable time to read the above information.
If you want to be updated with all our articles send us the Invitation or Follow us:
Skant Gupta’s LinkedIn: www.linkedin.com/in/skantali/
Joel Perez’s LinkedIn: Joel Perez’s Profile
Anuradha’s LinkedIn: Anuradha’s Profile
LinkedIn Group: Oracle Cloud DBAAS
Facebook Page: OracleHelp