말 그대로 사용자에게는 의미 없지만, 모듈이나 애드온 등등을 개발하시는 분들께 도움이 되는 모듈을 한번 만들어보고 있습니다

 

만들게 된 계기는 제가 예전에 라이믹스에 대해 겉핥기로 알고 있을때, DB에 중요성에 대해서 모르고 그냥 컬럼만 넣고, 인덱스와 같은 작업들은 하나도 해주지 않았었습니다..

그랬더니 한 구매자 분께서 DB 인덱스를 넣지 않으면 데이터가 많아졌을때 매우 비효율적이라고 하셔서, 인터넷으로 DB 기초부터 갈고 닦고 있었습니다

 

그런데 인덱스도 순서라던지 여러가지 고려해야할게 많더라고요

그래서 개인적으로 사용하려고 DB 테스트를 위한 모듈을 하나 만들었는데요, 짜다보니 몇몇분들께는 좀 유용하게 사용될거 같아서 좀 더 기능을 추가해보려고 합니다

 

아래 사진은 더미데이터를 넣고 열심히 쿼리를 돌려서 속도를 최적화시킬 수 있게 만든 페이지고요

나중에 사이트 부하라던지 복잡한 작업을 통한 부하율 계산 등등의 기능을 넣어보려고 합니다

 

res1.PNG.jpg

 

 

개발을 더 할지 말지 고민이 되서 한번 타운에 올려서 반응을 보려고 하는데, 이 모듈 어떻게 생각하시나요?

 

참고로 동작은 라이믹스 2.0 이상의 버전에서만 합니다

리버스

profile
모듈 제작하는 현역 대학생 리버스입니다!

== 판매중인 모듈 ==
미션] https://xetown.com/thirdparties/1511787
길드] https://xetown.com/thirdparties/1387146
  • profile

    모듈 개발자만을 타겟으로 한다면 사용자층은 극소수에 머무를 것 같습니다.

    개발을 할 줄 아는 사람이라면 phpMyAdmin 등에 이미 있는 기능을 굳이 더 원하지도 않을 것 같고요.

     

    타겟 유저층을 좀더 넓혀보는 것이 어떨까요? 테이블 구조와 인덱스 등을 단순히 보여주는 것을 넘어서서

    (그걸 보고 뭐가 문제인지 직접 찾아낼 줄 아는 사람이라면 이런 툴이 필요하지도 않습니다...)

    예전의 XE 프로파일러처럼 사이트에 설치된 다른 모듈, 애드온, 위젯 중

    속도가 느리거나 비효율적으로 작성된 쿼리, N+1 패턴처럼 비효율적인 구조를 콕 찝어주는 등,

    나름대로 요약, 정리, 분석한 결과를 이해하기 쉽게 제공한다면 일반 사용자에게도 쓸모가 있을 테니까요.

     

    예를 들어 라이믹스에서 제공하는 디버그 데이터를 분석해서

    당신의 사이트가 느린 이유!!!

      1. 타임라인 모듈 [62%]

      2. 통계 모듈 [34%]

      3. contentextended 위젯 [4%]

      ※ 경고: 캐시를 사용하지 않고 있습니다.

    이런 식으로 눈에 확 들어오게 (제작자에게 항의 및 개선 요구를 할 근거가 될 정도로) 정리해 준다면...

    저한테 들어오는 서버 진단 의뢰 수요도 상당부분 잠식(?)하실 수 있겠네요. ㅋㅋㅋ

     

    개발자 대상으로도 단순히 속도를 보여주는 것보다는

    WHERE, ORDER BY, JOIN 등에 인덱스를 사용하지 않는 경우,

    복합인덱스 순서가 맞지 않아서 무용지물이 된 경우 등을 찾아서 알려준다거나...

    XML 쿼리명과 쿼리 데이터를 입력하면 실제로 어떤 SQL이 생성되는지 보여준다거나...

    이렇게 뭔가 확 차별화되는 기능을 제공한다면 phpMyAdmin보다 더 쓸모가 있을 것 같습니다.

     

    더미 데이터 생성은 특정 상황에서 귀찮은 일을 덜어주는 기능입니다만,

    특정한 테이블에만 더미 데이터를 잔뜩 넣어놓는다고 현실적인 테스트 결과가 나오지는 않습니다.

    대부분의 서드파티 자료는 게시판과 관련이 있고, 게시판 데이터는 여러 테이블에 분산 저장됩니다.

    테스트 게시판에 1000개의 글이나 댓글 입력하기 (내용은 lorem ipsum 비슷하게 자동생성)

    테스트 게시판에 1000건의 추천을 랜덤으로 입력하기

    또는 1000명의 회원 자동생성하기 (나중에 일괄삭제 가능한 패턴으로)

    처럼 좀더 구체적인 기능을 제공하는 편이

    두리뭉실하게 아무 테이블에나 더미 데이터를 넣는 것보다 더 쓸모있을 것 같습니다.

     

    결론: 단순 열람 (X) 지나치게 범용 (X) 구체적인 분석 결과 제공 (O)

  • profile
    저처럼 어중간하게 아는 사람은
    있으면 무조건 써볼 거 같습니다
    멋지네요 화이팅입니다
  • profile
    와우... 대단하십니다. 저같은 코딩알못이야 봐도 모르지만 개발자 분들께 많은 도움이 되었으면 좋겠습니다.
  • profile
    오우야 이런것 절실했습니다. 코어 분석툴 @기진곰 말처럼 속도분석도 ㅎㅎㅎ