SlideShare a Scribd company logo
1 of 23
MSRDS 플랫폼 소개와  게임서버 개발 플랫폼 ,[object Object],지에이치호프아일랜드 구본수
MSRDS 플랫폼 소개 ,[object Object],msrds  로봇개발시 하드웨어 구성이나 테스트 비용 상호 운용성 비용이 많이 드는것을 해결하고자 ms 에서 소프트웨어로  가상환경을 제공하여 쉽게 만들고 테스트 할수있게 하는 로봇개발 플랫폼이다.
MSRDS 플랫폼 소개 ,[object Object]
DSS(Decentralized Software Services )
VPL(Visual Programming Langage)
[object Object],동시처리 및 조정 기술 (CCR) 은 고도의 동시성, 쓰레스, 락, 세마포어를 사용하지 않는 메시지 조작을 통한 강력한 오케스트레이션을 지원하는 메시지 기반 프로그래밍 모델입니다.  CCR은 비동기 오퍼레이션(asynchronous operations) 관리와 동시성 처리 및 병렬처리 하드웨어와 부분적 실패(partial failure)를 처리를 손쉽게 하는 서비스기반 애플리케이션입니다. 또한 애플리케이션 디자인에서 소프트웨어 모듈이나 컴포넌트가 느슨히 연결(loosely coupled)되게 합니다. CCR은 각각이 컴포넌트들이 런타임 환경과 다른 컴포넌트들에 관한 최소한의 가정하에서 독립적으로 개발될 수 있게 합니다.  이 접근법은 디자인 단계에서부터 프로그램에 관한 개념을 바꾸며 보다 손쉽게 동시성, 실패, 고립화(isolation)를 일관되게 처리할 수 있게 합니다.  CCR은 .NET 2.0. Common Language Runtime (CLR)을 위한 여러 프로그래밍 언어를 지원합니다.
[object Object],[object Object]
Arbiter.Receive -> Receiver 인스턴스를 생성
[object Object],[object Object]
[object Object],[object Object]
[object Object],[object Object]
(배타적 패킷핸들링) Class Collision { [Exclusive] Void Add() [Exclusive] Void Remove() [Concurrent] Void Update() }
[object Object]
DEMO ,[object Object]
Yield 동작구조
[object Object],분산화된 소프트웨어 서비스 (DSS)는 기존의 웹기반 아키텍쳐(REST로 알려진)와 여러 웹서비스 아키텍쳐의 주요 요소를 결합한 가벼운 서비스 기반 애플리케이션 모델입니다. 이 애플리케이션 모델은 서비스를 상태(state) 와 operation들의 집합으로 정의하며, 구조화된 데이터 조작, 이벤트 알림(notification)과 서비스 조립을 추가한 HTTP기반 애플리케이션 모델의 확장으로 REST model하에서 DSS를 구성합니다. DSS의 주된 목표는 단순성, 상호운용성과 느슨한 연결(loose coupling)을 증진함 입니다.  이는 특히 서비스가 같은 노드 혹은 네트웍 상에서 실행 됨에 관계없이 서비스들의 구성을 통해 애플리케이션을 생성하는 것을 가능하게 합니다. 이는 매우 광범위한 애플리케이션들을 제작하는데 매우 유연하면서 단순한 플랫폼입니다.  DSS는 HTTP와 서비스들간의 상호작용을 위해 DSSP를 사용합니다. DSSP는 구조화된 상태(state)의 조작과 이 상태(state)의 변화에 의한 이벤트 모델을 위한 가벼운 SOAP 기반 프로토콜입니다. DSSP는 서비스들을 조작하고 subscribing하기 위해 사용되며 단순하고, 상태(state)기반 애플리케이션 모델을 제공하는데 있어 HTTP와 호환됩니다. DSS 런타임은 CCR기반으로 제작되었으며 그 외 마이크로소프트 Robotics Studio의 다른 컴포넌트에는 의존하지 않습니다.  또한 서비스 생성, 검색, 로깅, 디버깅, 모니터링과 보안을 위한 인프라스트럭쳐 서비스 집합과 서비스들 관리하기 위한 호스팅 환경을 제공합니다.
[object Object]
 
