<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[TNF : Tatter Network Foundation forum - RSS Reader 문제점]]></title>
		<link>http://forum.tattersite.com/ko/viewtopic.php?id=19</link>
		<description><![CDATA[RSS Reader 문제점 의 최근 RSS 글들.]]></description>
		<lastBuildDate>Wed, 12 Apr 2006 16:31:51 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[RSS 답글: RSS Reader 문제점]]></title>
			<link>http://forum.tattersite.com/ko/viewtopic.php?pid=154#p154</link>
			<description><![CDATA[<p>말씀하신 그대로입니다 <img src="http://forum.tattersite.com/ko/img/smilies/neutral.png" width="15" height="15" alt="neutral" /><br />백업은 차치하더라도 일단 프로그램상으로 처리하게 되면 번거로운건 둘째치더라도 속도가 썩 만족스럽지 못할거예요.<br />그렇다고 같은 피드가 수북수북 쌓이는것도 썩 바람직하지 않으니..</p><p>피드 이름의 임의 지정을 포기하고, 해당 피드쪽에서 지정된 타이틀과 작성자명을 반영하도록 해보면 어떨까요.<br />새로운 피드를 등록하려 하는 경우 xmlURL 을 기준으로 기존 피드로부터 검색한 뒤 동일한것이 있으면 확인후 같은 피드 정보를 얻도록 말이지요.<br />{prefix}Feeds 쪽에 대한 제어와 리더에서 {prefix}FeedItems 를 읽는 부분만 손을 본다면 그나마 무난하지 않을까 하는 생각도 하고 있습니다.</p><p>다중사용자를 위한 rss 리더라는게, 생각보다 참 어려운 문제로군요..</p>]]></description>
			<author><![CDATA[null@example.com (laziel)]]></author>
			<pubDate>Wed, 12 Apr 2006 16:31:51 +0000</pubDate>
			<guid>http://forum.tattersite.com/ko/viewtopic.php?pid=154#p154</guid>
		</item>
		<item>
			<title><![CDATA[RSS 답글: RSS Reader 문제점]]></title>
			<link>http://forum.tattersite.com/ko/viewtopic.php?pid=152#p152</link>
			<description><![CDATA[<p>DB 필드에 손을 전혀 대지 않고 수정하는 방법이 하나 있다면, 피드를 추가할 때 마다 기본적으로 reader라는 사용자로 필드셋이 만들어진 후, 추가한 사용자 이름으로 하나의 필드셋을 더 추가하고, 여기의 피드 데이터에는 조금 전에 생성된 reader라는 사용자의 피드로의 레퍼런스를 대신 저장하는 방법이 있을 것 같습니다. 이 경우, 피드 갱신은 reader라는 사용자에 한해서만 실행되게 하고 다른 사용자의 필드는 reader를 참조하게 하는 방법이 있을 수 있겠네요.</p><p>이 방법이 가장 DB 구조에 손을 안 대고 구현할 수 있는 방법일 것 같습니다. (하지만 역시 참조하는 사용자가 없어질 경우 그 피드데이터를 리더에서도 삭제할 때의 속도 문제점을 해결해야 하고, 또한 백업(지금 리더도 백업되나요?) 시 어떻게 처리할 것인지에 대한 수정도 동시에 들어가야 할 것입니다.)</p><p>일단 아이디어는 이정도까지 입니다. <img src="http://forum.tattersite.com/ko/img/smilies/smile.png" width="15" height="15" alt="smile" /></p><p>...역시 젤 속 편한 것은 사용자별로 같은 피드를 다중으로 받게하는 것일까요 =_=;<br />(하지만 비슷한 성향의 사람들이 서로 같은 서버를 쓸 경향이 많다고 생각해보면 이 경우 정말 비효율적일텐데요...)</p>]]></description>
			<author><![CDATA[null@example.com (inureyes)]]></author>
			<pubDate>Wed, 12 Apr 2006 16:05:31 +0000</pubDate>
			<guid>http://forum.tattersite.com/ko/viewtopic.php?pid=152#p152</guid>
		</item>
		<item>
			<title><![CDATA[RSS 답글: RSS Reader 문제점]]></title>
			<link>http://forum.tattersite.com/ko/viewtopic.php?pid=151#p151</link>
			<description><![CDATA[<p>어렵네요...<br />위와 같은 식으로 사용자마다 겹치는 피드를 따로 업데이트 하게 되면, 예를 들어 사용자가 백여명정도 되는 태터에서 모든 사람이 한 블로그를 등록된 경우 그 블로그로부터는 백여개의 피드 데이터를 따로 읽어 저장하게 됩니다. 그 경우는 db자원의 문제뿐만 아니라 서버에 걸리는 로드 때문에 본질적으로 다중사용자를 위한 리더 구현이 어렵게 될 겁니다.</p><p>현재 model 코드의 reader부분을 들여다보고 있는데,&nbsp; 같은 주소를 다중등록할 수 있게 되어 있고, 각 주소마다 소유자가 한 명씩 저장되게 되어 있군요. 단순히 하나의 주소는 한 번만 등록되게 하고 소유자 필드를 일차원 배열로 바꾼다고 해도, 사용자마다 피드 이름등을 다 다르게 지정할 수 있기 때문에 결국 rss링크를 제외한 모든 부분에 다중 사용자에 대한 모든 처리를 해야 할 것 같습니다. laziel님의 말씀대로 이걸 개선하려면 상당히 힘들겠네요.</p><p>가장 효과적인 방법은 피드 등록정보가 저장되는 부분과 피드를 읽어와 저장하는 부분이 분리되고, 그 사이의 커뮤니케이션을 제어하는 것이 좋을 것 같기는 한데, 사실 구조를 거진 뜯어고치는 법이라 엄두가 안나서 쳐다보고 있는 중입니다.&nbsp; <img src="http://forum.tattersite.com/ko/img/smilies/sad.png" width="15" height="15" alt="sad" /></p><p>...결국 귀찮으면 저 방법이 제일 빠르긴 하겠습니다 ㅠ_ㅠ</p>]]></description>
			<author><![CDATA[null@example.com (inureyes)]]></author>
			<pubDate>Wed, 12 Apr 2006 15:42:59 +0000</pubDate>
			<guid>http://forum.tattersite.com/ko/viewtopic.php?pid=151#p151</guid>
		</item>
		<item>
			<title><![CDATA[RSS Reader 문제점]]></title>
			<link>http://forum.tattersite.com/ko/viewtopic.php?pid=93#p93</link>
			<description><![CDATA[<p>얼마전 리더기능 개선하다가 확인한 것입니다. 이미 패치가 된 것인지 어떤지는 잘 모르겠네요..<br />피드 업데이트시, 가져온 글의 퍼머링크가 {prefix}FeedItems 에 이미 존재하는 경우 업데이트된 것으로 보고 insert 하지 않게 되어있더군요.<br />문제는 같은 URL 이라 하더라도 {prefix}Feeds 와 더불어 {prefix}FeedItems 에 저장된 글이 사용자에게 보여질때는 해당 owner 를 체크합니다.</p><p>예를들어, owner 1 이 domain.com/rss 를 피드 등록해서 {prefix}Feeds 의 id 1 로 저장되었다고 가정합니다.<br />owner 2 역시 domain.com/rss 를 등록하게 되면 이것은 {prefix}Feeds 의 id 2 인 피드로 저장이 됩니다.<br />owner 1 이 먼저 피드 업데이트를 하는 경우, 이 글들은 {prefix}FeedItems 에 feed 1 로 등록이 되지만 이 글들을 owner 2 에서는 가져오지 못합니다. <br />그러나 owner 2 가 업데이트 과정을 진행하면 가져온 글들은 이미 등록되어 있는것으로 인식되어 insert 가 일어나지 않습니다.</p><p>blog/owner/reader/update/index.php 의 316번째 줄에서,</p><p>if($id=fetchQueryCell(&quot;SELECT id FROM {$database[&#039;prefix&#039;]}FeedItems WHERE permalink=&#039;{$item[&#039;permalink&#039;]}&#039;&quot;)){ </p><p>구문을</p><p>if($id=fetchQueryCell(&quot;SELECT id FROM {$database[&#039;prefix&#039;]}FeedItems WHERE feed=&#039;{$feedId}&#039; and permalink=&#039;{$item[&#039;permalink&#039;]}&#039;&quot;)){</p><p>로 바꾸어주어야 합니다.</p><p>다만 이 방법은 db 자원을 낭비할 수 있기 때문에 썩 좋은 방법은 아닙니다. 그러나 permalink 를 기준으로 삼아 자료를 공유하도록 하려면 {prefix}Feeds 를 비롯한 피드 정보 처리 방법을 모두 바꾸어 주어야 하기 때문에 일단 이 정도로도 특별한 문제없이 사용할 수 있습니다.</p>]]></description>
			<author><![CDATA[null@example.com (laziel)]]></author>
			<pubDate>Tue, 11 Apr 2006 20:08:22 +0000</pubDate>
			<guid>http://forum.tattersite.com/ko/viewtopic.php?pid=93#p93</guid>
		</item>
	</channel>
</rss>
