[질문]
홈페이지 업체에 제작하고 1년정도 사용했는데요 트래픽양이 많다고 용량도 추가 했습니다.
근데 요즘에 계속 홈페이지가 버벅거려서 홈페이지를 사용할수가 없네요
계속 전화해서 처리해달라고 하는데도
말만 처리해준다고만하고 계속 지연되는데
이럴때 좋은방법 있나요??
[답변]
홈페이지 로딩속도에 영향을 주는 요소는 많습니다.
최근 워드프레스 등의 CMS(컨텐츠관리시스템)을 통한 홈페이지 제작과 게시판빌더 등의 솔루션을 통한 저렴한 홈페이지 제작이 많아지면서 질문내용처럼 속도 부분이 치명적인 문제로 지적되는 경우가 많습니다.
해당 솔루션들의 경우 범용적인 홈페이지 제작을 위해서 제작되기 때문에 엔진 및 프로그래밍 소스가 무겁고, 대용량의 DB를 처리할만한 기술이 탑재되어 있지 않습니다. 예를들어 소스코드가 100줄인 사이트와 소스코드가 1000줄인 사이트는 단순이 10배의 차이가 나는것이 아닙니다. 당연히 후자쪽이 트레픽이 더 많이 소요될테고, 동시에 접속될수 있는 사용자 수도 적을수 밖에 없습니다.
웹기반의 비즈니스에서 속도 저하 현상은 치명적입니다. 시간이 지날수록 데이터가 축적이 되고 많은 사람들이 방문하는 특징을 가진데다가 유입양이 기하급수적으로 늘어날 가능성이 높습니다.
어떻게 생각해보면 조삼모사 격일수도 있습니다.
제작비용의 절감을 위해서 저렴한 방법으로 제작할 경우 위의 경우처럼 트레픽증설이나 속도저하 등의 문제 뿐만아니라 데이터관리의 비효율적인 운영으로 인해서 유지비용 또한 많이 들수 밖에 없습니다. 제작비용이 높지만 맞춤제작 형태의 개발의 경우는 처음부터 접속자 및 관련된 시스템 확장성을 기반으로 제작되기 때문에 위험 요인이 낮습니다. 건물을 예를들면. 2층짜리 건물을 짓는 비용과 10층 이상의 건물을 짓는 비용은 당연히 다르겠죠.
특히 공사를 진행하는 기술에 대한 부분은 같을수가 없을것입니다.
당연히 2층짜리 건물을 지었는데 사람이 몰리고, 중량이 늘어나게 되면 건물은 버틸수가 없습니다. 임시로 3~4층 올리는거야 할수 있겠지만, 처음 지반공사에서 부터 고층건물은 기술력을 가지고 준비되어야 합니다.
수십층 이상 올라갈것으로 예상하고 지반공사에 많은 비용을 쓸수도 없고, 저렴하게 구축했다가 속도문제로 인해서 시스템을 엎을수도 없는 상황이 될수도 있습니다.
이런 여러가지 상황으로 인해서 시스템 및 홈페이지 구축전에 IT컨설턴트를 통한 컨설팅을 추천드립니다.
질문 주신 부분에 대해서 정밀하게 진단을 해봐야지, 개선안이 나올것으로 생각이 됩니다.
업체가 기술력이 없어서 개선이 불가능한데 요청만 한다고 될수 있는일이 아닙니다.
일단, 의심되는 부분과 대략적으로 확인을 해보셔야 하는 부분에 대해서 말씀드리겠습니다.
1. 사이트 개발방법론
웹사이틀 제작하는 방법은 다양합니다. 어떤 개발방법론을 사용하는지에 따라서 다양한 채크포인트가 발생할수 있습니다. 예를들어 단계별 개발방법론을 기준으로 작업을 했다면, 비효율적으로 운영되는 프로세스를 분석해 보고, 이를 개선하는 방법에 있어서 최적화를 기대해 볼수가 있습니다. 일반적으로 많이 사용하는 워드프레스 등의 CMS기반 방법과, 통합보드+스킨 제작을 사용하신 경우 통합보드 자체의 논리적인 결함 혹은 과부하 현상으로 사이트가 느려지는 경우도 있습니다. 이와 같이 사이트를 제작하는데 있어서 사용한 개발방법론에 대한 점검은 필수입니다.
2. 프로그래밍언어
웹사이트를 제작하기 위해서 일반적으로 3세대 개발언어인 ASP,PHP,JSP를 주로 사용합니다. 만약 CGI와 같은 2세대 개발언어를 사용하게 된다면 동시접속자가 몰리게 되었을때 속도저하 현상이 나타나게 될것입니다. 또한 각 언어별로 활용해야 하는 개발방법론이 다르기 때문에 여기에 맞춰진 개발 또한 점검해야 하는 부분입니다. 일반적으로 속도 부분은 ASP>PHP>JSP 의 순서로 언어별 속도가 차이가 있습니다.
특히 JSP의 경우 JAVA언어의 특징을 반영한 캡슐화 기법을 활용하기 때문에 소스코드의 낭비로 인한 속도저하 현상이 나타날수 있습니다.
3. DB정규화 및 최적화
화면상에 DB연결 구문이 많거나, 프로그램적으로 객체 소멸인자를 정상적으로 사용하지 않은경우 사이트에서 속도저하 현상이 나타날수가 있습니다. 이때는 DB사용을 최소화 할수 있는 여러가지 방안이 필요할것입니다. 또한 습관적으로 소스 하단에 객체 소멸인자를 명시하는 방법을 사용할수도 있습니다.
뿐만아니라 DB자체가 최적화 되지 않게 구현이 되어있다면, 많은 DB 조회 및 사용으로 인하여 속도저하 현상이 나타날수도 있습니다. DB튜닝이라 불리는 단계를 통해서 어느정도 해결할수 있으리라 생각이 됩니다. 정규화에 있어서도 속도와 활용을 잘 고려하여 어느 단계의 정규화를 진행할것인가에 대해서 고민을 해보셔야 할듯 합니다. 정규화가 정밀해 지게 되면, DB는 효율적으로 사용하게 되지만, 그만큼 join을 해야하는 테이블이 많아 지기 때문에 속도는 느려질수 있습니다.
4. 알고리즘 구성
프로그램을 기반으로 한 사이트에서 알고리즘이 차지하는 비중은 높은 편입니다. 이 알고리즘상에서 흐름이 잘못되어 일부 LOOP현상이 발생하게나, DeadLook현상이 발생하게 되는 경우 심각한 속도저하 현상이 나올수도 있습니다. 이 부분은 사이트 및 프로그램의 특성에 맞는 알고리즘 구성이 필수적입니다.
5. 이미지 최적화
현재 가장 의심되는 부분입니다. 최근 디지털 카메라가 고화소를 지원하고, 사진파일 하나의 용량이 20Mbyte를 넘어가는 경우도 있습니다. 이를 웹상에서 최적화 하여 웹용 이미지로 변환하지 않는다면 문제는 심각해 집니다. 20Mbyte의 파일이 20개가 나열되어있다면 400Mbyte의 용량이 발생하게 됩니다.
1Mbyte라 하더라도 20개의 파일이면 20Mbyte의 트래픽이 발생하게 되겠죠..
일반적으로 겔러리에서 사용하는 이미지의 경우 썸네일이미지라 불릴 정도로 용량이 작고, 사이즈도 작은 이미지를 사용하게 됩니다.. 이런 방법으로 한페이지의 로딩시 평균 용량이 500Kbyte~800kbyte로 조절하시면 문제가 없을듯 합니다.
6. 코딩 기법
포털사이트에 사용되는 코딩방법과, 일반사이트에서 사용되는 코딩방법은 다릅니다. 그만큼 동시에 많은 사용자들이 사용하고, 속도저하 현상이 의심될수록 효율적인 코딩이 필요합니다. 현재 사이트의 코딩방법을 점검해 보고, 이미지의 쓸데없는 사용이나 불필요한 소스 코드의 사용으로 인하여 트레픽낭비가 없는지 확인해 보셔야 할듯합니다.
7. 프로그램 최적화
10줄의 소스코드와 100줄의 소스코드. 어떤게 더 빠를까요?.. 답은 전자일 가능성이 높다 입니다.
동일한 결과를 처리하는 소스코드라 하더라도 개발자의 습관, 개발방법론, 소스코드의 최적화, 알고리즘의 최적화, DB구조 등에 따라서 달라지게 됩니다. 이런 부분에서 프로그램에 대한 최적화가 필수입니다.
8. 서버 및 회선상태
일반적으로 많은 업체들이 속도가 느려진다 판단되면 많이 사용하는 방법이지만, 이 방법은 최악의 경우일때 선택하는 방법입니다. 서버 및 회선을 조절하여 속도를 향상시킬경우 근본적인 해결책이 되지 않기 때문에 사용자가 늘어나게 된다면 다시 같은 일이 반복되게 됩니다. 위의 다른 7가지 요인을 우선적으로 점검하여 개선해 보신뒤. 서버 및 회선의 품질과 업그레이드를 고민해 보십시오.. 서버 및 회선비용은 매달 지속적으로 나가는 비용이지만, 개발비용은 1회성이라 생각해 보신다면 어떤 부분에 대한 점검이 우선인지 결정하시는데 도움이 되리라 생각이 됩니다.
[IT 컨설턴트의 생각]
많은 사이트들이 위와 같은 고민을 하실것입니다.
웹개발에 있어서 여러가지 기준의 예산안이 나올수 있고, 가장 큰 비중을 주는 것이 개발인력의 노하우 입니다. 포털사이트를 제작해본 개발자가 일반 웹사이트를 제작하는 개발자와 다른 이유는 위와같은 8가지에 대해서 대응해본 경험의 차이 입니다. 확인하는 측면에서 위의 요소를 점검해 보시고, 전문적인 컨설턴트의 컨설팅을 통해서 근본적인 원인에 대한 해결을 해보실것을 추천드립니다. 웹사이트에 있어서 로딩속도는 생명력입니다. 일반적인 유저들은 몇초의 짧은 시간도 지루하게 판단하며, 속도차이가 나는 사이트의 접근을 꺼려 합니다. 이런 이유에서 많은 수의 유저들을 위한 서비스를 준비중이시라면 여러가지 부분에서 진단과 보안이 필수적이라 생각이 됩니다
'ToTb Story > ToTb 네이버지식 Story' 카테고리의 다른 글
웹사이트 제작을 외주 맡기는 경우 유지보수에 대해 (0) | 2016.05.06 |
---|---|
웹 사이트 제작 (0) | 2016.05.06 |
쇼핑몰 창업할때 (0) | 2016.05.06 |
sql 인젝션 공격을 당했을때 대처법좀 알려주세요 (0) | 2016.05.06 |
회계사, 경영컨설턴트 (0) | 2016.05.06 |
기업 컨설팅 관련으로 문의드립니다. (0) | 2016.05.03 |
웹에이전시와 온라인광고대행사 차이점 (0) | 2016.04.27 |
창업하려 합니다. 경영컨설팅을 부탁하고 싶습니다. (0) | 2016.04.27 |
웹사이트 제작비용을 알고 싶어요 (0) | 2014.08.14 |
솔루션 개발 (0) | 2014.07.22 |
최근댓글