TCP 서버/클라이언트 구현모델

segfault의 이미지

여차저차해서 synchronous io multiplexing을 사용하고 있습니다.

다만, select와 poll은 한꺼번에 처리할 수 있는 fd의 개수가 1024개로 제한되더군요.

이 1024개의 벽을 넘는 방법은 뭐가 있을까요?

1024개 단위의 첫번째 fd set을 할당해 놓았다가 가득 차면 두번째 fd set을 할당하고.. 이런 방법도 가능할까요?

pynoos의 이미지

prefork를 이용하는 방법이죠.

매우 잘 이용되는 방법이므로 검색해보면 많은 결과를 얻을 수 있을 것입니다.

metalwolf의 이미지

limit 쪽 함수 계열 일겁니다. 그곳에서 바꿔주면 되지만 별로 추천 하고 싶지

않습니다. poll 이나 select계열은 1024부터 비용이 급격히 증가합니다.

차라리 채널 방식 쓰래드로 구현 하셔서 select를 여러개 띄우시는게 낳지

않을까 합니다.

^____^; 방가여

pynoos의 이미지

metalwolf wrote:
limit 쪽 함수 계열 일겁니다. 그곳에서 바꿔주면 되지만 별로 추천 하고 싶지

않습니다. poll 이나 select계열은 1024부터 비용이 급격히 증가합니다.

차라리 채널 방식 쓰래드로 구현 하셔서 select를 여러개 띄우시는게 낳지

않을까 합니다.

채널 방식이라는 말이 생소하여 찾아 보니 자바에서 많이 쓰이는 개념인가 봅니다. 맞나요?

1024라는 한계는 프로세스에 있는 것이므로 아무리 쓰레드를 많이 띄워도 프로세스의 한계 밖에는 열 수 없습니다.

alwaysN00b의 이미지

sun solaris 8 사용하는데

자세히는 모르지만

/etc/system에서 최대 fd갯수를 4086으로 수정하였습니다.

프로세서 하나 띄워서 test해보니 설정된 갯수만큼 열리더군요

인용할려구 했는데 자료가 회사에 있구 제가 찾은 자료가 아니라 .. ㅋ

쉘에서도 limit 수정가능한데 csh는

Quote:
limit descriptors 4086

하시면 됩니다.

도움이 되셨으면 합니다.

언제나 시작

batmi의 이미지

여기 어디 찾아보니까요...
커널 소스를 조금 수정해서 디폴트 값을
크게 조정하는 방법도 있는듯 합니다.^^;

http://bbs.kldp.org/viewtopic.php?t=23609&start=0&postdays=0&postorder=asc&highlight=posix_types.h

.
마음을 가꾸는 방법은??

saxboy의 이미지

echo 1234 > /proc/sys/fs/file-max

혹시 이놈을 찾으시는건지요?

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.