-
Paginação / carregamento lento
Nunca carregue todos os itens de uma vez. Faça com que eles carreguem de forma incremental. Um exemplo da vida real seria o Facebook e o Twitter. Ele carrega apenas uma quantidade definida de itens, então quando você chega ao final ou clica em "carregar mais", ele carrega os próximos N itens ou o Google, que mostra apenas N itens por página de um bilhão de resultados possíveis.
-
Usar JSON
Hoje em dia, ainda vejo pessoas retornando HTML formatado em solicitações AJAX - não faça isso. Faça com que seu servidor carregue a página inicial (que possui HTML inicial) e o restante em JSON via AJAX. Faça com que algum script de modelagem do lado do cliente crie o HTML para você quando os dados JSON chegarem. Isso economiza largura de banda e tempo de download.
-
Usar compactação
É bastante óbvio por que você deve usar a compactação.
-
Carregar apenas os campos obrigatórios no SQL
Muitas vezes, você carrega todas as colunas porque "elas podem ser úteis algum dia" - não. Se você deseja carregar um conjunto de apelidos, faça com que o SQL carregue apenas os apelidos. Obviamente, o campo de chave primária é sempre necessário para o emparelhamento, portanto, neste caso, 2 colunas.
E vendo que é apenas uma relação de 1 para 1 entre o apelido e a pessoa, armazene-o na mesma tabela. Há pouca necessidade de estar em outra tabela. Isso evita uma operação JOIN.