대부분의 푸시는 특정 사용자에게 보내야하거나 조건이 맞는 다수에게 보내야하는 경우가 많습니다.
그리고 Android유저만 서비스하는 경우보다는 iOS등의 다른 사용자들도 서비스하는 경우가 많구요.
질문에서 말한 것들은 서드파티 서버역할을 한다고 생각되어지는데요.
DB상에 등록되어진 사용자들의 정보를 이용해서
원하는 사용자들을 추리고 해당 사용자들에게 GCM, APNS등으로 메시지를 보내는 로직이 필요하게 됩니다.
이러한 로직을 서드파티서버에서 수행을 합니다.
단순히 Android폰에서도 푸시메시지를 직접 보낼수도 있지만,
원하는 상황에 맞는 서비스를 위해서 중간에 저런 부분을 거쳐간다고 보시면 됩니다.