XpressEngine에 관련 내용에 대해서 이야기 합니다.
밑에 댓글로 답변주셨는데 도저히 이해가..
국어실력이 미천하여 미안합니다.
꼭 사용 하고픈데 도와주세요
질문 1. 출력되는 모든 image파일의 경로를 다른 도메인으로부터 불러오게 경로변경을 해줍니다.
한곳에서의 처리로 인한 부담을 덜고 성능을 소폭향상시킬 수 있습니다.
( 다른 도메인으로 부터 불러온다고 하셨는데 aaa.com 가 메인 사용중이면 bbb.com 을 통해서 이미지를 가져온다는 말씀이시죠? 그럼 bbb.com에 이미지가 있어야 aaa.com으로 볼러 오지 않습니까? 경로를 바꿔 준다는 의미가 궁금합니다.
어디서 이미지를 가져온다는 것은 거기에 이미지가 있다는 얘기 아닌가요?
설치해서 보니까 aaa.com bbb.com으로 하니 aaa.com에 액박만 나오고 안보여서요
제가 이해가 안되는 결정부분이 aaa.com에서 bbb.com 에 있는 이미지를 가지고 올려면 bbb.com에 데이터가 있어야 하는데 그렇게 하는게 아닌것 같네요
aaa.com에 있는 이미지를 단순 데이터도 없는 bbb.com 이라는 도메인에 경로만 바꿔 준다는게 이해가 안됩니다.
트렉픽과 로딩을 줄일려면 디른곳에서 aaa.com으로 불러와야 aaa.com이 트레픽을 불일수 있는거 아닌가요?
도메인 경로만 단순 변경한다는 말이 이해가 되지 않습니다.)
2,질문
image를 로딩할때 사용할 도메인을 적어주세요. A랑 달라야 합니다. 질문1과 조금 중복되는데요 도메인만 바꿔서 어떻게 트렉픽을 줄어드는데 이해가 안가서요 aaa,com과 bbb.com 있다면 {$cookie_free_domains}{$js_file['file']}"로 수동 입력 을 샘플예제로 적어 주실수 없지요
css,js도 사용하려면 common/tpl/common_layout.html에서 각 css,js로딩 태그안의 src,href에 src="{$cookie_free_domains}{$js_file['file']}"로 수동 입력하셔야 합니다.
몇일을 님께서 쓰신글을 읽어보고 또 읽어 봐도 이해가 안되어 문의 드립니다.
css,js 로딩에도 수동적용하게 되면 더 나은 속도향상을 체감할 수 있습니다.
아침두부
- 2010.11.03
- 00:52:51
- (*.94.203.244)
우와~~
이건 감사하다는 말밖에는 감동입니다.^^
몇가지 이해못한 부분 있습니다.
a도메인 b도메인 이 각각 다른 곳에 서버를 따로 있다면 a도메인에 있는 자료를 몽땅 b도메인으로 옮겨서 사용하면 된다는 말씀이시죠^^
여기서 궁금한게 a도메인이 주 사용 인데 이미지파일을 주기적으로 계속 b가 있는 서버로 수동각 옴겨줘야 합니까?
같은 서버내 두 도메인이 있을경우 a도메인에 있는 자료를 b도메인 폴더로 수동 옮겨야하는지 궁급합니다.
그렇게 했을경우 서버는 하나인데 그래도 서버의 부담을 줄여줄수 있는가요?
제 상황이 jpg,gif,png 파일만 한달 400GB 트레픽이 발생합니다.봇이 가져간것 까지 싶은데.. 확히는 모르겠구요 (죽을맛이네요)
그래서 특정시간 4~5시간에 페이지가 잘 넘어가지 않을 정도 입니다.
현재 단독서버호스팅을 받고 있구요 DB분리를 하면 많이 좋아진다고 해서 알아보고 있는게 아는게 없습니다.
실험 삼아 원격DB 를 연결해 봤는데 네트윅이 아닌 IP를 이용한 인터넷으로 받다 보니 속도가 말이 아닌것 같네요
(내가 잘못했을수 도 있습니다.) 다들 DB는 웹과 원격으로 하는지 궁금합니다.
제가 어떻게 하는게 하는것이 가장 좋은 방법일까요?
명괘한 제시와 조언을 부탁드립니다.
라르게덴
- 2010.11.03
- 05:55:11
- (*.6.196.189)
질문 방향이 달라진 것 같은데요....
cookie-free domains의 단순한 기능에 이런 질문은....;;
본문내에 있는 이미지와 섬네일 되는 이미지는 스킨에 사용하는 이미지, javascript, css와는 다르게 유동적으로 사용됩니다.
자원부담을 줄일 수 있는 대상 중 고정적인 것과 유동적인 것을 구분하도록 해당 애드온에서는 본문이미지와 섬네일 이미지에는 도메인 변경을 하지 않게 하는 기능이 있습니다.
단순히 생각하면 본문이미지와 같은 유동 이미지들도 일일이 추가될때마다 이동해주셔야 하는게 맞지만 실제 그렇게는 못하죠.
서버에서 files/image 폴더를 서버를 나눠 마운트시켜서 사용하고 두개의 도메인을 만들어서 처리 할 수 있습니다.
(DB를 나누어서 사용한다는 것과 같은 의미입니다.)
이 애드온에서는 파일분리를 어떻게 하고 어떻게 운영할지의 방법론까지 제공하지 않습니다.
파일분리를 하고 자원을 나눴을때 그것을 스킨에서부터 하나하나 수정하는 어려움을 덜어주는게 이 애드온의 역할 입니다.
XE에서는 외부경로로 파일을 업로드하는 기능이 아직 없기 때문에 일반인들이 바이너리와 웹을 나누긴 어려울 겁니다.
폴더를 다른서버와 연동해서 사용하거나 다른 추가적인 방법을 이용하셔야 합니다.
자세한건 서버전문가에게 물어보세요.
같은 서버내에 두개의 도메인이 서로 다른 폴더에 설치되어있다면 당연히 양쪽 모두 파일이 도메인 아래의 경로로 똑같이 있어야 합니다.
위에 말했지만 하나의 서버에서 듀얼처리를 하게되기 때문에 부담이 줍니다.
동접이 많아질때나 데이터상으로 체감할 수 있습니다.
'DB는 웹과 원격으로 한다'는 말의 의미를 모르겠습니다.
제 호스팅은 DB와 서버가 나눠져 있습니다.
'네트웍이 아닌 ip'가 아니라 로컬 네트웍인지 시리얼 회선을 타는지로 구분합니다.
제 서버도 DB를 ip로 연결합니다. 다만 같은 네트웍을 이용하는 로컬 네트웍 입니다.
명쾌한 제시는 못해드립니다.
저는 서버전문가도 아니니까 명쾌한 답변은 웹서버를 전문적으로 다루는 사람에게 문의해주세요.
아침두부
- 2010.11.05
- 00:13:14
- (*.94.203.244)
제세한 답글 고맙습니다.
이틀전 밤에 한번 해보다가 잘못했는지 모든게 백지로 나와 지금까지 고생하다 우야곡절끝에 되는되는데
뭐 때문에 정상으로 나오는 알수없지만 사이트가 뜨는것만 도 감사하죠 ㅎㅎ
서버를 임대해서 쓰고 있어 호스팅사에서는 백업을 안해놓는다내요 순간 눈앞이 깜깜했지만....
이런경우는 처음보는 지라 당황많이 했습니다.
다른 폴더에 도메인 지정하고 순수xe만 설치해서 기존 db에연결하면 뜹니다.
페이지 주소나 기타가 모두 다른 url로 잡혀 오류... 관리자에서 캐시설정 누르면 백지하면...
백지 화면 뜨면 관리자모드도 일반 주소도 모두 백지 들어갈 벙법이 없죠
files/db.config 파일지우고 재설치 ... db등록 까지 마치면 다시 백지화면
기본 등록된 모쥴,에드온을 하나씩 옮기기 시작해보니 에드온에서 회원포인트선물 에드온을 카피하니
백지가 나오네요 잘쓰던게 왜그런지는 아직 모릅니다.
사이트는 엄청 느려졌지만 그나마 다행 이라고 생각듭니다.
예전 xe의뢰란 몇번 돈을 주고 보수 한적있었는데 (지금생학하면 간단한거였지만)
깔끔한 사람을 한번도 본적이 없다는게 아쉬움이였습니다.
쓰다 보니 여기가 맘 편해서 길게 썼네요
이틀동안 고생 고생해서 혼자 넉두리라 생각 해주세요
아참 제가 말한 원격은 db.config.php 에서 db_hostname = 'localhost' 을 localhost 아닌 db가 있는
외부 서버 I.P를 기재한다였습니다. 그걸 원격이라고 얘기 하더군요
한 공간에 서버가 여러대 있고 서로 묶여져 있는경우에 DB서버를 이용해야 정상이라고 생각했는데
다른곳에 있는 서버에 DB를 올리고 웹으로 쓰고 있는 서버에서 db_hostname = 'I.P' 가능한것 같았습니다.
의문이 드는건 DB데이터를 인터넷망을 통해 받기에 웹서버의 부담은 줄일수 있지만
DB데이터를 뽑아서 웹서버에 출력할시 속도문제가 의문을 가져본겁니다.
P.S 라르게덴님이 유지보수나 조언시 소액을 받았으면 좋겠습니다.^^
애드온 원리에 대해 이해를 못하셨군요.
제가 설명을 어렵게 했나 봅니다.
제가 아침두부님 글을 보니까 하나만 이해가되면 나머지는 저절로 이해가 되실 것 같네요.
1.
이 애드온을 이용하기 위해서는 도메인이 두개가 필요합니다.
두개란 것은 www가 있는 것과 없는 것도 포함이 됩니다.
예) www.animeclub.net , animeclub.net <- 이것도 도메인이 두개 인 겁니다.
그리고 아침두부님꼐서 이해가 안되시는 부분이
두개의 도메인이 서로 다른 서버에 있는지 같은 서버에 있는지의 부분 입니다.
CDN이란 것은 도메인과 서버가 다른 경우를 말합니다.
cookie-free domains 라는건 YSlow를 만족할 뿐 서버가 다르게 있을 이유는 없습니다.
문의하신 부분의 서버가 다른 경우에 대해 설명해보겠습니다.
abc.com, def.com을 보유하고 있고 서로 다른 서버에 위치하고 있다고 할떄를 경우로 예를 들겠습니다.
나는 abc.com 이용자이다.
use cookie-free domains애드온을 이용하려고 한다.
나는 def.com 이라는 도메인을 가지고 있고 전혀 다른곳에 서버가 위치하며 놀고 있다.
위의 예로 설치 방법을 설명드리면
abc.com에 xe에 있는 모든 파일을 def.com에 복사합니다.
abc.com에서 애드온 설정을 A : abc.com , B : def.com으로 설정합니다.
끝입니다.
동작 과정을 설명드리면
abc.com에서 출력되는 html페이지 소스 중에서 <img> 태그의 src 주소가 변경됩니다.
<img src="./images/abc.gif" alt="abc" />
위에 것이 아래의 주소로 변경됩니다.
<img src="http://def.com/images/abc.gif" alt="abc" />
위에 모든 내용을 def.com에 저장했으니 그쪽에서 불러와 출력하겠네요.
B에 넣을 도메인이 다른곳에 있다면 당연히 그곳에도 A의 이미지와 동일한 위치에 동일하게 파일이 있어야겠죠.
위에 def.com으로 모두 복사하라고 했지만 실제적으로는 폴더들만 생성해서 이미지만 복사해야 맞는 겁니다.
cookie-free domains의 역할은 주소만 바꿔주는데에 있습니다.
주소를 바꾸게 되면 바뀐 주소의 서버에서 자원을 소비하고 불러오게 됩니다.
내 서버의 자원을 소비하는게 아닙니다.
2.
제 사이트가 이미 수행하고 있습니다.
소스보기를 하시면 됩니다.
저는 도메인이 4개입니다.
animeclub.net, aeimnclub.co.kr, animeclub.pe.kr, animeclub.kr
www를 합치면 8개가 됩니다.
이 도메인들은 서로 같은 서버에 있어도 자원활용이 다릅니다.
www.animeclub.net 에 로그인하고 animeclub.net로 사이트를 열면 로그인이 안되어있는 원리 입니다.
서로 다르게 동작합니다.
내가 10개의 이미지를 www.animeclub.net에서 로딩하게되면 10개의 이미지가 한곳에서 일괄적으로 처리됩니다.
내가 5개는 animeclub.net, 나머지 5개는 www.animeclub.net에서 불러오게 되면 두군대서 5개씩 처리해 사용자에 보여지게 됩니다.
듀얼 프로세스라고 보면 됩니다.
그럼 성능 향상이 어떻게 되나?
www.animeclub.net을 로딩하게 되면 이미지 40개(예로)처리, XE 로딩 처리, javascript, css파일 로딩 등 모두 일괄적으로 처리 후
차례대로 전송되겠죠.
여기서 내가 이미지파일의 경로와 javascript,css의 경로를 다른 도메인으로 바꾼다면
www.animeclub.net : XE 로딩 처리(html 태그는 그냥 문자인겁니다. 그안에 내용을 브라우저가 인지해서 다시 호출하는겁니다.)
animeclub.net : 이미지 처리, javascript, css 파일 로딩
처리 부담이 줄어듭니다.
http://gtmetrix.com/reports/www.animeclub.net/7429f2pq
현재 운영중인 사이트가 있다면 http://gtmetrix.com/ 가셔서 체크 후에 제 사이트와 비교해보십시오.
이러한 성능은 눈으로 보고 느끼는 성능을 말하는게 아닙니다.
사용하는 서버의 자원을 얼마나 사용했고 서버에 부담을 얼마나 덜어줬는가에 있습니다.
실제 트래픽 분산효과는 동접 사용자가 많아질때 나타납니다.
사용자가 많으면 많을 수록 서버는 처리량의 한계로 본래 처리해야할 시간에서 딜레이가 이뤄집니다.
이것을 서로 다른곳에서 처리하게 될 경우 부담을 덜어주게 되는 겁니다.
분산이 가능한 것은 처리가 구분되어있는 대상만입니다.
그렇기 때문에 그 대상은 src=" 형태로 정보를 가지고 있는 대상이 되는데요.
img, javascript, css, rss, atom 등이 그 분산을 할 수 있는 대상이 됩니다.
쓰다보니 읽기 힘들만큼 썼네요. 읽으시기 힘드셨을텐데 더 해깔리게 되는게 아닌지 걱정입니다.