sequelize 3

[NodeJS/Redis] 캐시를 사용한 리스트 전달하기

최근에 프로젝트를 진행하면서 구현했던 기능 중 하나에 대해 포스팅하고자 한다. 해당 기능을 구현하는데 사용된 것은 Redis, MySQL, NodeJS 이렇게 3가지가 주된 기능을 구현하는데 사용됐다. 개요는 위와 같고, 실제 구현된 기능에 대한 메인 요구사항은 다음과 같다. 관리자 페이지에서 등록된 이벤트 중 진행중인 이벤트 리스트는 상위에서 랜덤한 리스트 배열로 전달해주시고, 이외에 신청한 이벤트/종료된 이벤트는 아래에서 무한스크롤로 할 수 있도록 해주세요. 이 기능에 대해 등록되는 이벤트들의 개수는 큰 변화가 없을 것이고 빈번한 수정이 일어나는 리스트 데이터가 아니기 때문에 캐싱을 하여 작업하도록 설계했고, 이외에 무한스크롤에 해당하는 데이터는 실제 RDB에 접근하여 전달하도록 설계했다. 구현한 순..

IT/프로그래밍 2021.05.04

[NodeJS] Sequelize에서 JSON 안에 JSON 처리는 어떻게 해?

간만에 또 이렇게 글을 써 본다. 내용은 매우 간략하지만 처음 경험하는 것이라서 이 부분으로 인해 열심히 삽을 팠다! 사용 라이브러리 Sequelize : 6.6.1 Node: 12.13.1 RDS: MySQL Aurora 위와 같은 환경에서 아래와 같이 테이블을 생성했다. Schema sequelize.define( 'test' { name: { type: DataTypes.STRING(10), allowNull: false, comment: '테스트 테이블내 컬럼, 이름' }, contents: { type: DataTypes.JSON, allowNull: false, comment: '테스트 내용', }, }; 위와 같은 스키마를 정의했다는 가정하에 데이터는 아래와 같다. { name: '테스트',..

IT/프로그래밍 2021.04.15

좌충우돌 Sequelize 5.x 에서 Sequelize 6.x 로 마이그레이션

회사에서 Sequelize 5.x -> Sequelize 6.x 로 마이그레이션을 해보려던 중 마주쳤던 라이브러리 지원 함수 삭제 등으로 인한 이슈가 있었다. 오늘은 이에 대해 한 번 써보려한다. 회사에서 5.x -> 6.x 을 진행하면서 생겼던 내용에 대해서만 기술하기 때문에, 이외에 다른 내용이 있다면 댓글로 작성해주시거나 하면 다른 분들에게도 공유될 수 있어 좋을 것 같습니다 ^오^ 우선적으로 회사에선 기존에 Sequelize 4.x 와 Sequelize 5.x 를 각 프로젝트에서 쓰고 있었다. 하지만 지금의 Sequelize 버전은 몇이지..?! 무려 6버전이다.. 자잘한 Minor 버전을 제외한다고 해도 라이브러리 버전이 차이가 난다. 그리고 NodeJS 버전도 낮았기에.. 하하.. 라이브러리 ..

IT/프로그래밍 2021.03.31
반응형