{"slug":"rest-polling-vs-websocket-market-data","qid":"message_rates","label":"Quote messages per second, four names, 10:30 to 11:00 a.m. ET","post_title":"REST Polling vs WebSockets for Market Data","post_url":"/blog/rest-polling-vs-websocket-market-data#q-message_rates","columns":["symbol","messages_per_second","busiest_second_messages"],"rows":[{"symbol":"SPY","messages_per_second":132.3,"busiest_second_messages":1356},{"symbol":"NVDA","messages_per_second":73.7,"busiest_second_messages":1018},{"symbol":"AAPL","messages_per_second":35.8,"busiest_second_messages":427},{"symbol":"KO","messages_per_second":18.8,"busiest_second_messages":317}],"shape":"ranking","sql":"SELECT\n    symbol,\n    round(sum(messages) / 1800.0, 1) AS messages_per_second,\n    max(messages)                    AS busiest_second_messages\nFROM\n(\n    SELECT\n        ticker                    AS symbol,\n        toDateTime(sip_timestamp) AS second_bucket,\n        count()                   AS messages\n    FROM global_markets.cache_stocks_quotes\n    WHERE ticker IN ('AAPL', 'NVDA', 'SPY', 'KO')\n      AND sip_timestamp >= '2026-09-15 14:30:00'\n      AND sip_timestamp <  '2026-09-15 15:00:00'\n    GROUP BY symbol, second_bucket\n)\nGROUP BY symbol\nORDER BY messages_per_second DESC","computed_at":"2026-10-09T15:25:31.053419+00:00","elapsed":0.002670194}