게임서버 개발 플랫폼 Client 파일로딩 공간분활 Server 디비쿼리 공간분활 길찾기
게임서버 개발 플랫폼 비동기 콜
DATAS(PacketGameLogin) String id String pass DATAE SERVICE_BEGIN(GAME,1) STATES(LOGIN) REQUEST(PacketGameLogin,PacketGameLogin_Ret) STATEE STATES(SELECT_CHAR) NOTIFY(PacketNewCharacter) NOTIFY(PacketDeleteCharacter) NOTIFY(PacketFieldLogin) STATEE SERVICE_END SERVICE_BEGIN(DB,2) STATES(LOGIN) REQUEST(PacketDBLogin,PacketDBLogin_Ret) STATEE SERVICE_END Class Game { public   override   IEnumerable   PacketGameLogin (PacketGameLogin pgl ,PacketGameLogin_Ret pgl_ret) { PacketDBLogin pdl(pgl.id,pgl.pass) PacketDBLogin_Ret pdl_ret Yield return DB_Proxy.RequestPacketDBLogin(pdl,out pdl_ret); If(  pdl_ret.error) { pgl_ret.error = 1; } Yield return  pgl_ret; } }
게임서버 개발 플랫폼 Class Game { public   override   IEnumerable   PacketGameLogin (PacketGameLogin pgl ,PacketGameLogin_Ret pgl_ret) { PacketDBLogin pdl(pgl.id,pgl.pass) PacketDBLogin_Ret pdl_ret If( pdl_ret.error) { pgl_ret.error = 1; } // Yield return pgl_ret; } } Yield return DB_Proxy.RequestPacketDBLogin(pdl,out pdl_ret);
게임서버 개발 플랫폼 Class Collision : Service { [Exclusive] Void Add() [Exclusive] Void Remove() [Concurrent] Void Update() [Concurrent] Void Find() } 최적화 시켜야할곳과 최적화 방법

More Related Content

Similar to Msrds game server

DDD로 복잡함 다루기
DDD로 복잡함 다루기DDD로 복잡함 다루기
DDD로 복잡함 다루기beom kyun choi
 
Azure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDBAzure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDBrockplace
 
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석Tommy Lee
 
스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드
스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드
스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드Jeongsang Baek
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)uEngine Solutions
 
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)LanarkSeung
 
손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)Devgear
 
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기현철 조
 
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)Sang Don Kim
 
스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...
스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...
스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...Amazon Web Services Korea
 
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...OpenStack Korea Community
 
NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스Sungik Kim
 
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...Tae-Seong Park
 
Daejeon IT Developer Conference Struts2
Daejeon IT Developer Conference Struts2Daejeon IT Developer Conference Struts2
Daejeon IT Developer Conference Struts2plusperson
 
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016Sang Don Kim
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna현철 박
 
델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략
델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략
델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략Devgear
 

Similar to Msrds game server (20)

DDD로 복잡함 다루기
DDD로 복잡함 다루기DDD로 복잡함 다루기
DDD로 복잡함 다루기
 
Azure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDBAzure Databases for PostgreSQL MYSQL and MariaDB
Azure Databases for PostgreSQL MYSQL and MariaDB
 
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
 
스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드
스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드
스마트폰 앱 백-엔드 솔루션 개발을 위한 Node.js 실전 가이드
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
 
2015 oce specification
2015 oce specification2015 oce specification
2015 oce specification
 
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)
 
손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)손쉬운 데이터 연결 방법(라이브바인딩 활용)
손쉬운 데이터 연결 방법(라이브바인딩 활용)
 
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
[NDC17] Unreal.js - 자바스크립트로 쉽고 빠른 UE4 개발하기
 
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
[Td 2015]구름 위로 올려 어느 곳에서든 연결되는 서비스 azure 앱 서비스(이종인)
 
스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...
스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...
스마트 팩토리: AWS 사물인터넷과 인공지능을 활용한 스마트 팩토리 구축 – 최영준 AWS 솔루션즈 아키텍트, 정현아 AWS 솔루션즈 아키...
 
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
 
NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스NDC11_김성익_슈퍼클래스
NDC11_김성익_슈퍼클래스
 
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
 
miss_pattern_v2
miss_pattern_v2miss_pattern_v2
miss_pattern_v2
 
Daejeon IT Developer Conference Struts2
Daejeon IT Developer Conference Struts2Daejeon IT Developer Conference Struts2
Daejeon IT Developer Conference Struts2
 
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
[Td 2015] 국내에서 처음으로 선보이는 microsoft 차세대 서버 운영 체제 windows server 2016
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna
 
델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략
델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략
델파이,C++빌더: 물류 시스템 개발 전문가를 위한 시장현황과 전략
 
2015 oce garuda
2015 oce garuda2015 oce garuda
2015 oce garuda
 

Msrds game server