Do not do this manually. You are reinventing Solr features.
For data with infrequent updates, maybe once per day, use a master server and a set of query (slave) servers that replicate the index. The replicas will check for changes on a schedule, maybe once per hour or every 15 minutes.
For frequent updates, use Solr Cloud. An update sent to any node in the cluster will automatically be forwarded to the leader for that shard. It will be indexed their and replicas will be notified to fetch it and index it on the replicas.
Solr cannot guarantee that updates will be simultaneous on all replicas. Solr is not a database and updates are not transactional. If you want transactions, use a database.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…