Fitur pencarian dapat dimodelkan sebagai layanan terpisah dengan tanggung jawab terpisah dari dua layanan yang Anda sebutkan. Jadi, pendekatan di sini mungkin untuk membuat layanan baru ('pencarian') dan minta ia menyimpan salinan data dari kedua layanan dalam bentuk yang mudah untuk diindeks dan dicari, mungkin juga didenormalisasi untuk dengan cepat memberikan hasil dalam format yang diinginkan.
Jadi, misalnya Anda dapat memiliki database SQL lama menggunakan mis mySql, layanan microser lainnya menggunakan misal MongoDB, dan layanan pencarian baru menggunakan elasticsearch dengan data dari keduanya yang sudah ditempelkan bersama (didenormalkan) untuk akses yang lebih nyaman. tentu saja detailnya akan tergantung pada jenis pencarian yang perlu Anda lakukan.
Data dari dua layanan sebaiknya ditransfer secara tidak sinkron ke indeks pencarian melalui bus peristiwa seperti Kafka atau Hermes untuk meningkatkan throughput dan mengurangi sambungan antara layanan. Perubahan di salah satu dari dua layanan ini akan mengirim acara yang menginformasikan layanan pencarian untuk juga memperbarui datanya.
Tentu saja ada biaya keterlambatan tambahan antara perubahan dalam layanan dan dalam layanan pencarian, tetapi karena layanan microser biasanya digunakan dalam sistem yang didistribusikan, beberapa penundaan dan inkonsistensi sementara tidak dapat dihindari. Memiliki layanan tambahan dan menggunakan penyimpanan ekstra untuk salinan data yang sudah ada di dua layanan lainnya juga merupakan biaya khas untuk memiliki sistem yang sangat terdistribusi dan dapat diskalakan menggunakan layanan microser.