Skip to content

osamhack2020/Infra_FRIDAY_IRIS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues Apache 2.0 License

I R I S

team logo

개발 배경

음식물 처리비용의 실태

많이 주문해서 돈이 많이 들고 넘치게 만들어서 잔반이 많아지고 그 많은 것을 처리하려고 돈이 또 많이 드는 이런 악순환 어디서 시작된 것일까?

주말 저녁, 병영 식당에 가보면 먹는 사람은 확연히 적은데 만들어져있는 밥은 평소와 변함이 없다.

이로인해 잔식(배식대에 남은 음식)이 많이 발생한다.

하지만 조리병은 공식 식수인원(총원 - 휴가자, 출타자, .... )에 맞게 조리했을 뿐이다.

실제로 섭취하는 인원 수를 제대로 계산하면 해결할 수 있지 않을까?

식수 인원이 매일 다른 일반 식당과 달리 병영식당과 같은 단체급식소는 일정한 식수인원의 패턴만 알아낸다면 효과적인 예측이 가능하다. 이를 실현하기 위해 여러 서비스를 만들고 각 서비스 간의 유기적인 연결을 통해 능동적인 분석 및 예측을 하게 하였다.

기능 설계

Database

HA-Database-Infra

[WEB] QR코드를 이용한 식수현황 체크

API 설명 페이지

컴퓨터 구성 / 필수 조건 안내 (Prerequisites)

  • Docker Engine 버젼 19.03 이상
  • Docker Compose 버젼 1.27.4 이상
  1. Docker 미 설치 시 해당 글을 참고하여 설치
  1. Docker Compose 미 설치시 해당 스크립트 실행
$ cd scripts
$ ./install_docker-compse.sh

실 식수인원 체크 서비스

기술 스택 (Technique Used)

front-end

  1. 공통사항
  • Flask : 웹 프레임워크
  • SQLAlchemy : DB ORM
  1. 실 식수인원 체크 ( attendance_check )

Database

  • Mysql ( >= 8.0)

Load balancer

  • HA Proxy
  • SQLAlchemy 객체가 bind할 mysql uri를 쿼리 전에 지정해 주어 R/W splitting 구현

설치 안내 (Installation Process)

1-1. Database 구축 ( at INFRA_FRIDAY )

사용될 환경이 WSL 또는 Codespace일 경우 해당 브랜치의 파일로 작업하시면 됩니다.

$ cd database
$ docker-compose up -d --build

1-2. Database 구축 ( at Web_FRIDAY )

$ cd scripts
$ ./run_infra.sh
  1. 식수현황 체크 app 실행하기 ( at Web_FRIDAY )
$ cd attendance_check
$ docker-compose up -d --build

프로젝트 사용법 (Getting Started)

실 식수인원 체크 서비스

우선 회원번호로 QR코드를 만들고 각 회원에게 배포합니다.

그후 아래 과정을 통해 인식시키면 됩니다.

자동으로 시간대를 인식해서 기록되기 때문에 해당 기기의 시간이 잘 설정되있는지만 확인해주시면 됩니다.

qr인식화면

  1. Endpoint ( url/qr/scan)로 접속

  2. 후면 카메라에 QR코드를 비추기

  3. 5~10초 후 DB에 기록된 후 나오는 자신의 회원번호 메시지를 보면 인식 완료

팀 정보 (Team Information)

저작권 및 사용권 정보 (Copyleft / End User License)

License

This software is licensed under the Apache 2 license, quoted below.

Copyright 2020. Team IRIS

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this project except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


JsQRScanner

https://github.com/jbialobr/JsQRScanner

Apache License 2.0

About

딥러닝을 활용한 잔반 감소 인프라 (Food waste Reduction infra using deep learning)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.1%
  • Dockerfile 2.2%
  • Shell 0.7%