작은 차이도 비싸게 먹혀
prefix를 글자 그대로 맞춰보기 때문에, 별것 아니어 보이는 차이가 cache를 통째로 날려. 맨 위 timestamp, 아무 request ID, 뒤죽박죽인 JSON key 순서, 매번 새로 만들어지는 tool schema, 계속 바뀌는 example 같은 것들. 비싼 건 변하는 내용 자체가 아니야. 그 변하는 내용을 다시 쓸 prefix가 끝나기 전에 놓는 게 비싼 거지.
Cache 깨먹는 다섯 가지
1. 첫 줄의 timestamp나 request ID. 2. key 순서가 매번 달라지는 채로 새로 만들어지는 tool schema. 3. 요청마다 다시 섞이는 example. 4. 규칙 위에 붙는 '오늘의 팁'이나 돌아가는 배너. 5. prefix 영역 안 규칙 구획에 사용자 이름이나 현재 시각이 끼어든 인사말.
변하는 건 변한다고 티를 내
변하는 자료는 전부 tail 구획 아래로 몰아. timestamp가 꼭 필요하면 거기 둬. tool schema가 바뀌면 일부러 버전을 올려. 정렬 안 된 key가 소리 없이 byte를 바꾸게 두지 말고.