Quelles sont les différences entre les architectures Push et Pull dans la conception de systèmes de streaming de données comme RabbitMQ et Kafka ? Comment ces approches affectent l'utilisation de la mémoire côté broker et le problème de la backpressure des consommateurs ?