1999Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] How to support 1000+ simultaneous connections, and some philosophy. -->
<!--X-From-R13: Pra Uerrne <terrneNploreuvtujnl.arg> -->
<!--X-Date: Thu, 11 Mar 1999 18:00:11 &#45;0800 -->
<!--X-Message-Id: 36E86DFF.5EE327CE#cyberhighway,net -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 199903110248.TAA00655@ami&#45;cg.GraySage.Edmonton.AB.CA -->
<!--X-Reference: 14056.6556.85029.276998#arioch,tky.hut.fi -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] How to support 1000+ simultaneous connections, a</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:greear#cyberhighway,net">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00538.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00540.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00534.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00544.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00539">Author</A>
&nbsp;|&nbsp;<A HREF="#00539">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00539">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</LI>
<LI><em>From</em>: Ben Greear &lt;<A HREF="mailto:greear#cyberhighway,net">greear#cyberhighway,net</A>&gt;</LI>
<LI><em>Date</em>: Thu, 11 Mar 1999 18:29:35 -0700</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Sender</em>: <A HREF="mailto:greear#burrito,cyberhighway.net">greear#burrito,cyberhighway.net</A></LI>
<LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
Petri Virkkula wrote:
&gt; 
&gt; &gt;&gt;&gt;&gt;&gt; "Chris" == Chris Gray &lt;cg#ami-cg,GraySage.Edmonton.AB.CA&gt; writes:
&gt; 
&gt; Chris&gt; The problem with that is that then the clients have to connect to one
&gt; Chris&gt; of those 10 ports. You might manage that if you have a special client
&gt; 
&gt;         As others have pointed out there would not be multiple ports,
&gt;         but multiple addresses with a single port number. The
&gt;         addresses would then be given out eg. in round-robin
&gt;         order. This is how many www-sites balances load between
&gt;         multiple machines (my suggestion would distribute the load
&gt;         between multiple processes, not machines).
&gt; 
&gt;         If my first idea cannot be used (eg. because of limited amount
&gt;         of ip-addresses), here is another idea:
&gt; 
&gt;         Make the connection server accept eg. 1000 connections (and
&gt;         serve them all). After that the server can fork(). The new
&gt;         child would then close the main socket that is being listened
&gt;         and only serve its 1000 clients. As soon as all the 1000
&gt;         clients have closed their connections just exit the child. At
&gt;         the same time the parent process closes all the client sockets
&gt;         and start again collect a new set of 1000 clients.

You overlook a detail.  You have to recompile or otherwise tweak your OS
to get 1000 clients.  However, your plan is still valid for the real max
of somewhere below 256 (in most cases.)

However, I plan on letting one get full, and then check for other more
empty
ones.  If I can find one, then the main server will close the accepting
socket,
and send a (proprietary) message to the more empty one.  Then the more
empty
one (re)opens the listening port.  Sounds pretty easy to implement,
relatively
divorced from low level OS stuff, and efficient.

&gt; 
&gt;         The above method might result in multiple processes, each of them
&gt;         handling just few clients. But the system might work fairly
&gt;         well, but that is difficult to say without testing.
&gt; 
&gt;         Petri
&gt; 
&gt; _______________________________________________
&gt; MUD-Dev maillist  -  MUD-Dev#kanga,nu
&gt; <A  HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A>

-- 
Ben Greear (greear#cyberhighway,net)  <A  HREF="http://www.primenet.com/~greear">http://www.primenet.com/~greear</A> 
Author of ScryMUD:  mud.primenet.com 4444        (Released under GPL)
<A  HREF="http://www.primenet.com/~greear/ScryMUD/scry.html">http://www.primenet.com/~greear/ScryMUD/scry.html</A>


_______________________________________________
MUD-Dev maillist  -  MUD-Dev#kanga,nu
<A  HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A>


</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00544" HREF="msg00544.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>
<ul compact><li><em>From:</em> Petri Virkkula &lt;pvirkkul#iki,fi&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00521" HREF="msg00521.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></STRONG>
<UL><LI><EM>From:</EM> Chris Gray &lt;cg#ami-cg,GraySage.Edmonton.AB.CA&gt;</LI></UL></LI>
<LI><STRONG><A NAME="00534" HREF="msg00534.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></STRONG>
<UL><LI><EM>From:</EM> Petri Virkkula &lt;pvirkkul#iki,fi&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00538.html">Re: [MUD-Dev] Elder Games</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00540.html">[MUD-Dev] Multiple clients (was Re: How to support 1000+ simultaneous connections)</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00534.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00544.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00539"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00539"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<LI><strong><A NAME="00528" HREF="msg00528.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Oliver Jowett <a href="mailto:icecube#ihug,co.nz">icecube#ihug,co.nz</a>, Thu 11 Mar 1999, 04:28 GMT
</LI>
<LI><strong><A NAME="00529" HREF="msg00529.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Jason Spangler <a href="mailto:stormwind#wombatgames,com">stormwind#wombatgames,com</a>, Thu 11 Mar 1999, 05:07 GMT
<UL>
<LI><strong><A NAME="00530" HREF="msg00530.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some  philosophy.</A></strong>, 
Caliban Tiresias Darklock <a href="mailto:caliban#darklock,com">caliban#darklock,com</a>, Thu 11 Mar 1999, 05:28 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="00534" HREF="msg00534.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Petri Virkkula <a href="mailto:pvirkkul#iki,fi">pvirkkul#iki,fi</a>, Thu 11 Mar 1999, 19:38 GMT
<UL>
<LI><strong><A NAME="00539" HREF="msg00539.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Ben Greear <a href="mailto:greear#cyberhighway,net">greear#cyberhighway,net</a>, Fri 12 Mar 1999, 02:00 GMT
<UL>
<LI><strong><A NAME="00544" HREF="msg00544.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Petri Virkkula <a href="mailto:pvirkkul#iki,fi">pvirkkul#iki,fi</a>, Fri 12 Mar 1999, 06:06 GMT
<UL>
<LI><strong><A NAME="00556" HREF="msg00556.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
J C Lawrence <a href="mailto:claw#varesearch,com">claw#varesearch,com</a>, Fri 12 Mar 1999, 18:33 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
<LI><strong><A NAME="00526" HREF="msg00526.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Thu 11 Mar 1999, 04:03 GMT
<UL>
<LI><strong><A NAME="00561" HREF="msg00561.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
J C Lawrence <a href="mailto:claw#varesearch,com">claw#varesearch,com</a>, Sat 13 Mar 1999, 02:00 GMT
</LI>
</UL>
</LI>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>