웹호스팅서버에서 어느리소스가 먼저 고갈될까요?

   
   조회 4084   추천 0    

아직 서비스를 개시하진 않고 계획만세우고있습니다.

예상 서버 사양은 아래와 같습니다.


OS : CENTOS 7

CPU : E5-2620 V3 Dual

RAM : 64GB (MySQL:16GB, Apache:48G)

SSD : 1TB(OS, DB), 1TB*3(/home) 

네트웍 : 1G

수용가입자 : 300~1000


일반적인 웹호스팅이라고 봤을때 CPU, 메모리, 디스크/IO, 네트웍대역폭 중에 어떤 리소스가 먼저 고갈될까요?


짧은글 일수록 신중하게.
공돌이 2015-12
어떤 비즈니스 서비스를 처리하는지에 따라 다릅니다.
사용자가 빈번하게 대량DB를 핸들링하는 백오피스 성격이면 CPU와 디스크쪽으로 몰리구요.
커뮤니티처럼 PV위주 서비스면 네트워크쪽으로 몰리구요.

그런데 본문에 사양은 어떻게 봐도 초호화 인프라입니다.
보통 웹서버는 높은 하드웨어 퍼포먼스를 요하지 않기에
단일 서버에 퍼포먼스를 올리기보다 트래픽이 늘어나면 병렬로(N대 클러스터) 늘려갑니다.
어떤 서비스를 기획하시는지 모르겠으나 APACHE에 무려 48G를 할당하는건 오히려 독이 될것같습니다.
     
2015-12
어떤 비즈니스 서비스를 처리하는지에 따라 다릅니다.
-> 웹호스팅 입니다. 일반적인, 혹은 약간 고급형의...

사용자가 빈번하게 대량DB를 핸들링하는 백오피스 성격이면 CPU와 디스크쪽으로 몰리구요.
커뮤니티처럼 PV위주 서비스면 네트워크쪽으로 몰리구요.
-> 둘 다 어느정도 해당됩니다.

그런데 본문에 사양은 어떻게 봐도 초호화 인프라입니다.
보통 웹서버는 높은 하드웨어 퍼포먼스를 요하지 않기에
-> DB와 스토리지를 분리해야하는가에 대하 고민하다가 결론은 전통적인(?) 방식대로 한서버에 몰아넣자 입니다.

단일 서버에 퍼포먼스를 올리기보다 트래픽이 늘어나면 병렬로(N대 클러스터) 늘려갑니다.
-> 웹호스팅이라 스케일아웃의 방법으로 오픈스택클라우드도 생각해보긴했는데, 규모가 너무 커져서... ^^

어떤 서비스를 기획하시는지 모르겠으나 APACHE에 무려 48G를 할당하는건 오히려 독이 될것같습니다.
-> 다시말씀드리지만 일반적인 웹호스팅이며, DB에 32GB를 할당할수도 있습니다. 웹어플리케이션이 아직 정해지지는 않았지만 조금 무거운것들이 올라갈수도 있어서요. 그리고 결정적으로 램값이 싸잖아요. ^^
윈도우10 2015-12
웹호스팅 프로바이더 용이면 사양이 좀 높네요.
글로벌 프로바이더인 고대디 프리미엄 웹호스팅 서버도 저정도 안됩니다. 그리고 3000~5000 계정씩 들어가죠. 미니멈스펙으로요.
     
2015-12
조금 무거운 웹어플이 돌아갈수도있고, 좀 더 쾌적한 환경에서 고품질 서비스를 기획중입니다. 멀티코어/대용량메모리일수록 서버의 활용률이 올라간다는점에서 웹호스팅과  서버가상화의 시스템구성 철학이 통하지않을까싶습니다.
우형재 2015-12
사실상 웹 호스팅 프로바이더들 사양이 못올리는 이유아닌 이유가 계란을 한 바구니에 담지 마라는거죠 뭐..

단순 장애가 서버당 계정입주자가 많을수록 한번의 다운으로 연쇄적인 장애 및 항의전화로인한 업무마비가 일어나니

조금 미니엄한 스펙으로 스케일 아웃을 하는 좀 그런거 같습니다.
     
2015-12
예.. 사실 그부분도 고민중이긴합니다. 카페24에서는 옵테론 16코어 4개꽂아서 64코어 호스팅을 하길래, 저렇게도 하는구나 싶었죠.

http://cafe24blog.tistory.com/147
viper9 2015-12
이전에 한 2년간 무료 웹호스팅 서비스 했었는데 한번 접속자가 폭주한 적이 있었습니다. 네트워크와 메모리가 제일 문제더군요. SSH 접속이 잘 되지 않을 정도였습니다. 아파치 서버는 접속자가 폭주하면 메모리를 급격하게 소모합니다. (이점에서 NGINX가 상당히 높은 점수를 받고 있습니다.) 특히나 접속자마다 스레드를 생성하며 처리하기 시작하면 금방 메모리 만땅됩니다.

그리고 초고사양 서버보다는 적절한 사양으로 여러대를 두는게 나을것 같네요.

사양과 비례하여 고품질 서비스가 될것이라고 생각하진 않습니다. 저런식으로 구성되면 서버 한대가 폭주하면 모든 유저들이 다 접속 못하겠죠. 특정 유저 한명이 컴파일을 계속 해대거나 하면서 CPU를 다 잡아먹으면 모든 접속자가 전부다 느려지게 됩니다. 차라리 웹서버 몇대 + DB서버 몇대식으로 가야 어느 한대가 고장나거나 속도가 느려져도 버틸 수가 있을 것 같습니다. 각종 장애나 서버점검시에도 모든 유저가 다 접속불가 상태가 되는 것도 막을 수 있구요.

안정성과 가용성의 문제를 생각하며 설계해야하지 않을까요... 상용 서비스들이 왜 스케일업보다 스케일아웃으로 가고 있는지, 초고사양 서버를 쓰지 않는지 생각해보면 도움이 될 것 같습니다.
     
2015-12
좋은말씀 고맙습니다.
보안, 성능, 가용성, 비용, 백업, 확장성, 가상화, 스케일아웃/업 이런것들이 얽혀있어서 머리가 복잡합니다. ^^


QnA
제목Page 1720/5708
2015-12   1677979   백메가
2014-05   5143833   정은준1
2016-10   4092   PAMA머리
2018-09   4092   민사장
2017-03   4092   씨형
2016-01   4092   김상민
2015-06   4092  
2018-03   4092   김건우
2016-11   4092   구포역
2016-12   4092   soong
2017-12   4092   분출수
2021-03   4092   GPGPU
2015-03   4092   김용남
2018-09   4092   강한구
2022-03   4092   가빠로구나
2016-08   4092   제로나인
2016-03   4093   회원K
2021-07   4093   찌록
2015-09   4093   정연
2019-06   4093   원주멋진덩치
2013-11   4093   서울I김동수
2014-04   4093   황유식