Welcome to the community, @lucien.lu! Messages appearing only after refreshing may indicate a WebSocket connection issue, so could you share your Mattermost version, whether you’re using a reverse proxy such as NGINX, and any WebSocket errors shown in your browser’s developer console?
This sounds like a WebSocket issue, especially since the messages only show up after refreshing. I’d check the reverse proxy first and make sure it’s allowing the WebSocket connection, then look at the Mattermost and proxy logs for any errors. If you’re using NGINX, the browser’s DevTools under Network → WS can also show whether the connection is being dropped.
I’d also check the firewall, CDN, and SSL settings in case something is blocking the connection. If possible, try accessing Mattermost without the reverse proxy as well. If everything works normally then, it would point to the proxy configuration as the likely cause.