자유 게시판

2024.07.23 18:43

ajax채팅 부하테스트!

떡밥입니다~ ^^;

부하테스트 중입니다 ㅎ

쪽지와는 별개로 새 테이블을 사용합니다.

실시간처리를 위해 인터벌을돌리는데 부하를 최소화 하는중입니다..


이미지 첨부시 이미지를 서버로 저장할 수 밖에 없는데

데이터용량이 걱정입니다..


채팅사용유무는 관리자가 설정하게하고

최대 업로드 가능한 용량, 인터벌(갱신주기)을 관리자가 설정하게 합니다.

이미지는 당연히 드래그 앤 드랍을 지원합니다.


일전에 SIR에 배포했을때 생기던 오류들은 모두 해결이되었고
PHP5~PHP8 테스트는 마쳤습니다.



-----------

부하 테스트 / 오늘 처리할 항목 입니다.


1. 폴링 간격 줄이기

폴링 간격을 줄여 서버에 전송되는 요청 수를 줄입니다. 

사용자의 평균 활동 수준에 따라 간격을 조정할 수 있습니다. 

예를 들어, 활동이 낮은 경우 간격을 5-10초로 늘릴 수 있습니다. 


2. 조건부 폴링 

사용자가 채팅 창에 적극적으로 참여하고 있을 때만 

서버에 폴링하는 조건부 폴링을 구현합니다. 

이를 위해 타이핑이나 포커스 이벤트와 같은 사용자 활동을 감지할 수 있습니다.


3. 효율적인 데이터 가져오기 

서버에서 전체 채팅 기록을 다시 가져오지 않고 

새 데이터만 가져오도록 합니다. 

이미 max_id 매개변수를 사용하고 있지만, 이를 완전히 최적화되었는지 확인합니다.


4. 압축 및 캐싱

서버 응답이 압축되었는지(예: gzip 사용) 확인하고 정적 리소스에 대한 캐싱 헤더를 활용합니다.


5. 사용자 행동 디바운싱

타이핑과 같은 빈번한 사용자 행동에 대한 디바운싱을 구현하여

불필요한 서버 요청을 줄입니다. 


6. 서버 사이드 최적화

서버 측에서 SQL 쿼리 최적화, 캐시 사용, 비동기 처리 등을 통해 서버 부하를 줄일 수 있습니다.



오.. 오늘?!


d6ee911b0c3897bbc90128ab23f65a33_1721727797_6713.png
 

  • 공유링크 복사
    미니홈 쪽지 구독하기
    구독하고 알림받기
구매 신청
  • 신용카드 결제는 별도상담을 통해 가능합니다.
    구매문의 : cs@false9.co.kr / 010-6466-3355
    신청 이후 담당자가 개별연락 드리고 있습니다.
    입금자명과 실제 입금자가 동일한 경우 자동처리 됩니다.
  • 결제예정 금액 : 0 (VAT별도)
    하나은행(KOEXKRSE) : 258-910104-00407 / 김은정(인덱스)

  •