본문 바로가기

기록했다/개발

오유 댓글 알리미, oNotify (v.1.0.1)








사실 oNotify의 기능들은 OUView 어플리케이션을 제작하며 넣으려 했던 기능들이었는데, OUView 개발 계획을 연말까지 미룸에 따라 (귀찮아짐) oNotify라는 라이트 버전을 먼저 공개하게 됐다.


짧게 줄여 부르면 오노.


[기존 댓글 알림 시스템들의 문제점]

글을 크롤링한다. 여기서 가장 큰 문제가 발생한다. 여태까지 나왔던 댓글 알림 시스템들은, 등록한 글들을 읽어와서 댓글 갯수 등으로 비교한다. 그럼 오유는? 상당한 서버 부하를 받게 된다.

작성글을 읽어오고 + 달린 댓글들까지 제공하고 + 이걸 짧은 시간동안 반복 = 서버 부하.


[그럼 오노는 무엇이 다른가]

오노는 완벽히 "서버/웹 개발자의 입장에서 바라본 크롤링 방식"을 사용한다.

1. 오유에는 cloudflare 기술과, 몇몇 페이지에는 게시판 캐싱이 걸려 있다.

2. 이 캐싱 걸린 페이지를 요청하면 cloudflare에서 전달해주므로 + 캐싱이므로 서버 부하가 다이나믹하게 줄어든다

3. 오유의 댓글 로드 알고리즘을 완벽히 분석하고 만들어서, 딱 필요한 만큼의 댓글만 요청해서 받아온다 (추가된 댓글입니다. 방식)

4. HTML을 웹뷰나 기타 phantomjs 등 리소스를 로드하는 방식이 아닌 스트링을 파싱하는 파서를 사용하여 페이지 용량 이상의 용량은 사용되지 않는다.


[그럼 오노는 오유에 부하가 가지 않는가]

"상대적으로" 부하가 가지 않는다. 절대 부하가 걸리지 않는다고 하기엔 크롤링 자체가 주기적으로 사용자 액션 없이 자동으로 긁어오는 것이라, 위험하다.


[그럼 쓰면 안되지 않느냐]

오노는 Fail-safe kill switch를 내장하고 있다. 기본세팅으로 60초에 한번씩 캐싱걸린페이지 한개를 로드하게 세팅되어 있는데, 이 상태에서 오노 앱 조작이 없는 상태로 2시간이 넘으면 오노 앱의 모든 크롤링 기능은 정지되며 차후 앱에서 조작시에 크롤링을 다시 시작한다. 실수로 켜놔도 오유에 무한한 부하가 걸리지 않는다. 물론, 오랫동안 댓글이 달리지 않았는지 확인하기 위해 앱이 정지되기 전에 소리로 알려준다.


그래서 한줄요약. 오노는 다른 크롤링 방식 댓글알림 어플리케이션보다 부하량이 적고 빠르고 크로스 플랫폼이다 (맥, 윈도우 지원. 리눅스는 테스트환경이 없으나 크로스 플랫폼으로 개발해뒀으니 작동할거라 생각한다).



아직 버전 1인만큼 부족하고 뭔가 아쉬운 부분이 많지만 그래도 일단 배포를 해야 버그 리포팅을 받으니 (...)



[다운로드]

다운로드는 dist 폴더 링크에서도 할 수 있고, 아래 링크를 눌러서도 가능하다.


 32bit

 64bit


Mac OS X

Windows

Linux



Mac OS X

Windows

Linux



DIST 폴더 링크 (위 링크 동작하지 않을 시 클릭)



----

아래는 oNotify 앱에서 업데이트를 수행하기 위한 정보이다.


최신버전: 1.0.1

다운로드 링크: http://crisp-surplus.tistory.com/tag/oNotify_Download



[ChangeLog]

v.1.0.1

  1. 알림쪽 오류 해결 + Native 알림으로 시스템 변경
  2. 내부 구조 미묘한 변경, 파일스트림 없게 수정함 (로컬 스토리지 사용)
  3. 베스트/베오베 복사와 본인삭제 등 다양한 코멘트 대응

v.1.0.0

  1. initial