Discussions
Categories
- 17.9K All Categories
- 3.4K Industry Applications
- 3.4K Intelligent Advisor
- 75 Insurance
- 537.6K On-Premises Infrastructure
- 138.7K Analytics Software
- 38.6K Application Development Software
- 6.1K Cloud Platform
- 109.6K Database Software
- 17.6K Enterprise Manager
- 8.8K Hardware
- 71.3K Infrastructure Software
- 105.4K Integration
- 41.6K Security Software
replication: who initiates connection?

We're using replication with active-standby pairs with one (or more) read-only subscribers.
The question is: who initiates the TCP connection, specifically re: read-only subscriber? Does the master poll for the subscriber? Or is it listening for a connection from the subscriber? Or both?
I've looked in docs and the forum and cannot find any mention of this.
Thanks in advance!
Best Answer
-
ChrisJenkins-Oracle Senior Director, In-Memory Technology United KingdomMember Posts: 3,412 Employee
Each database has both transmitter and receiver threads (even if it is a read-only subscriber); the transmitters always initiate the connections. So every database will initiate connections and if this is blocked (e.g. by a firewall) then replication will not function. A good reason to use fixed ports for replication so that you know what port to open in the firewall.
Chris
Answers
-
ChrisJenkins-Oracle Senior Director, In-Memory Technology United KingdomMember Posts: 3,412 Employee
Each database has both transmitter and receiver threads (even if it is a read-only subscriber); the transmitters always initiate the connections. So every database will initiate connections and if this is blocked (e.g. by a firewall) then replication will not function. A good reason to use fixed ports for replication so that you know what port to open in the firewall.
Chris
-
Thanks Chris!
A followup question if I may: the docs say that dynamic port assignment is recommended. Any particular reason for that (other than ease of use)?
-
ChrisJenkins-Oracle Senior Director, In-Memory Technology United KingdomMember Posts: 3,412 Employee
Hmm, that is not our best practice recommendation! Can you please point me to where in the doc it says that so I can get it corrected. Explicit (static) ports (via the STORE clause) are highly recommended for production environments because:
a) They make it much easier if you have to configure things like firewalls
b) They enable much easier upgrades across major release boundaries. Such upgrades are much more difficult if dynamic ports are used.
Chris
-
In the replication guide for version 7 (yes I know...), under "Setting STORE attributes": "While static port assignment is allowed by TimesTen, dynamic port allocation is recommended.".
The replication guide for 11g has the opposite, under "Port Assignments": " Static port assignments are recommended. "