| CMS/프레임워크 | Rhymix 2.1 |
|---|---|
| 개발 언어 | PHP 8.4 |
https://developer.chrome.com/blog/shared-dictionary-compression?hl=ko
이런걸 봤습니다.
트래픽 절감에 실제로도 효과가 꽤 있는것같더라구요.
해당 부분을 라이믹스에 모듈화해서 nginx로 적용해서 서브하고픈데, 뭔가 마땅한 아이디어가 안떠오릅니다.
제가 하려는것은 /files/cache/assets 에 생성되는 css/js들을 zstd로 압축하고, 웹서버에서 압축된 파일을 전송하는게 핵심인데요.
display=after로 사용되면 지속적으로 파일 존재를 체크해야되다보니 비효율적일것같은데 좋은 방법 없을까요?
코어를 건드리는수밖에 없나 싶습니다 ㅠㅠ
에카
Lv. 4
댓글 1
비동기 작업을 사용해서 일정 시간 간격으로 find 명령을 돌려 새 파일을 찾는 것이 가장 간단할 것 같네요. files/cache/assets는 그다지 큰 폴더가 아니기 때문에, 1~2분 간격으로 스캐닝한다고 크게 부담이 되지는 않을 겁니다.
모든 것을 라이믹스 내부에서 돌려야 한다는 고정관념을 버리면 (어차피 이런 최신 압축 알고리즘을 nginx단에서 지원할 정도라면 단독서버나 최소 가상서버일 테니...) 파이썬이나 노드로 구현한 터미널 기반의 프로그램에서 inotify로 폴더 내용 변경을 실시간 감지할 수도 있습니다. 원하시는 압축 알고리즘을 가장 잘 지원하는 언어를 선택하면 되겠죠. PHP는 이런 부분에서는 지원이 좀 늦는 편이니까요.
사실 이런 기능은 CMS에서 신경쓸 필요 없이 nginx단에서 처리하고 캐싱할 수 있어야 한다고 생각합니다만...
그래봤자 절대 다수의 커뮤니티에서 css/js 용량은 이미지나 동영상에 비해 새발의 피에 불과하다는 것이 함정입니다. 텍스트 위주의 사이트일수록 체감효과가 크겠네요.