aboutsummaryrefslogtreecommitdiff
path: root/pipermail/nel/2001-March/000315.html
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--pipermail/nel/2001-March/000315.html174
1 files changed, 174 insertions, 0 deletions
diff --git a/pipermail/nel/2001-March/000315.html b/pipermail/nel/2001-March/000315.html
new file mode 100644
index 00000000..fdb24fb0
--- /dev/null
+++ b/pipermail/nel/2001-March/000315.html
@@ -0,0 +1,174 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Nel] Network Connections</TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:thomas.wright1%40ntlworld.com">
+ <LINK REL="Previous" HREF="000326.html">
+ <LINK REL="Next" HREF="000317.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Nel] Network Connections</H1>
+ <B>Tom wright</B>
+ <A HREF="mailto:thomas.wright1%40ntlworld.com"
+ TITLE="[Nel] Network Connections">thomas.wright1@ntlworld.com</A><BR>
+ <I>Thu, 1 Mar 2001 08:48:29 -0000</I>
+ <P><UL>
+ <LI> Previous message: <A HREF="000326.html">[Nel] Compile error</A></li>
+ <LI> Next message: <A HREF="000317.html">[Nel] Network Connections</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#315">[ date ]</a>
+ <a href="thread.html#315">[ thread ]</a>
+ <a href="subject.html#315">[ subject ]</a>
+ <a href="author.html#315">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>This is a multi-part message in MIME format.
+
+------=_NextPart_000_000B_01C0A22C.632195A0
+Content-Type: text/plain;
+ charset=&quot;iso-8859-1&quot;
+Content-Transfer-Encoding: quoted-printable
+
+Guys/Gals,
+
+Having followed your arguements so far, i though i would chuck in my 2 p =
+worth.
+
+1) i think you are going to find it very difficult to scale a server to =
+5000 concurrent users, using any kind of scheme unless its a BIG server. =
+ Look at EQ currently, they struggle with 2000. But this is just my =
+opinion :-) so feel free to ignore it.
+
+2) On windows NT/2k, using async sockets with events is a very efficent =
+way of handling socket comms, and its quite easy to demultiplex the =
+events to work out which socket caused the event. I would recommend =
+this route, as one thread could then wait for events to be generated on =
+say 30 sockets and then take appropriate action. unfortunately i can =
+not tell you how well this is going to scale :-( Just look up WSAEvents =
+for READ, SEND and CLOSE. It does make your sending more entertaining =
+however :-)
+
+3) Windows did support something called micro threads, which had a much =
+lower over head than traditional threads. These ( if i remember =
+correctly ) were designed specifically for scalable IO ( as in IIS ). =
+Some time looking here may well yield some useful results.
+
+4) Some OS's have limits to the size of the array to select, Windows is =
+one of them, typical values seem to be 64. However using values this =
+large, you are going to spend time thrashing the array looking for the =
+source of the select, with events this is much easier and quicker, tho =
+not linux compatible. Wrapping up the comms like this specific to each =
+platform is not going to be to hard, just code to a common interface.
+
+Regards
+
+Tom
+
+PS A binary of the next release for windows would be nice, takes HOURS =
+to build :-)
+
+
+
+------=_NextPart_000_000B_01C0A22C.632195A0
+Content-Type: text/html;
+ charset=&quot;iso-8859-1&quot;
+Content-Transfer-Encoding: quoted-printable
+
+&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;
+&lt;HTML&gt;&lt;HEAD&gt;
+&lt;META content=3D&quot;text/html; charset=3Diso-8859-1&quot; =
+http-equiv=3DContent-Type&gt;
+&lt;META content=3D&quot;MSHTML 5.00.3103.1000&quot; name=3DGENERATOR&gt;
+&lt;STYLE&gt;&lt;/STYLE&gt;
+&lt;/HEAD&gt;
+&lt;BODY bgColor=3D#ffffff&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;Guys/Gals,&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;Having followed your arguements so far, =
+i though i=20
+would chuck in my 2 p worth.&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;1) i think you are going to find it =
+very difficult=20
+to scale a server to 5000 concurrent users, using any kind of scheme =
+unless its=20
+a BIG server.&amp;nbsp; Look at EQ currently, they struggle with 2000.&amp;nbsp; =
+But=20
+this is just my opinion :-) so feel free to ignore it.&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;2) On windows NT/2k, using async =
+sockets with=20
+events is a very efficent way of handling socket comms, and its quite =
+easy to=20
+demultiplex the events to work out which socket caused the event.&amp;nbsp; =
+I would=20
+recommend this route, as one thread could then wait for events to be =
+generated=20
+on say 30 sockets and then take appropriate action.&amp;nbsp; unfortunately =
+i can=20
+not tell you how&amp;nbsp;well this is going to scale :-( Just look up =
+WSAEvents for=20
+READ, SEND and CLOSE.&amp;nbsp; It does make your sending more entertaining =
+however=20
+:<i>-)&lt;/FONT&gt;&lt;/DIV&gt;
+</I>&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;3) Windows did support something called =
+micro=20
+threads, which had a much lower over head than traditional =
+threads.&amp;nbsp; These=20
+( if i remember correctly ) were designed specifically for scalable IO ( =
+as in=20
+IIS ).&amp;nbsp; Some time looking here may well yield some useful=20
+results.&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;4) Some OS's have limits to the size of =
+the array=20
+to select, Windows is one of them, typical values seem to be 64.&amp;nbsp; =
+However=20
+using values this large, you are going to spend time thrashing the array =
+looking=20
+for the source of the select, with events this is much easier and =
+quicker, tho=20
+not linux compatible.&amp;nbsp; Wrapping up the comms like this specific to =
+each=20
+platform is not going to be to hard, just code to a common=20
+interface.&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;Regards&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;Tom&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&lt;FONT face=3DArial size=3D2&gt;PS A binary of the next release for =
+windows would=20
+be nice, takes HOURS to build :-)&lt;/FONT&gt;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
+&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;
+
+------=_NextPart_000_000B_01C0A22C.632195A0--
+
+
+</pre>
+
+
+
+
+
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI> Previous message: <A HREF="000326.html">[Nel] Compile error</A></li>
+ <LI> Next message: <A HREF="000317.html">[Nel] Network Connections</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#315">[ date ]</a>
+ <a href="thread.html#315">[ thread ]</a>
+ <a href="subject.html#315">[ subject ]</a>
+ <a href="author.html#315">[ author ]</a>
+ </LI>
+ </UL>
+</body></html>