글쓴이 보관물: xguru

새로운 형식의 RSS 를 기대한다

세력을 계속 확장해가고 있는 VoIP 프로토콜 SIP에는 Subscribe/Notify 라는 메시지가 있습니다. 기본 스펙에 나중에 추가가 된것으로 , SIP 를 이용한 IM(Instant Messaging)에 이용이 예상되는 확장이죠.

메시지 구동방식은 아래처럼 간단합니다.
Subscribe/Notify 동작 Flow

SIP Agent 끼리 서로 등록을 하고 , 자신의 상태변경사항이나 메시지 전송시, 자신을 Subscribe 한 Agent 들에게 상태변경을 통보하는 일반적인 메신저 처리 방식이죠.

RSS Feed 는 자신이 구독한 사이트에 대해 계속적인 Polling 이 이루어 지므로, 아무래도 네트웍 오버헤드가 발생하게 되지만, Subscribe 를 통해 정말로 내 RSS 를 구독하겠다고 신청한사람에게만 Update 발생시 Notify 를 해주게 된다면 , 트래픽 감소 효과가 있지 않을까 합니다.

최근에 BlogLines 가 REST 형식의 웹서비스를 제공한다고 발표하면서, RSS Bandwidth BottleNeck을 감소키 위한 RSS Meta Site 로 이용토록 하겠다고 했는데요.
→ 관련글 : Alphageek 님 “Bloglines 의 Web Service”

이 역시도 Bloglines 에 의존하게 되고, 거기다 마찬가지로 소용량이지만 주기적인 트래픽을 발생하게 되므로, 아예 각각의 WebSite 에도 Subscribe/Notify 형식의 RSS 구독신청기능을 두면 트래픽을 최소화 할수 있겠죠. 그러고보니 조그에서 관련사이트에 이벤트 알리는것도 비슷한 형식이군요.

음.. 그냥 떠오른 생각을 정리해 봤는데, 이런거에 관련된 표준은 없나 한번 알아봐야 겠습니다.

참고 : EarthLink 에서 SIP Subscribe/Notify 프로토콜 기반의 P2P 프로그램인 SIPShare 라는것을 개발했습니다.
아직 proof-of-concept 수준이지만 시도는 재미난거 같습니다.
→ 관련글 : Harris 님의 All about IT Trends : SIP P2P Service is coming

안에 들여다 보지는 않았지만 아마도 서버에 Subscribe 한후 다시 Subscribe 를 통해 원하는 파일쿼리를 날리면 Subscribe 된 User 들에게 Notify 를 이용해서 묻던지 하는 방식일거 같네요.

확실히 이 Subscribe/Notify 형식이 아주 유용한거 같습니다. 이젠 P2P 까지 이용되는군요.

FireFox Extension 쉽게 압축하기 및 설치팁

불여우용 Extension 을 개발하면서 제일 귀찮은것중 하나가 압축을 두번 해야 한다는것
chrome 폴더를 jar 로 묶고, 이걸 다시 install.rdf 와 한번 더 묶어야 하는데..
이걸 한방에 처리하는 멋진 배치 파일 하나

다양한 extension 을 개발하고 , Tutorial 도 작성한바 있는 Roachfiend 의 튜토리얼에서 가져왔음.
(처음에 본것은 모질라 포럼이었던거 같은데.. 아마도 자기 튜토리얼에 다시 인용한듯)

먼저 프리웨어 압축유틸리티인 7-Zip 을 설치한후, 설치 폴더에 있는 7z.exe 를 패스가 걸린 경로에 복사(C:\Windows\System32 같은곳)

그 다음엔 아래와 같은 내용의 build.bat 배치파일을 만들고 이를 install.rdf 가 있는 익스텐션 개발 폴더의 루트에 복사.

set x=%cd%
md build\chrome
cd chrome
7z a -tzip “%x%.jar” * -r -mx=0
move “%x%.jar” ..\build\chrome
cd ..
copy install.* build
cd build
7z a -tzip “%x%.xpi” * -r -mx=9
move “%x%.xpi” ..\
cd ..
rd build /s/q

그다음 build.bat 한번 실행으로 압축완료! -_-b

7-Zip 대신 국산유틸리티를 써보려고 했는데.. 커맨드라인 모드를 지원하는것이 없어서 포기 -_-;
빵집이 좋은데.. 빵집에도 커맨드라인 모드 지원해 주면 안되나 ^^;

그리고 개발팁 하나더.. 개발버전 익스텐션을 재 설치하기 귀찮을때는..
C:\Documents and Settings\{사용자ID}\Application Data\Mozilla\Firefox\Profiles\{설치마다다름}\extensions\{UUID}
여기 찾아서 강제로 chrome 안에 jar 파일 복사한후 재 실행해도 됨 -_-;

그러니까 install.bat 은 요런식이다.

set x=%cd%
md build\chrome
cd chrome
7z a -tzip “%x%.jar” * -r -mx=0
move “%x%.jar” C:\Documents and Settings\{사용자ID}\Application Data\Mozilla\Firefox\Profiles\{설치마다다름}\extensions\{UUID}\chrome
cd ..
rd build /s/q