I have a pretty simple setup that uses http post to send weather data in CSV format about once per second. If bandwidth is a concern you might want to consider using a CSV format as it will consume less. While XML may be the more modern approach it does bloat the size of the data.
Server side there is just a tiny php script that reads the post data and saves it to a .txt file, the data is then read from that file, if someone is viewing the website. Additionally, I have a cron running that detects if the data hasn’t been updated for 60 seconds, if it hasn’t the cron adds a site down message to the website and let’s me know via email.