Se você usar o POP3 e manter a conexão aberta, talvez não receba novas mensagens - não me lembro se é parte da especificação ou não, mas os servidores POP3 com os quais lidei essencialmente bloqueiam a caixa de correio para o duração da sessão POP3, para que nenhum novo email chegue (aparecendo) enquanto a sessão POP3 estiver aberta (STAT e UIDL e LIST e LAST - sempre retornam a mesma resposta até você SAIR e re-login).
Se você usar o IMAP, poderá manter a conexão IMAP aberta e apenas consultá-la periodicamente para novas mensagens. Isso é muito mais barato do que fazer login, verificar e desconectar se você quiser fazer isso a cada 10 segundos.
Eu não executaria o poller no servidor da Web de front-end. Eu teria um processo de back-end de longa execução (daemon) que busca alterações e se comunica via algum sistema de transmissão de mensagens para o aplicativo PHP no servidor frontend. ("message passing system" pode ser tão simples quanto escrever pedidos e informações de status para uma tabela em um banco de dados compartilhado).
Você pode escrever o daemon poller em PHP, se preferir. Você pode ficar mais extravagante com este processo & adapte-o a uma mudança de caixa de correio: se a caixa de correio do usuário mudar constantemente, permaneça conectada e sondar com frequência. Se a caixa de correio não mudar, desconecte a conexão IMAP e verifique-a novamente 5 minutos depois.
James