1. 목적
웹에서 현재 컴퓨터(장비) 사용자를 실시간으로 확인하기 위하여. 현재는 단톡 방에 누가 사용 중인지 묻고, 사용자가 없으면 사용하고 아니면 줄 서서 사용. 현재 사용자 말고 다른 사람들에게는 연락이 안 가도 되는 상황.
2. 방법
a. 클라이언트 : 현재 사용자를 확인하여 주기적으로 서버에 업데이트하기 (C#)
b. 서버 : 클라이언트가 주기적으로 보내주는 정보를 저장하고 웹에 뿌려주기 (Node JS)
3. 공부
a. 클라이언트 : background에서 돌리려고 윈도우 서비스 프로그램으로 시도해봤다. 하지만 서비스 프로그램은 일반 앱과 달리 limitation이 많아서 중간에 포기하고 Winform base로 만들고 시작하자마자 창을 숨겨서 background에서 돌도록 했다. 혹시나 재부팅을 했을 때 자동으로 실행될 수 있도록 시작 폴더에 해당 프로그램 링크를 넣어두었다.
b. 서버 : 어떻게 해야 웹서비스를 만들어서 필요한 정보를 받아서 뿌려줄 수 있을지 많이 찾아봤다. 집에 있는 시놀로지에 웹서버를 돌리는 것부터 무료로 호스팅 해주는 부분까지. 사실 이 부분 조사하면서 시간이 많이 걸렸다. 결국에는 Node JS를 찾았고 무료 호스팅 해주는 heroku라는 플랫폼도 찾았다.
4. 현 주소
a. C# : 심오한 알고리즘을 짜야하고 자료구조를 사용해야 하는 그런 것만 아니면 간단한 부분은 구글링 해서 충분히 만들 수 있는 상태
b. Node JS : 전혀 모름. 어떻게 시작해야 할지 IDE는 무엇을 사용해야 하는지... 구글링 및 유튜브에서 많이 찾아 봄.
5. 환경
a. Visual Studio 2017에서 C#
b. Visual Studio Code에서 Node JS
c. 호스팅 플랫폼 heroku
6. 결론
클라이언트 쪽에서 몇 번 서버 쪽으로 HTTP GET request 보내고 계속 Time out 나서 서버에 업데이트가 안 되던 부분을 오늘 해결하였다. 현재 잘 동작하고 있다. 내일 사람들에게 공유해서 사용하도록 해봐야겠다.
웹 쪽을 처음 했는데 상당히 메리트가 있는 부분 같다. 바로바로 결과물이 보이니 상당히 기분도 좋고 성취감도 있다. 그만큼 개발자들도 많겠지. 그래도 제대로 기초만 배워두면 나중에 유용하게 쓰일 것 같다.
7. 레퍼런스
1. github 사용 방법
nolboo.kim/blog/2013/10/06/github-for-beginner/
2. heroku app deploying
devcenter.heroku.com/articles/getting-started-with-nodejs#deploy-the-app
3. simple-app node js example
github.com/heroku/node-js-sample.git
코드와 방법은 각각 새로운 포스팅에서 내용 공유를 하려고 한다. 초보자에게 도움이 될 수 있기를..
'공부하며놀자 > 프로그래밍' 카테고리의 다른 글
Visual Studio .net framework gui editor designer view 가 안 열릴 때 (0) | 2022.04.27 |
---|---|
Visual Studio Code Python pip install 설정하기 (0) | 2021.12.15 |
[leetcode] 20. Valid Parentheses (0) | 2021.01.22 |
[leetcode] 14. Longest Common Prefix (0) | 2021.01.16 |
[leetcode] 13. Roman to Integer (0) | 2021.01.16 |
댓글