반응형

전체 글 160

비슷한 차트 탐색 프로젝트 - 2. Flask, Django, Spring 어떤걸 쓸까?

2023년 9월의 이야기입니다. 제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(5년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. https://www.similarchart.com/ similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208 어떤 프레임워크를 사용할까?사용자에게 응답 결과를 보여주기 위해서는 서버가 필요합니다. 서버를 개발하기 위해서는 웹 애플리케이션 프레임워크를 사용해야 합니다. 제 프로젝트에 적용을 고려한 프레임워크는 Flask, Django, Spring 3가지가 있었습니다. 각자 장단점이 뭐고 저에게 어떤 것이 적합할지 조사해 보았습니다. 우선 제 프로젝트의 아키..

프로젝트 2024.02.17

비슷한 차트 탐색 프로젝트 - 1. 시간을 줄이기 위한 여러 실험과 테스트

2023년 9월 중순 이야기입니다. 제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(5년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. https://www.similarchart.com/ similar chart finder 내 종목의 차트는 상승하는 차트일까요? 3.35.36.208 전 종목 탐색으로 인해 응답시간이 너무 길다 앞선 포스팅에서 사용자가 '삼성전자'의 32거래일치 차트와 비슷한 과거 차트를 찾아달라고 요청하면 요청 한 번에 최소 4억 번 이상의 연산이 필요하고, 2GB 이상의 메모리가 필요하다고 했습니다. 부가적인 로직들도 고려하면 이보다 훨씬 시간과 자원을 많이 소모할 것입니다. 1초에 2천만 번 정도의 ..

프로젝트 2024.02.17

비슷한 차트 탐색 프로젝트 개요 - 처음에 막막했던 부분들(23.12.21)

https://www.similarchart.com/ 비슷한 차트 검색기전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요?www.similarchart.com  구현 가능할까..? 이 프로젝트가 진짜 가능할까..?'나는 이런 웹사이트를 만들어보고 싶어', '나는 이런 앱을 만들어보는 게 꿈이야' 등 개발자들은 이런 생각을 해보지 않은 사람은 드물 것입니다. 그런데 실제로 구현까지 이어지기는 매우 어렵죠. 실제로 구현이 가능한 건지도 불투명할 것 같네요. 일단 저도 '비슷한 차트를 탐색하는 웹사이트를 한번 만들어보자'로 결정했습니다. 그런데 처음에 이 프로젝트가 진짜 가능한지, 가능하더라도 비용이 얼마나 들지 감도 잡히지 않았습니다. 당시의 저는 AWS, Dock..

프로젝트 2024.02.17

3-2 종강! 소감, 얻은것, 향후계획 (23.12.20)

졸업이 가까워진 것을 느낀다.. 이번 학기는 지금까지의 학기들과는 느낌이 많이 달랐습니다.일단 훨씬 편했습니다. 기존에는 매번 6 전공을 수강하느라 죽다 살아났었는데, 이번에는 4 전공에 1 교양을 수강하였습니다. 참고로 이제 졸업까지 2 전공밖에 남지 않았네요. 게다가, 이번에 배우는 과목들은 제가 어느 정도 기본 지식이 있는 상태로 수강하였습니다. 미리 커리큘럼을 학습하기도 했고, 아무래도 고학년이다 보니 이것저것 주워들은 것들이 많이 쌓여있던 것 같습니다. 이번 학기에는 데이터베이스, 정보검색과 웹, 머신러닝을 수강하였는데, 데이터베이스는 sqld를 취득한 후이고 정보검색과 웹은 반정도는 html css javascript를 배웠고, 머신러닝도 반 정도는 들어봤던 내용이 나왔습니다. 학교 공부가 이..

잡담 2024.02.17

프로젝트 주제 변경(딥러닝 주가예측 -> 비슷한 차트 검색)

제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. 비슷한 차트 검색기 similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208  딥러닝? 좋기는 한데.. 8월에 딥러닝(CNN)으로 주가를 예측하는 모델을 만들어보았습니다. 분명 모델이 유의미한 패턴을 학습하여 유의미한 결과를 얻을 수 있었지만, 이대로 프로젝트를 진행하기에는 뭔가 부족한 느낌이었습니다. 제가 느낀 애매한 점은 다음과 같습니다.1. 수익률? 분명 괜찮긴 한데..검증 결과 괜찮은 수익률을 보여주었지만, 그냥 생각 없이 나스닥에 투자하는 것이 더 확실하고(몇십 년 역사적으로 검..

프로젝트 2024.02.17

웹 아키텍처15 - Gateway Interface(CGI, WSGI) - Spring과의 관계?

제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(5년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. 비슷한 차트 검색기 similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208  Gateway Interface의 이해 저는 이번학기에 대학에서 데이터베이스 수업을 수강하고 있습니다. 그런데 중간고사까지는 데이터베이스에 관해 배우다가 중간고사가 끝나고 갑자기 데이터베이스를 배우다 말고 웹과 여러 아키텍처들을 배우고 있습니다. 제가 이제까지 블로그에 정리한 내용이 대부분이라 그러려니 하고 들었습니다. CGI라는 것을 제외하고 말이죠. 분명 어디선가 들어본 것 같은 단어입니다. 자세히 알아보니 ..

웹 아키텍쳐 2024.02.17

웹 아키텍처14 - 고가용성을 위한 시스템과 전략 (23.11.14)

제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(5년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. 비슷한 차트 검색기 similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208  웹 서비스를 끊기지 않고 제공해 보자 살면서 한 번쯤은 자기가 사용하는 애플리케이션, 웹사이트, 게임 등이 점검 중이거나 의도치 않게 서버가 다운된 것을 본 경험이 있을 것입니다. 저도 웹 서비스를 제공하려다 보니 이런 부분들이 꽤 신경 쓰이네요. 특히 갑자기 많은 사용자가 몰리거나 특정 사용자가 악의적으로 무수한 요청을 보내 서버가 다운되는 경우가 제일 걱정됩니다. 제가 하고 있는 프로젝트에는 메모리 누수가 발..

웹 아키텍쳐 2024.02.17

웹 아키텍처13 - CDN(Content Delivery Network) (23.11.13)

제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. 비슷한 차트 검색기 similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208  CDN의 이해 CDN은 웹이나 네트워크 공부를 하면서 종종 들어본 것 같습니다. 개념 자체는 캐싱이라 이해하기 쉬웠습니다.(캐싱은 안 쓰이는 곳이 없네요.) 하지만 막상 프로젝트에 도입해 보려고 봤더니, 생각보다 단점들이 많이 보이는 것 같습니다. 오늘은 CDN에 대해 더 자세하게 알아보려고 합니다. 1. CDN이란?CDN은 Content Delivery Network의 약자로, 사용자에게 웹 콘텐츠를 효율적으..

웹 아키텍쳐 2024.02.17

웹 아키텍처12 - 분산 데이터베이스 시스템(MongoDB) MySQL과 뭐가달라?

제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. 비슷한 차트 검색기 similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208  분산 데이터베이스 시스템 이해 저는 현재 프로젝트에 MySQL을 사용하고 있습니다. SQLD도 그렇고 대학 수업들도 그렇고 아무래도 대부분 전통적인 데이터베이스 시스템을 다루어 분산 데이터베이스 시스템을 접할 기회가 없었습니다. 하지만 분산 데이터베이스 시스템도 요즘 현업에서 많이 사용한다고 들었습니다. 그래서 오늘은 분산 데이터베이스 시스템, 특히 그중에서도 많이 쓰인다는 MongoDB에 관해 공부해 보겠습니..

웹 아키텍쳐 2024.02.17

웹 아키텍처11 - 오케스트레이션 도구와 Kubernetes

제 프로젝트는 사용자가 특정 차트를 고르면, 코스피 코스닥 전 종목의 과거(5년) 차트들을 모두 탐색하여 가장 유사한 차트 10개 정도를 골라 사용자에게 보여주는 것이 목표입니다. 비슷한 차트 검색기 similar chart finder내 종목의 차트는 상승하는 차트일까요?3.35.36.208  오케스트레이션 도구의 이해Kubernetes는 Docker를 공부하면 항상 같이 언급되는 오케스트레이션 도구인 것 같습니다. 하지만 저는 아직 Kubernetes를 컨테이너를 관리해 주는 툴로만 알고 있습니다. 제 프로젝트에는 특정 시간에 특정 컨테이너를 실행해야 하는 로직이 필요합니다. 지금은 리눅스에 있는 crontab이라는 기능을 사용하고 있지만, 기능이 웹 애플리케이션에 의존하지 않고 리눅스 서버에 의존한..

웹 아키텍쳐 2024.02.17
반응형