서버 성능관련 질문있습니다.

조회수 1331회

언어를 막론하고 서버를 짤 때마다 궁금한 것들이 있었는데 여쭤보고 싶습니다.

  1. 서버 성능이 좋고 나쁨을 가르는 기준은 뭔가요?
  2. 서버 성능을 측정할 때 쓰이는 방법은 뭐가 있을까요? (봇 아니면 서버 테스팅 툴?)
  3. Normal한 DB API보다 DB connection pool은 항상 성능이 좋나요?
  4. 실제 현업에서 쓰이는 서버의 DB connection pool limit은 어느정돈가요?
  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

    1. 기준이 다릅니다. 가용성이 기준이 될 수 있고 응답속도가 기준이 될 수도 있습니다. 정해진 기준이라는 것은 없습니다.

    2. 서버라는 것이 정확히 어떤 서버를 말하는 것인지 모르겠습니다. 웹어플리케이션 서버를 말하는 것인지 다양한 다른 데몬들을 지칭하는 것인지 장비자체를 말하는 것인지...애매모호합니다.

    3. 커넥션풀이라는 것은 데이터페이스에 커넥션시 발생하는 오버헤드가 크므로 미리 연결해두고 그 연결된 커넥션들을 빌려 사용하는 것 입니다. 즉 사용후 close 되는것이 아니라 반납을 하는 개념입니다. normal 한 DB API 가 무엇을 의미하는지는 모르겠으나 요청시마다 커넥션을 생성하는 것 보단 커넥션풀을 이용하는 것이 상당히 빠릅니다.

    4. 해당 어플리케이션에 요청하는 양에 따라 달라질 수 밖에 없습니다. 작은 서비스는 20개 미만도 될 수 있습니다. 커넥션풀을 크게 가져가면 그만큼 리소스를 더 사용하는 것입니다. 당연히 프로파일링을 해서 최적의 값을 찾아야 합니다.

    • 답변달아주셔서 감사합니다 ㅎㅎ 알 수 없는 사용자 2017.11.23 11:31
    • 2. 질문에 서버 성능을 측정하는 툴이란 건 실행되고 있는 서버 인스턴스에 스트레스를 줘서 reliable한 서비스를 줄 수 있나 아닌가를 테스트하는 툴이나 방법을 여쭤보고 싶었습니다. 알 수 없는 사용자 2017.11.23 11:33
    • 3. Normal한 DB API는 답변에 달아주신대로 요청시마다 커넥션을 생성하는 방법을 뜻한겁니다. 그래서 컨넥션 풀과 같이 언급한거구요. 알 수 없는 사용자 2017.11.23 11:34

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)