December 2001
- Stories, why? -- Because :) Marian Griffith
- [SECURITY] Bonefarming Adam Martin
- If JRRT did MUDs... Adam Martin
- If JRRT did MUDs... Hans-Henrik Staerfeldt
- If JRRT did MUDs... Marcus Johansson
- Story Implementation Lee Sheldon
- Story Implementation rayzam
- Story Implementation Lee Sheldon
- Story Implementation Jeff Freeman
- Story Implementation Lee Sheldon
- Story Implementation Jeff Freeman
- Story Implementation Marian Griffith
- Story Implementation Jeff Freeman
- Story Implementation Jeff Cole
- Story Implementation Valerio Santinelli
- From the linux-kernel list Jeff Cole
- Survey: Internet Cuts Into TV Time Michael Tresca
- Interesting DAoC Poll Lee Sheldon
- Interesting DAoC Poll Vincent Archer
- Interesting DAoC Poll Robert Fleck
- Interesting DAoC Poll Azeraab
- Interesting DAoC Poll Matt Mihaly
- Interesting DAoC Poll Dave Shepherd
- Interesting DAoC Poll Azeraab
- Interesting DAoC Poll Dave Shepherd
- Interesting DAoC Poll Matt Mihaly
- Project announcement: Cool++ ryan daum
- DAoC: Empowering Players to Alter the World (was: New laws) Lee Sheldon
- DGN: Chemistry based magic systems Bryan "Cyngon" Helmkamp
- DGN: Chemistry based magic systems Nathan F. Yospe
- DGN: Chemistry based magic systems rayzam
- DGN: Chemistry based magic systems Bryan "Cyngon" Helmkamp
- DGN: Chemistry based magic systems Bryan "Cyngon" Helmkamp
- DGN: Chemistry based magic systems Sellers, Mike
- RuneSword Brian Hook
- Economic Growth (Was: [STORY] Story and population size) Daniel.Harman@barclayscapital.com
- Economic Growth (Was: [STORY] Story and population size) Elia Morling
- Economic Growth (Was: [STORY] Story and population size) Timothy Dang
- Economic Growth (Was: [STORY] Story and population size) Koster, Raph
- Economic Growth (Was: [STORY] Story and population size) John Buehler
- Economic Growth (Was: [STORY] Story and population size) Koster, Raph
- Economic Growth (Was: [STORY] Story and population size) John Buehler
- Economic Growth (Was: [STORY] Story and population size) Travis Nixon
- Economic Growth (Was: [STORY] Story and population size) Marian Griffith
- Economic Growth (Was: [STORY] Story and population size) Daniel.Harman@barclayscapital.com
- Economic Growth (Was: [STORY] Story and population size) Steve {Bloo} Daniels
- Economic Growth (Was: [STORY] Story and population size) Koster, Raph
- Economic Growth (Was: [STORY] Story and population size) Steve {Bloo} Daniels
- Economic Growth (Was: [STORY] Story and population size) Sellers, Mike
- Economic Growth (Was: [STORY] Story and population size) Matt Mihaly
- Economic Growth (Was: [STORY] Story and population size) Travis Nixon
- Economic Growth (Was: [STORY] Story and population size) Daniel.Harman@barclayscapital.com
- Economic Growth (Was: [STORY] Story and population size) Daniel.Harman@barclayscapital.com
- Economic Growth (Was: [STORY] Story and population size) Koster, Raph
- Economic Growth (Was: [STORY] Story and population size) Travis Nixon
- Economic Growth (Was: [STORY] Story and population size) Daniel.Harman@barclayscapital.com
- Economic Growth (Was: [STORY] Story and population size) Bobby Martin
- Economic Growth (Was: [STORY] Story and population size) Paul Schwanz
- Economic Growth (Was: [STORY] Story and population size) Peter Harkins
- Economic Growth (Was: [STORY] Story and population size) Daniel.Harman@barclayscapital.com
- Economic Growth (Was: [STORY] Story and population size) Travis Nixon
- RE : Story Implementation Veynom
- RE : Story Implementation Matt Mihaly
- RE : Story Implementation Matt Mihaly
- Economy (was [STORY] Story and population size) Jeff Cole
- Economy (was [STORY] Story and population size) Dave Rickey
- RE : Story Implementation Veynom
- RE : Story Implementation Matt Mihaly
- economy and population size Adam Martin
- economy and population size J C Lawrence
- Art vs. Fun Michael Tresca
- Art vs. Fun Koster, Raph
- Art vs. Fun Matt Mihaly
- Art vs. Fun Matt Mihaly
- Art vs. Fun Robert Zubek
- First use of "avatar"? Koster, Raph
- First use of "avatar"? Lars Duening
- First use of "avatar"? Matt Mihaly
- First use of "avatar"? Ola Fosheim Grøstad
- First use of "avatar"? Koster, Raph
- First use of "avatar"? Steve {Bloo} Daniels
- First use of "avatar"? Travis Casey
- First use of "avatar"? Koster, Raph
- First use of "avatar"? Christopher Kohnert
- First use of "avatar"? Travis Casey
- First use of "avatar"? Koster, Raph
- First use of "avatar"? Travis Nixon
- First use of "avatar"? Madman Across the Water
- First use of "avatar"? Takis Kalogiratos
- First use of "avatar"? Tamzen Cannoy
- First use of "avatar"? Dr. Cat
- First use of "avatar"? F. Randall Farmer
- First use of "avatar"? Mats Lidstrom
- First use of "avatar"? Koster, Raph
- First use of "avatar"? Nathan F. Yospe
- First use of "avatar"? Ola Fosheim Grøstad
- First use of "avatar"? Richard A. Bartle
- Managing MUD economy Vladimir Prelovac
- Managing MUD economy opteek
- Managing MUD economy Koster, Raph
- Managing MUD economy Derek Licciardi
- Managing MUD economy Bryan "Cyngon" Helmkamp
- Managing MUD economy Sasha Hart
- Managing MUD economy Vladimir Prelovac
- Managing MUD economy Freeman, Jeff
- Managing MUD economy John Buehler
- Managing MUD economy Marian Griffith
- Managing MUD economy Daniel.Harman@barclayscapital.com
- Managing MUD economy Adam Martin
- Managing MUD economy Sasha Hart
- Managing MUD economy Marc Hernandez
- Managing MUD economy Travis Casey
- Managing MUD economy Vladimir Prelovac
- Managing MUD economy Travis Casey
- Managing MUD economy William Murdick
- Managing MUD economy Timothy Dang
- MUD implementation issues. Marcus Johansson
- MUD implementation issues. J C Lawrence
- MUD implementation issues. Nicholas E. Walker
- MUD implementation issues. Phillip Lenhardt
- MUD implementation issues. Bruce Mitchener
- MUD implementation issues. Jonathan Berling
- MUD implementation issues. Bruce Mitchener
- MUD implementation issues. Marcus Johansson
- MUD implementation issues. Bruce Mitchener
- Economy Vincent Archer
- Ten Rules of PvP was Interesting DAoC Poll Azeraab
- Ten Rules of PvP was Interesting DAoC Poll Dave Shepherd
- Ten Rules of PvP was Interesting DAoC Poll Azeraab
- Ten Rules of PvP was Interesting DAoC Poll John Buehler
- Ten Rules of PvP was Interesting DAoC Poll Daniel.Harman@barclayscapital.com
- Ten Rules of PvP was Interesting DAoC Poll Vincent Archer
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Derek Licciardi
- MMORPGs & MUDs Sellers, Mike
- MMORPGs & MUDs Brian Hook
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Sellers, Mike
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Derek Licciardi
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Lee Sheldon
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Mike Caruso
- MMORPGs & MUDs Adam Martin
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Jeff Freeman
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Jeff Freeman
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Jeff Freeman
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Madrona Tree
- MMORPGs & MUDs John Buehler
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs David H. Loeser Jr.
- MMORPGs & MUDs Daniel.Harman@barclayscapital.com
- MMORPGs & MUDs Freeman, Jeff
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Vincent Archer
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs Vincent Archer
- MMORPGs & MUDs Sellers, Mike
- MMORPGs & MUDs rayzam
- MMORPGs & MUDs Sellers, Mike
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs William B. Taylor
- MMORPGs & MUDs Skaei@aol.com
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs Madrona Tree
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Christopher Allen
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs J C Lawrence
- MMORPGs & MUDs J C Lawrence
- MMORPGs & MUDs Vincent Archer
- MMORPGs & MUDs Dave Rickey
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Richard Aihoshi aka Jonric
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Sellers, Mike
- MMORPGs & MUDs Marc Bowden
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Marc Bowden
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs David Bennett
- MMORPGs & MUDs Marc Bowden
- MMORPGs & MUDs Freeman, Jeff
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Jeff Freeman
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Matt Mihaly
- MMORPGs & MUDs Wes Connell
- MMORPGs & MUDs Koster, Raph
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs J C Lawrence
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs Joel Palmtag
- MMORPGs & MUDs J C Lawrence
- MMORPGs & MUDs Michael Tresca
- MMORPGs & MUDs J C Lawrence
- MMORPGs & MUDs Michelle Elbert
- MMORPGs & MUDs Sami Kosonen
- MMORPGs & MUDs Azeraab
- MMORPGs & MUDs Sellers, Mike
- MMORPGs & MUDs J C Lawrence
- Re[4]: Economy Travis Casey
- Eiffel Brian Hook
- ADMIN: Origin of "Avatar" thread J C Lawrence
- Call for Papers - NetGames2002 Tristan Henderson
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Brian Hook
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Koster, Raph
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Koster, Raph
- Continuous versus Discrete Functions rayzam
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Travis Casey
- Continuous versus Discrete Functions Caliban Tiresias Darklock
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Caliban Tiresias Darklock
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Daniel.Harman@barclayscapital.com
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Andrew Hefford
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Koster, Raph
- Continuous versus Discrete Functions Jon Lambert
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Koster, Raph
- Continuous versus Discrete Functions Dave Rickey
- Continuous versus Discrete Functions Daniel.Harman@barclayscapital.com
- Continuous versus Discrete Functions Dave Rickey
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions Dave Rickey
- Continuous versus Discrete Functions John Buehler
- Continuous versus Discrete Functions rayzam
- Continuous versus Discrete Functions Caliban Tiresias Darklock
- Continuous versus Discrete Functions kyndig@kyndig.com
- Continuous versus Discrete Functions Caliban Tiresias Darklock
- Continuous versus Discrete Functions Jon Lambert
- Continuous versus Discrete Functions Peter Harkins
- Continuous versus Discrete Functions Travis Casey
- Continuous versus Discrete Functions Caliban Tiresias Darklock
- LPC-Natural Language Parser z032383@students.niu.edu
- [TECH] Event Queues in MUDs Daniel.Harman@barclayscapital.com
- [TECH] Event Queues in MUDs Jon Lambert
- [TECH] Event Queues in MUDs Christian Loth
- [TECH] algorithm request Malcolm Tester II
- [TECH] algorithm request William Murdick
- [TECH] algorithm request Lars Duening
- [TECH] algorithm request David Bennett
- [TECH] algorithm request Travis Casey
- [TECH] algorithm request Malcolm Tester II
- [TECH] algorithm request Adam Martin
- [TECH] algorithm request Eli Stevens
- [TECH] algorithm request Bobby Martin
- [TECH] algorithm request Bryan "Cyngon" Helmkamp
- non-'realistic' spatial models Nicholas E. Walker
- non-'realistic' spatial models rayzam
- non-'realistic' spatial models Hans-Henrik Staerfeldt
- non-'realistic' spatial models Cybrarian Rök
- non-'realistic' spatial models Nathan F. Yospe
- The Problem With "Massive" Michael Tresca
- The Ideal Player Michael Tresca
- The Ideal Player Lars Duening
- The Ideal Player Dave Rickey
- The Ideal Player Caliban Tiresias Darklock
- [Theory?] Parsing of knowledge to allow for more interactive NPCs holding99@mindspring.com
- [Theory?] Parsing of knowledge to allow for more interactive NPCs Robert Zubek
- [Theory?] Parsing of knowledge to allow for more interactive NPCs holding99@mindspring.com
- CHI 2002: Funology: Designing Enjoyment Bruce Mitchener
- CHI 2002: Funology: Designing Enjoyment Bruce Mitchener
- CHI 2002: Funology: Designing Enjoyment Ola Fosheim Grøstad
- [OFF TOPIC] Happy Holidays Derek Licciardi
- Are crafts fun? Adam Dray
- Are crafts fun? Michelle
- Are crafts fun? Bobby Martin
- Are crafts fun? Bobby Martin
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Jon A. Lambert
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) amanda@alfar.com
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Marian Griffith
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Marian Griffith
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Marian Griffith
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Paul Schwanz - Enterprise Services
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Gender differences -> spatial navigation rayzam
- Gender differences -> spatial navigation amanda@alfar.com
- Gender differences -> spatial navigation Nathan F. Yospe
- Sex and MUDs... the_sage2000@juno.com
- Sex and MUDs... Jon Lambert
- Sex and MUDs... David Bennett
- Sex and MUDs... Travis Casey
- Sex and MUDs... Malcolm Tester II
- Sex and MUDs... Matt Mihaly
- Sex and MUDs... Adam Dray
- Some vworlds (maddog) related changes Frank Crowell
- Some vworlds (maddog) related changes Frank Crowell
- (no subject) claw@kanga.nu
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) amanda@alfar.com
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Marian Griffith
- Boys and Girls - was (MUD-Dev digest, Vol 1 #16 3 - 25 msgs) Sellers, Mike
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) Caliban Tiresias Darklock
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) amanda@alfar.com
- Boys and Girls - was (MUD-Dev digest, Vol 1 #163 - 25 msgs) mystran@ltv.cx
- Combat system in persistent world Veynom
- Combat system in persistent world J C Lawrence
- Taligent docs Bruce Mitchener
- Taligent docs Chris Corry
- TECH: Servers in Java Brian Hook
- TECH: Servers in Java Bruce Mitchener
- TECH: Servers in Java Brian Hook
- TECH: Servers in Java Bobby Martin
- TECH: Servers in Java Emil Eifrem
At 01:44 AM 12/30/01 , Brian Hook wrote:
> The first thing I've noticed is that Java's UDP implementation
> doesn't seem to have a non-blocking mode receive(). The apparent
> recommended strategy is to park your receive() on a separate
> thread. I assume I'll be multiplexing incoming data based on the
> client's IP/port combo, as opposed to some proposals of forking
> off a new thread per client (which would obviously not be tenable
> with, say, 2000 clients).
Ah yes, good ole Java IO. You have one master thread that accepts
incoming connections and quickly delegates them to a bunch of client
threads that perform the actual work. Fundamentally you use N+1
threads if you serve N concurrent clients. (In some cases you even
end up using _two_ client threads per connection -- one for reading
and one for writing -- resulting in 2N+1 total threads.) This works
fine on the low end, but in enterprise servers you usually end up
multiplexing connections and threads in order to minimize the
overhead of thread contexts. But regardless of multiplexing,
thread-pooling, event-driven priority queues and other tricks, the
one-thread-per-connection paradigm just isn't a good way to use our
scarce server-side resources.
However, there's a light at the end of the tunnel. The above
approach actually _IS_ good "ole" Java IO. There's also good "new"
Java IO. The java.nio package (nio == new or non-blocking IO)
contains an object-oriented version of select(), amongst other
things, and has been designed with enterprise scalability in
mind. However, it's only available in "Merlin," version 1.4 of the
JDK. Merlin is currently in beta. If you're not aiming to get your
server out RSN and don't have a problem with waiting for Merlin to
stabilize on your platform, I'd suggest you look into java.nio. A
good starting point may be this JavaWorld article
http://www.javaworld.com/javaworld/jw-09-2001/jw-0907-merlin.html
as well as the API documentations at java.sun.com.
> Other issues include the robustness of the various JVM
> implementations and the usability/predictability of Java GC
> implementations (that's a real big unknown for me -- is Java's GC
> going to be bad enough that it will affect a server's
> reliability?).
IMHO and in general:
Worry not, enterprise Java is beginning to approach a quite mature
state. Companies such as BEA, Oracle, HP, Sun and IBM have been
wrestling with these issues for a few years now and good things
have come out of it. The aforementioned companies (no lightweights
in the industry!) and thousands of others bet their server-side
market share on Java's scalability. Java, correctly used, can
handle any scalability demands that today's and tomorrow's
commercial or non-commercial muds may have.
FMHE (From My Humble Experience) and in practice:
Sun's latest incarnations of the Hotspot JVM are rock solid on
Solaris and Windows. Linux may be there as well, but as we're in the
progress of migrating our application servers from Windows to Linux
I don't yet have any practical experience of Hotspot under Linux in
a production environment. (I use it as a development environment
every day and have no problems whatsoever... but dev env !production environment.)
IBM's JVM is very efficient and I have only good experiences with it.
However, since we run our production systems on Hotspot and only a few
smaller services on IBM's JVM, I again don't have enough real high-end
production experience to make an educated statement.
Garbage collection, although still out of reach for the programmer
(System.gc() just suggests GC to the runtime), is nowadays highly tweakable
by the system administrator. If you're masochistic, check out the docs at:
http://java.sun.com/docs/hotspot/
For garbage collection, I've found this one
http://java.sun.com/docs/hotspot/gc/index.html
to be particularly useful. The bottom end is that you can tweak today's
Java runtimes from here to the moon as far as server-side scaling is
concerned, although there's still much room for improvement.
Try to avoid full garbage collection when your heap grows big (> 500 megs
with 1-2 Ghz CPUs) until your production JVM supports parallell GC (none
does today) or you'll lock up one of your CPUs with GC for a substantial
amount of time. Avoiding full GC usually boils down to using incremental GC
and sizing/tuning your heap generations cleverly, which is a complex and
tedious task -- but not harder than tuning any other enterprise platform or
application.
Garbage collection issues (like most other things) become increasingly
complex when you go distributed, btw. Just communicating via RMI, for
example, forces a full GC every minute on both client and server side with
most JVM's default parameters. But this is also tunable, of course.
In conclusion, yea, don't worry about Java's validity on the server side.
It's the industry standard for writing enterprise servers. It may not be
everyone's favorite language, but all new enterprise applications are
written in Java and tons of legacy systems are being ported or at the very
minimum provide Java adapters. All the big boys (save Microsoft) are
investing big money in making Java be a scalable, reliable, etc etc
server-side development platform. So I think us mud server coders are
fairly safe for now.
The really interesting question is whether Java in three years time will be
a better choice than Microsoft's .NET. But that's a completely different
discussion (and one I believe is off topic for this list).
- - -
Emil Eifrem [ emil@eifrem.com || www.eifrem.com || www.javamud.org ] - TECH: Servers in Java Aaron Mulder
- TECH: Servers in Java justice@softhome.net
- TECH: Servers in Java Brian Hook
- TECH: Servers in Java Daniel.Harman@barclayscapital.com