리눅스에서 MMORPG용 서버를 만들려고 합니다.

nomame의 이미지

리눅스에서 MMORPG용 서버를 만들려고 합니다.

근데 제가 윈도우즈 기반에서만 프로그래밍을 해와서

리눅스에 대한 지식이 전혀(완전히 리눅스가 뭔지도 모름) 없습니다.

리눅스에서 MMORPG 서버를 만드려면

맨처음에 어떤 책을 보는것이 좋을지 추천 부탁드립니다.

답변 부탁드립니다.

익명 사용자의 이미지

Unix Network Programming..
Unix System Programming...

이두권... + RTS나 Epoll관련 자료를 보시면 좋겠군요..

monpetit의 이미지

리눅스와 친해지는 것부터 먼저 하셔야 하지 않을까 싶습니다만...

nomame의 이미지

그래서 책을 사려고 서점에 갔는데요...
제일 눈에 띄는 책이... "리눅스 너만 모른다."
라는 책이였습니다.
그리고 처음부분을 대충 읽어 봤고요 괞찬은거 같았습니다.
그런데 갑자기 이 책은 "한컴 리눅스"??? 용이라고 되어 있어서
구입을 보류 했습니다.

한컴 리눅스라...
한컴 리눅스 말고 다른 리눅스도 있다는건데 그래서 여러 책을 디져보니
여러 단어가 나왔습니다.
한컴 리눅스?? 알짜 리눅스??? FreeBSD??? , X윈도우??? 레드햇 리눅스???
데비안 리눅스???
뭔가 굉장히 많이 나왔는데...

어떤책을 골라야 할지 고민이 무척되서 결국 못 골르고 다시 돌아 왔습니다.

그래서 염치 불구하고 또 질문 드립니다..

리눅스의 종류는 어떤것이 있고..
MMORPG에 제일 적합한 리눅스는 무엇인가요???

리눅스 MMORPG 서버 프로그래머가 되려고 하는 비기너 입니다.
리눅스에 대해서 모르는게 너무 많아서 궁금한것이많습니다.
잘부탁드립니다.

nainu의 이미지

다 적합합니다. :) 아무거나 하나 골라서 하시면 되겠네요.

nomame의 이미지

ㅠ.ㅠ;
간단하고 심플한 답변 감사드립니다.
그럼...
리눅스 종류라도 어떤 것이 있는지
또 nainu 님이라면 어떤걸 사용하시는지 추천좀 해주세요.

리눅스 MMORPG 서버 프로그래머가 되려고 하는 비기너 입니다.
리눅스에 대해서 모르는게 너무 많아서 궁금한것이많습니다.
잘부탁드립니다.

kimsk99의 이미지

리눅스에서 MMORPG 서버를 구현하는 훈련을 하는 것은 별로 추천하고 싶지 않습니다.

보통 MMORPG 서버는 멀티쓰레드로 구현되는데 리눅스는 SMP환경에서 쓰레드 성능이 무지 떨어집니다.

그래서 리눅스에서 서비스 중인 MMORPG서버는 없는 것으로 알고 있습니다.

차라리 Window 2000에서 IOCP를 이용한 방법으로 접근해 보시길 권장합니다. (대부분의 게임 서버는 이걸 이용해 구현되었습니다.)

nomame의 이미지

답변 감사합니다.

제가 예상하던것과는 다르네요.
윈도우에서도 IOCP가 있듯이 리눅스에도 epoll 같은것과 kqueue
를 사용하면 iocp 만큼의 성능이 나온다는 얘기를 들었는데요.

그리고 리눅스의 최대 장점이 비용이 적게 든다는 점이...
저를 리눅스로 끌어 들였습니다.

그리고 제가 알기로는 확실 하지는 않지만
비율이 많지는 않지만 리눅스로 만든 MMORPG도 있다고 들었는데요.
(다옥이 리눅스 라는 얘기가...)

아닌가요? 아시는분 답변 부탁드립니다.

리눅스 MMORPG 서버 프로그래머가 되려고 하는 비기너 입니다.
리눅스에 대해서 모르는게 너무 많아서 궁금한것이많습니다.
잘부탁드립니다.

익명 사용자의 이미지

리눅스 SMP 성능 떨어지지 않습니다..
EPOLL, Kqueue 도 역시 IOCP에 비해서 성능 떨어지지 않습니다.
MMORPG를 서비스하는 리눅스서버 있습니다.

Necromancer의 이미지

epoll() + nptl을 쓰셔야 할 것 같군요.

http://joinc.co.kr 에 epoll 관련 자료가 올라와 있습니다.

nptl은 아직 자료 찾지 못했고요..

돈이 아쉽다면 이곳 위키에 올라온 네트웍 프로그래밍 자료부터 보시기
바랍니다. 그다음 epoll이나 RTS, nptl 자료 보시면 되고요.

이들은 최근에 나온거라서(커널 2.6이라야 완벽지원하고 2.4는 패치가
요구되죠.) 시중에 이들을 설명한 책은 없다고 보시면 됩니다. 그리고 이들은
아주 최근 배포본이 아닌 이상은 커널은 물론 glibc도 업해야 쓸수있죠.

Written By the Black Knight of Destruction

지리즈의 이미지

kimsk99 wrote:
리눅스에서 MMORPG 서버를 구현하는 훈련을 하는 것은 별로 추천하고 싶지 않습니다.

보통 MMORPG 서버는 멀티쓰레드로 구현되는데 리눅스는 SMP환경에서 쓰레드 성능이 무지 떨어집니다.

그래서 리눅스에서 서비스 중인 MMORPG서버는 없는 것으로 알고 있습니다.

리눅스 커널에 패치를 해서, 국내에서 상용서비스를 하고 있는 업체도 있습니다.

There is no spoon. Neo from the Matrix 1999.

무혼인형의 이미지

kimsk99 wrote:

리눅스에서 서비스 중인 MMORPG서버는 없는 것으로 알고 있습니다.

MYTHIC 에서 만든 Dark age of Camelot 이 리눅스서버를 사용하고 있습니다.
국내에서는 BUFF Entertainment가 수입해서 서비스 중입니다.
nomame의 이미지

답변들 해주셔서 감사드립니다.

(대충 네이버 지식인을 검색하고 찾아 보니^_^;
리눅스 버전 같은거는 대충 이해 한거 같습니다.)

지리즈님,손님님, 이 알고 계산 리눅스로 만든 MMORPG 서버는
어떤게 있는지 구체적으로 언급 해주실수는 없는지...

리눅스 MMORPG 서버 프로그래머가 되려고 하는 비기너 입니다.
리눅스에 대해서 모르는게 너무 많아서 궁금한것이많습니다.
잘부탁드립니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.