크롤링 API 서버 개발#1 (기획 및 기본 서버 설정)
2022. 5. 9. 11:18ㆍTech Note
728x90
프론트엔드, 백엔드, 엔진 분야가 각 1명씩 모여서 프로젝트를 진행하게 되었다.
프로젝트 자체는 굉장히 심플한데, 현재 인기있는 키워드를 각종 포털에서 모아서 보여주는 것이다.
해당 기능을 수행하기 위해 셋이서 어떻게 분담을 해야할지 고민을 해보았다.
대략적인 프로세스, 비즈니스 로직은 아래와 같이 진행 될 것으로 예측하였다.
프론트엔드 6번
백엔드 1번, 2번, 5번
엔진 3번, 4번
으로 분담하였고, 내가 맡은 부분은 백엔드 파트가 될 것 같다.
웹 크롤링이 가장 주요 업무일 듯하고, 데이터양이 많을 것으로 추측되기 때문에 크롤링된 데이터는
mongodb등의 빅데이터 처리가 가능한 db를 사용할 예정이다.
express 서버를 구동하는 방법은 굉장히 간단하다.
'use strict'
const express = require('express')
const app = express()
// 라우팅은 해당 파일을 통해 진행한다.
const routes_path = require('./routes/index.js')
// CORS 이슈를 해결하기 위해 설치
const cors = require('cors');
// API 자동 문서화를 위해 설치해준다.
const { swaggerUi, specs } = require('./src/swagger.js')
// request * 허용
const runType = "DEV"
// 모든 IP에서 요청 할 수 있도록 설정
if(runType == "DEV"){
app.use(cors())
}
// Post 요청을 사용하기 위해 미들웨어 사용.
app.use(express.json());
app.use(express.urlencoded({ extended : true }));
app.use('/', routes_path);
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(specs, { explorer:true }))
// 서버 실행
app.listen(5000, function(){
console.log("start! express server on port 5000")
})
module.exports = app;
'Tech Note' 카테고리의 다른 글
도커를 활용한 서비스 배포하기 (save, load, export, import) #4 (0) | 2022.06.16 |
---|---|
도커를 활용한 서비스 배포하기 (네트워크 설정 및 컨테이너 생성) #3 (0) | 2022.06.16 |
도커를 활용한 서비스 배포하기 (image search, pull) #2 (1) | 2022.06.15 |
도커를 활용한 서비스 배포하기 (rpm 설치) #1 (0) | 2022.06.08 |
크롤링 API 서버 개발 #2 (크롤링, Axios, Cherrio) (0) | 2022.05.15 |