html
코드 복사
<!-- HTML 메타 태그 예시 -->
<head>
<meta name="description" content="신상품 출시! 최신 유행 신발을 만나보세요.">
<meta name="keywords" content="신발, 최신, 유행, 패션">
<meta property="og:title" content="신상 신발 출시!">
<meta property="og:image" content="https://example.com/shoes.jpg">
</head>
위 예시처럼 메타 데이터를 설정하면 검색 엔진은 이 정보를 이용해 더 잘 검색될 수 있게 도와주고, SNS 공유 시에도 특정 이미지나 제목이 보이게 해줍니다.javascript
코드 복사
function setMetaData(product) {
document.title = `${product.name} - 최신 패션`;
document.querySelector('meta[name="description"]').setAttribute("content", product.description);
document.querySelector('meta[property="og:image"]').setAttribute("content", product.imageUrl);
}
사용자가 상품 페이지를 클릭할 때마다, setMetaData
함수가 상품 정보를 기반으로 페이지의 메타 데이터를 설정해줍니다.상품 페이지를 사용자들이 많이 탐색할 경우, 각 상품 정보(상품 이름, 설명, 이미지 등)를 매번 API 요청으로 가져오게 됩니다.
사용자가 많아지고 요청 빈도가 높아지면, 서버는 그만큼의 트래픽 부담을 가지게 됩니다.
결과적으로, 서버의 처리 능력을 초과할 경우 응답 지연이 발생하거나 심한 경우 서버 다운 문제가 생길 수 있습니다.
이를 해결하기 위해 서버나 프론트엔드에서 캐시(Cache) 를 이용해 자주 요청되는 메타 데이터를 저장해두면, 서버에 매번 요청하지 않아도 되므로 부하를 줄일 수 있습니다.
```jsx
import { FixedSizeList as List } from 'react-window';
const ProductList = ({ products }) => (
<List height={500} itemCount={products.length} itemSize={50}>
{({ index, style }) => (
<div style={style}>
{products[index].name}
</div>
)}
</List>
);
```
자주 쓰이는 값이나 주요 속성을 기준으로 데이터 구조를 최적화
하는 것을 의미→ 문제
일관된 시간 기준: UTC를 기준으로 모든 데이터를 저장하면, 위치에 따라 시간이 달라지지 않고 언제 어디서든 동일한 시간 데이터를 참조할 수 있습니다. 예를 들어, 한국(KST)은 UTC보다 9시간 빠르지만 UTC를 기준으로 하면 시간 데이터를 전 세계에서 일관되게 관리할 수 있습니다.
타임존 변환의 용이성: 저장된 UTC 시간을 사용자에게 제공할 때, 그들의 지역 타임존으로 변환하여 보여주기만 하면 됩니다. 예를 들어, 한국에서 웹사이트에 접속한 사용자는 UTC에 +9시간을 더한 시간으로 표시됩니다.
데이터 통합과 비교 용이성: 여러 타임존에서 발생하는 이벤트를 동일한 기준으로 기록하면 비교와 분석이 쉬워집니다. 예를 들어, 다국적 팀이 협업하는 상황에서 미국과 한국에서 동시에 발생한 이벤트의 시간을 비교할 때 UTC를 기준으로 저장된 데이터는 정확한 비교가 가능합니다.
서버에서 이벤트 발생 시간을 UTC로 저장한다고 가정해 봅시다.
한국에서 10월 31일 오후 6시에 저장한 이벤트는 UTC로 변환하면 10월 31일 오전 9시가 됩니다.
데이터베이스에는 UTC 시간인 2024-10-31T09:00:00Z
로 저장됩니다.
이후 다른 타임존의 사용자가 이 데이터를 확인할 때 자신의 지역 타임존으로 변환해 보여주면, 전 세계 어디서나 정확한 시간대를 반영한 이벤트 시간을 확인할 수 있습니다.
→ 이때 등장한게 Recoil
교훈: