Grade Server Team14. Attention Seeker 2015. 5. 21.

Slides:



Advertisements
Similar presentations
2D 게임 프로그래밍 프로젝트 학과 : 게임 공학과 학번 : 이름 : 최우진.
Advertisements

프로그래밍언어론 TA 윤들녁. 소개 윤들녁 연락처 : 공대 7 호관 4 층 401 호 데이터베이스 연구실 실습 후 날짜 _ 학번.zip 으로.
1 08 시스템 구성도 고려사항 * 웹 서버 클러스터 구성  클러스터 구축은 ㈜ 클루닉스의 Encluster 로 구축 (KT 인증,IT 인증 획득, 실제 클러스터 구축 사이트 200 여곳 )  웹 서버 클러스터는 Dynamic, Static, Image.
영화 예매 시스템 - 많이 봤다이가 ? CSE Corp. PM 송진희 김성욱 김보람 천창영.
I. 프로젝트 동기 II. 프로젝트 목표 III. 파일시스템 IV. 암호화 및 복호화 V. 인터페이스 VI. FBR READ/WRITE VII. 프로그램 흐름도 VIII. 미 구현 사항 IX. 프로젝트 기대효과 X. 프로그램 요구사항 및 팀원 역할분담 XI. 시연 XII.
MS SQL Server 학기, 소프트웨어 설계 및 실험 ( Ⅰ )
뇌를 자극하는 Windows Server 2012 R2
新 연구관리 프로그램 SAP 설치 안내 1. SAP GUI 7.3 설치 2전자증빙 솔루션 설치 배포 :
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
12장. 웹 서버의 설치와 운영.
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
Sep Youn-Hee Han 웹서비스 컴퓨팅 수업을 위한 코딩 환경 준비 Sep Youn-Hee Han
PHP입문 Izayoi 김조흔.
데이터베이스 및 설계 금오공과대학교 컴퓨터공학부 이 이섭.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
웹 로그 데이터를 이용한 다차원 질의 분석 데이터베이스 연구실 석사 3학기 김 백 선.
5장 Mysql 데이터베이스 한빛미디어(주).
Mysql Install on Azure
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
4-1장. MySQL 제13장.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
FTP 프로그램 채계화 박재은 박수민.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
22강. 파일 업로드 - 파일 업로드 라이브러리 설치 - 파일 업로드 프로그래밍 Lecturer Kim Myoung-Ho
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
KHS JDBC Programming 4 KHS
5장 Mysql 데이터베이스 한빛미디어(주).
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
IPAD2(ios 5.0.1) 사용자 메뉴얼 Mobile Service Team.
16강. 스프링MVC 게시판-I 프로젝트 설계 DataBase 구축 프로젝트 생성 Lecturer Kim Myoung-Ho
‘2012년 정보화 사업 교육 버그추적시스템(BTS) 사용 절차 2012, 02.
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
영상처리 실습 인공지능연구실.
Go Lang 리뷰 이동은.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Visual Basic 실습 Project Portfolio 한문 모의고사 생성기
Wi-Fi 취약점 분석 본 프로젝트는 Wi-Fi 환경에서의 취약점 분석을 위한 프로젝트로 다양한 공격방법을 테스트
툴 설치 가이드 PrimeTime SynopsysMentor.
Endnote 이용 안내 2010 중 앙 도 서 관.
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
USN(Ubiquitous Sensor Network)
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
CGI란 무엇인가? CGI(Common Gateway Interface)의 정의
자바로 만든 채팅 프로그램 임경진 조주경 지도교수님 : 이광세 교수님.
오토베이스9 사용자 라이브러리 오토베이스 교육센터 그래픽 모듈 설정과 화면전환에 대하여 자세히 알아본다. <목차>
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
Web & Internet [01] 인터넷 기술의 개요
Level 0 Level 1 Level 2 Level 3 공모전 후기 모음 웹 서비스 1. 웹 페이지 설계 2. 웹 서버 구현
KISTI Supercomputing Center 명훈주
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
3장 JSP프로그래밍의 개요 이장에서 배울 내용 : JSP페이지의 기본적인 개요설명과 JSP페이지의 처리과정 그리고 웹 어플리케이션의 구조에 대해서 학습한다.
JSP Programming with a Workbook
발표자 : 이지연 Programming Systems Lab.
프로그래밍 언어 학습을 위한 가상실습환경 창원대학교 이수현.
maria db JDBC PROGRAMMING 5
웹과 모바일 홈페이지의 이해와 제작 [PHP / MYSQL] 게시판 만들기
어드민 로그인 ID : admin 비밀번호 : 서보테크 1. 제품소개 등록 - MISUBISHI
 6장. SQL 쿼리.
DBMS & SQL Server Installation
임시테이블과 테이블변수 SQLWorld Study Group - 최명환 -.
M.B.TEAM 중간 발표 (5.18) 이 제걸 백 인호.
Presentation transcript:

Grade Server Team14. Attention Seeker 2015. 5. 21.

목표 구현 현황 성능 테스트 코드 분석 및 리팩토링 시연 및 항후계획

목표 동시 접속 2천명 가능한 채점 서버 구현 제출 코드에 대한 다양한 정보 제공 사용자 편의를 위한 기능 개선 및 추가 코드 길이, 사용 시간, 사용 메모리 사용자 편의를 위한 기능 개선 및 추가 랭킹 시스템, 학생관리 시스템 등 개선 통계 시스템, 코드 다운로드 등 기능 추가

기존 채점서버와 비교 각각의 독립된 컨테이너 환경에서 채점 Request에 따른 채점 요청을 동기적 수행 폴더 계층의 세분화 시스템에 문제가 되는 코드를 입력 받아도 컨테이너의 종료, 재생성으로 간단히 처리 가능 Request에 따른 채점 요청을 동기적 수행 폴더 계층의 세분화 제출 코드 다운로드 기능 제공 편의

구현 현황 데이터베이스 설계/구현 웹 서버 UI 및 기능 구현 문제 제출 기능 구현 Docker 이미지 파일 생성 채점 프로그램 완료

구현 현황-개요 . . . Web Server Judging Server Flask (Tornado) Celery Docker Request/ Response Web Server Judging Server Flask (Tornado) Celery . . . Judge Queuing Docker Docker Web Surfing Docker Request Judge Docker Judging Docker Maria DB Redis Judged Result

기존 채점서버와 비교 각각의 독립된 컨테이너 환경에서 채점 Request에 따른 채점 요청을 동기적 수행 폴더 계층의 세분화 시스템에 문제가 되는 코드를 입력 받아도 컨테이너의 종료, 재생성으로 간단히 처리 가능 Request에 따른 채점 요청을 동기적 수행 폴더 계층의 세분화 제출 코드 다운로드 기능 제공 편의

성능 테스트 Jmeter를 이용한 웹 서버 부하테스트 : 500(1000)명의 유저생성 후 동시 접속 테스트

성능 테스트

성능 테스트 과제 제출을 위한 100개의 큐를 넣은 뒤 처리된 속도 측정 과제 제출을 위한 100개의 큐를 넣은 뒤 처리된 속도 측정 ‘Hello, World!’ 기준 100개 : 평균 4초 소요 테스트 환경 : 연구실 데스크 탑 안의 가상환경

코드 분석 및 리팩토링 SonaQube를 이용한 코드 분석 리팩토링 전 분석 결과

코드 분석 및 리팩토링 코드 리팩토링 구조 변경 중복 코드 제거 및 함수 처리 채점 프로그램 내 DB init을 Celery로 이동. 중복 코드 제거 및 함수 처리

코드 분석 및 리팩토링 SonaQube를 이용한 코드 분석 리팩토링 후 분석 결과

코드 분석 및 리팩토링 리팩토링 전/후 성능 비교 ‘Hello, World!’ 1,000 채점의 평균 시간 리팩토링 전 리팩토링 후

UI URL을 통한 접근 처리 엔터

UI 한글/영어 지원 기본언어:한글

시연 Browser : Chrome 기능 : 1. 각 메뉴별 페이지 2. 문제 제출 및 채점 3. 채점 결과 / 제출 기록 확인

향후 계획 각 항목별 성능 테스트 재시도 Cross Browsing Issue 처리 사용자 Log 관리 Container/Celery monitoring 사용 가능 프로그래밍/실제 언어 추가 문제집 생성기능 추가 알림 기능 추가

감사합니다