nel-all
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Nel] Net lib extension ?


From: Vianney Lecroart
Subject: RE: [Nel] Net lib extension ?
Date: Thu, 13 Feb 2003 10:36:56 +0100

Hi David,

NeL doesn't provide a full distributed system. Let's me explain the
system.
NeL Net uses layer approch:
Low level layers are classic client/server paradigm. The client connects
to a server and sends messages to the server using the connection and
the server can also send message to the client using the same
connection.

High level layer (class CUnifiedNetwork) uses low level layers and the
naming service (that is quite similar than CORBA naming system) to
abstract connection and network stuffs.

Default service system uses the High level layer. For example, in your
system, you can create an "Agent Service" ("AS" for short) that manages
a pool of agent. After that, you can run one or more instances of your
agent service, all these services automatically connects to the naming
service for registration. After that, they can communicates easily only
using string name of the service.
For example sending a message to "AS" will send it to *all* agent
service instances. You can also use  the instance uniq number (SID) to
send a message to a specific service.

It's not a fully distributed system because the naming service is
centralized. Of course the naming service is needed only when services
start, after that, the naming service can crash, the system will
continue. You also can relaunch the naming service after it crashed and
everything will resync automatically.

What we call a "shard" is a set of distributed services. For example we
can have 10 services distributed on 5 servers or 10 servers or 1 server,
so it's quite scalable. 

> The network model is very close to the classic client/server paradigm
> ( single difference : shards ? ) and the server (or shards) will
obviously
> be overloaded while the number of clients grows.

If you want to system doesn't overloaded while the number of clients
grows you need more computer, distributed system or not will not save
you!
We can imagine a system (if you have lot of money) with 100 physical
server and one AS instance on each server. After that, it's your
multiagent system to choose on which AS you have to spawn the new agent
(basically, on the more available server).

Vianney Lecroart
---
lead network programmer / nevrax.com
icq#: 6870415
homepage: http://ace.planet-d.net
www.geekcode.com: GCS/E d- s+++: a- C+++$ UL++ P- L+++>+$ E+>- W++ N+ o?
K-
w++$ O- M- V- PS- PE? Y PGP t 5? X+ R- tv++ b- DI D+ G e++ h-- r y?






reply via email to

[Prev in Thread] Current Thread [Next in Thread]