1. 저희는 MongoDB를 Persistent Layer로 쿼리 Hash => 쿼리 로 저장하고, 한번 가져왔을때부터는 In-memory에 저장해서 쓰고있어요. (Map)
2. 요건 클라 이슈라서 ㅎㅎ 서버에서 조심해야될건 딱히 없는거같아요 ㅋㅋ
3. PQ는 Network 리소스를 감소시켜주지, CPU 리소스를 감소시켜주지는 않아요. 저희는 CPU 리소스 같은 경우에 graphql-jit으로 감소시켜서 쓰고있어요.
Tony Won
02/01/2021, 5:37 AM
Apollo Client 같은 경우에는 모르겠네요... 저희는 직접 손으로 한땀한땀 구현했어요 ㅋㅋㅋ express 미들웨어에서 req.body.query에 넣어주는 형식으로요
Tony Won
02/01/2021, 5:37 AM
Copy code
if (req.body.id) {
// 쿼리 문을 id(해시)를 통해 가져와서
req.body.query = ...
}
next()
Tony Won
02/01/2021, 5:38 AM
그래서 한번 Persistent Layer에 요청하고 다음부터는 인메모리에서 가져오기때문에 Redis에 부하가 크진 않을거같아요 ㅎㅎ
o
ojy6042
02/01/2021, 9:12 AM
오호 감사합니다 혹시 graphql-jit 은 CPU 부하가 어느정도 감소했는지 공유해주실 수 있나요?
t
Tony Won
02/02/2021, 5:45 AM
음 평균 Latency가 5~10ms 감소한걸 볼수있었는데, 실제로 "실험"을 한건 아니라서 언급해드리기가 애매하네요 ㅠ graphql-jit에 벤치마크가 있기도 하고, 실제로 설치하는게 어렵지도 않아서요. 가지고 계신 프로젝트에서 A/B로 한번 스트레스 돌려보시는게 제일 좋을거같아요.