Fetching & Displaying Data

What techniques should be used to optimize data updates in real-time dashboards?
function Dashboard() {
  const [metrics, setMetrics] = useState({});
  
  useEffect(() => {
    const ws = new WebSocket('wss://api.example.com/metrics');
    
    ws.addEventListener('message', (event) => {
      const update = JSON.parse(event.data);
      setMetrics(current => ({
        ...current,
        [update.metric]: {
          value: update.value,
          timestamp: Date.now()
        }
      }));
    });
    
    return () => ws.close();
  }, []);
Next Question (18/20)