Bisue / 2023-hanium-ict

API 자동검수를 기반으로 한 데이터 거래 플랫폼

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


데이터유통 API 플랫폼

2023 한이음 ICT 자율형

API 자동검수를 기반으로 한 데이터 거래 플랫폼

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

TEAM

구분 이름 역할 github
팀장 박성준 Frontend https://github.com/SJ-PARKs
팀원 박민제 Backend https://github.com/Park-MinJe
팀원 변찬혁 Frontend https://github.com/BIsue
팀원 송민하 Frontend, Backend https://github.com/sminha
팀원 이승헌 Backend https://github.com/seungheonL

About The Project

2022년 기준 국내 데이터산업 시장 규모 중 데이터 판매 및 중개 서비스업은 8.8%로, 데이터산업 시장 규모와 중요성에 비해 데이터 거래량은 현저히 떨어짐. 최근 공공 데이터나 오픈 데이터가 활용되고는 있지만, 접근성이 용이하지 않고 어떤 종류의 데이터가 존재하는지 사전에 세부적으로 알기 어려움. 데이터 거래 플랫폼이 존재하지 않는다면 판매에 어려움을 겪을 가능성이 높고, 자동화된 시스템의 부재는 실제로 데이터가 판매되기까지 소요되는 시간을 길게 만들어 불편함을 야기할 수 있음.

본 프로젝트는 기존 데이터 거래 플랫폼에선 제공하지 않던 API 명세 자동 검수 기능을 갖춘 데이터유통 API 플랫폼을 개발하여 국내 데이터 거래 활성화에 기여하고자 하는 것을 목표로 함.

본 애플리케이션은 과학기술정보통신부 정보통신창의인재양성사업의 지원을 통해 수행한 ICT멘토링 프로젝트 결과물입니다.

(back to top)

Built With

  • Next

(back to top)

Getting Started

Installation

Frontend

cd client/

npm install

# copy sample .env
cp .env.example .env
# edit environment variables
vi .env

# start development build (watching)
npm run dev
# or start production build
npm run start
# or using pm2
pm2 start ecosystem.config.js

Backend

cd server/

# kill current process using 8080 port
# and start spring boot application
./restart.sh

API Proxy Server

cd proxy-api-server/

# kill current process using 8090 port
# and start spring boot application
./restart.sh

Mock API Server

cd mock-api-server/

node app.js

(back to top)

Usage

Connect to AWS EC2

ApiPlatform instance

ssh -i "ssh_key.pem" ubuntu@ec2-3-34-215-14.ap-northeast-2.compute.amazonaws.com`

proxy-api-server-1

ssh -i "proxy-api-server-key.pem" ubuntu@ec2-43-201-165-63.ap-northeast-2.compute.amazonaws.com

proxy-api-server-2

ssh -i "proxy-api-server-key.pem" ubuntu@ec2-3-37-40-61.ap-northeast-2.compute.amazonaws.com

How to use locust base load test

  1. Check your python version is 2.7 or later than 3.3
  2. If you haven't installed locust, write script below
    pip install locust or pip3 install locust(if your python version is over 3.3)
  3. After locust installed, you can check you locust version as script below
    python -m locust -V
  4. Before test, you should check your target spring server and linked database server is on your local environment to avoid heavy AWS fee.
  5. To run load test, select one of scrips below.
    5-1. Test for api-platform server: python -m locust -f locustfile_apiplatform.py
    5-2. Test for api-platform server: python -m locust -f locustfile_proxyapiserver.py
  6. If you successfully wrote your locust python script, you can see messages like capture below
    [date time] {user}/INFO/locust.main: Starting web interface at http://0.0.0.0:8089 (accepting connections from all network interfaces)
    [date time] {user}/INFO/locust.main: Starting Locust 2.16.1`
    for more information, you can check https://locust.io/

(back to top)

About

API 자동검수를 기반으로 한 데이터 거래 플랫폼


Languages

Language:SCSS 73.5%Language:Java 17.1%Language:TypeScript 8.7%Language:Python 0.3%Language:JavaScript 0.2%Language:CSS 0.2%Language:Shell 0.1%