소설 연재 플랫폼 개발 일지 007
November 12, 2022
배운 것 #
- wallmart에서 개발한 graphQL clojure 구현체 lacinia. 그린랩스에서도 이것을 쓰고 있다.
- graphQL은 정말 편하다. 성능? 성능 이슈에 대한 글도 있지만 DB를 그래프DB를 쓰면 신경쓰지 않아도 되지 않을까 하는 생각이 든다. RDB에서는 복잡한 쿼리를 한 번에 수행하는데 지수 시간이 걸리지만 그래프DB는 상수 시간으로 쿼리할 수 있다. 어쨌거나 모바일 우선 앱을 만들고 싶기 때문에 graphQL은 좋은 선택이 될 것 같다.
Web client <-> http-server <-> graphql resolver <-> docker(datalevin)
- Get users IP addr and it’s geo-location -> store it into datalevin.
- When user likes or set alarm on book, copy data to CDN.
- When user starts to read, fetch and store next episode into clients in-memory db.
추천 알고리즘은 대충 어떤건지 이해가 되는데 별점 테러를 악의적으로 한다거나 하는 악성 유저들을 탐지하는 것은 어떻게 한다는 건지 모르겠다. 대충 IP 주소를 저장해두고 같은 주소에서 다른 아이디로 접속하여 동일한 행동을 한다면 차단을 하는 식인가?