DBMS, RDBMS, RFC 어떻게 이용들 하시나요?

3권에서 새로 도입된 네트웍 및 멀티플레이어 프로그로그래밍 섹션을 위한 게시판입니다.

Moderator: 류광

Locked
비회원

DBMS, RDBMS, RFC 어떻게 이용들 하시나요?

Post by 비회원 »

안녕하세요.
초보 서버 프로그래머입니다.
구인란을 보다가 의문나는게 생겨서 이렇게 질문 드립니다.

보통 서버 프로그래밍을 할때, 데이타베이스를 어떻게 사용해야 하나요?
구인란에 RDBMS사용자를 서버 프로그래머로 찾는 경우가 있던데
상용서버의 경우 RDBMS를 사용하는곳이 많은가요?

제가 생각하는 서버구조는
DB가 있고, DB서버라고 패킷을 주고 받는 서버가 있구요.
그래서 게임서버나 로비서버등에서 DB데이타가 필요한경우
DB서버에 데이타를 요구하는 패킷을 날리고, DB서버에서 DBMS와 접속이 되어있어서
DB에 쿼리를 날리고, 다시 데이타를 요구한 서버에 적당한 데이타를 날려주는 방식을 사용한다고
생각했습니다.
그런데 RDBMS를 사용한다는 말은 데이타를 원하는 서버가 RDBMS에 직접 쿼리를 해서 실시간으로
결과를 받는 방식을 사용한다는 말인가요?

아니면 또 다른 대안으로 DB서버를 만들고, DB서버의 RFC 호출을 해서 실시간으로 사용하나요?

제가 생각하는 첫번째 구조에서는 DB에 요청을 하고 LOOP같은곳이나 IOCP에서 응답이 올때까지
서버는 다른 일을 하다가 요청한 내용을 비대칭으로 구현하는데, 어려움이 많네요.

어떻게 구현하는 방법이 좋은건지 실제로 어떻게 사용하는지 궁금해서 질문드립니다.

주옥같은 도움 부탁드립니다. ^^;

즐거운 하루 되세요.
imays
Posts: 1044
Joined: 2003-02-18 10:29
Contact:

Post by imays »

상용서버의 경우 RDBMS를 사용하는곳이 많은가요?

>>흔히들 쓰는 RDBMS란, SQL server, oracle, mysql을 말하는거겠죠.

그런데 RDBMS를 사용한다는 말은 데이타를 원하는 서버가 RDBMS에 직접 쿼리를 해서 실시간으로
결과를 받는 방식을 사용한다는 말인가요?

>>그렇게 하거나 DB를 억세스하는 스레드 or 프로세스 or 서버를 두는거 모두 말하는거죠.

제가 생각하는 첫번째 구조에서는 DB에 요청을 하고 LOOP같은곳이나 IOCP에서 응답이 올때까지
서버는 다른 일을 하다가 요청한 내용을 비대칭으로 구현하는데, 어려움이 많네요.

>>DB 억세스 자체를 완전 비동기로 간다는 컨셉은 게임 서버의 병렬성을 최고조로 높이는 궁극의 방법입니다. 어려움이 많겠지만 최고로 좋은 방법이죠.

전반적으로 제가 이해하기 어려운 난이도의 질문이네요 ^^
온라인 게임 서버 엔진 ProudNet
http://www.nettention.com
비회원

Re: DBMS, RDBMS, RFC 어떻게 이용들 하시나요?

Post by 비회원 »

비회원 wrote:안녕하세요.
DB가 있고, DB서버라고 패킷을 주고 받는 서버가 있구요.
그래서 게임서버나 로비서버등에서 DB데이타가 필요한경우
DB서버에 데이타를 요구하는 패킷을 날리고, DB서버에서 DBMS와 접속이 되어있어서
DB에 쿼리를 날리고, 다시 데이타를 요구한 서버에 적당한 데이타를 날려주는 방식을 사용한다고
생각했습니다.
그런데 RDBMS를 사용한다는 말은 데이타를 원하는 서버가 RDBMS에 직접 쿼리를 해서 실시간으로
결과를 받는 방식을 사용한다는 말인가요?
DB서버가 하늘에서 떨어지는 게 아닌 이상, DB서버를 짜는 것도 서버프로그래머의 몫입니다.
DB서버(DB Gateway Server라고 보는 게 맞겠군요.)가 왜 들어가야 하는지에 대해 고민이 필요한
부분 같은데, 결국 다른 프로세스로 존재하는가, 같은 프로세스로 존재하는가의 문제겠죠.

DB Processing이 게임 서버에서 이루어지나 따로 빠지나 다를 것은 없다고 생각됩니다. 캐슁을 제외하면요.
비회원 wrote: 아니면 또 다른 대안으로 DB서버를 만들고, DB서버의 RFC 호출을 해서 실시간으로 사용하나요?
RPC를 말씀하신거겠죠?(제가 모르는 RFC호출이라는 것이 있다면 대략 난감.; )

RPC라는 가정하에, 위의 모델과 다를 것은 없습니다. 다만 RPC 비용이 크고, 굳이 RPC로 가지 않아도 되는
상황이고, 그것만 제외하고는 위와 똑같은 모델이므로 크게 다를 것은 없다고 생각됩니다.
Testors
Posts: 557
Joined: 2003-07-26 00:34
Location: (주)nFlavor
Contact:

Re: DBMS, RDBMS, RFC 어떻게 이용들 하시나요?

Post by Testors »

비회원 wrote:
비회원 wrote: 아니면 또 다른 대안으로 DB서버를 만들고, DB서버의 RFC 호출을 해서 실시간으로 사용하나요?
RPC를 말씀하신거겠죠?(제가 모르는 RFC호출이라는 것이 있다면 대략 난감.; )
Remote Function Call 을 얘기하신 것일 수 있을듯 합니다.
RFC : SAP의 R/3 적용을 위한 응용프로그램 인터페이스이다. SAP의 고객들이 R/3 응용 및 데이터베이스와 연계된 다른 응용프로그램을 작성하기 원하는 경우 RFC 인터페이스를 이용하면 된다.
플머/모델러/애니메이터 구해염 **현역/보충역 병특가능** / http://testors.net/
seeper
Posts: 1483
Joined: 2003-06-06 23:19
Contact:

Post by seeper »

엥? RDBMS는 Relational DataBase Management System 아닌가요? (관계형 DBMS라 불리우는..)
이게 되려면 foreign key는 필수이고요.. 따라서 ERD 같은 걸 그려서 DB설계가 가능하겠죠.
따라서 mysql은 RDBMS에 속하지 않는걸로 알고 있고요...
(대충 흉내는 가능하지만 DB에서의 지원은 없는 거죠..)
보통은 ms-sql이나 oracle을 의미하겠죠.. informix, postgress등도 여기에 해당되겠죠.
DBA수준이 아닌이상 어차피 거기서 거기니 RDBMS 경험만 있으면 쉽게 적응 되겠죠.

제가 잘못 알고 있으면 지적바랍니다.
Locked