socket de server que escucha en el cliente frente al service de votación para la aplicación de postría instantánea de Android

Actualmente estoy escribiendo una aplicación de postría instantánea para Android, así como la aplicación de server que estoy ejecutando en mi computadora portátil. la aplicación de server se conecta a una database sql (en la misma máquina) y verifica la información de inicio de session, crea nuevas counts e inserta otra información de conversación en el file db. hasta ahora todo esto está funcionando, sin embargo, tengo que decidir una estrategia sobre cómo voy a pasar los posts enviados desde el server al destinatario deseado.

lo que tengo hasta ahora:

  1. el cliente se conecta al server y envía la información del post, incluidos el remitente, el destinatario y el post

  2. el server almacena la información en el file db y envía una respuesta indicando éxito o falla al cliente remitente

  3. el cliente emisor actualiza sus vistas para reflejar cualquier cambio en db o para indicar fallas

ahora tengo dos ideas diferentes sobre cómo abordar la entrega de los posts al destinatario

A. crea un service en la aplicación de Android que sondea el server para ver cambios en el file db

B. crea un socket de server en la aplicación de Android que escucha las requestes de connection del server y hace que el server intente enviar cada nueva actualización al cliente

por favor, hágame saber algunos de los pros y los contras de estos enfoques o si es quizás algo mejor que no he mencionado. Además, estoy usando principalmente Java para esto, pero con algún código de kotlin, si eso hace alguna diferencia. Soy un progtwigdor autodidacta que está haciendo esto para la práctica y realmente está creciendo para ser un proyecto masivo en comparación con todo lo que he hecho antes. agradecería mucho cualquier ayuda que se da. gracias.