|
| Chat delvist baseret på database? Fra : Jesper Nielsen |
Dato : 17-10-02 16:23 |
|
Hej NG!
Jeg er ved at skrive en chat til et site, som jeg driver.
Jeg vil gerne lave en kombineret db/db-less chat, forstået på den måde, at
oplysninger om de forskellige rum, antal online brugere og hvilke brugere
der er online kan ligge i databasen, men de linier, som chatterne skriver,
skal ikke være i databasen - for at spare på databaseserverens kræfter.
Hvordan holder man bedst styr på det, som brugerne skriver (og til hvilke(n)
bruger(e) teksten skal ud til), uden at anvende en database?
--
Mvh. Jesper
| |
Jimmy (17-10-2002)
| Kommentar Fra : Jimmy |
Dato : 17-10-02 17:00 |
|
"Jesper Nielsen" <jn@nielsenit.dk> wrote in message
news:NAAr9.119042$Qk5.5126816@news010.worldonline.dk...
> Hej NG!
>
> Jeg er ved at skrive en chat til et site, som jeg driver.
> Jeg vil gerne lave en kombineret db/db-less chat, forstået på den måde, at
> oplysninger om de forskellige rum, antal online brugere og hvilke brugere
> der er online kan ligge i databasen, men de linier, som chatterne skriver,
> skal ikke være i databasen - for at spare på databaseserverens kræfter.
Efter min mening er det ikke der, du skal spare.
> Hvordan holder man bedst styr på det, som brugerne skriver (og til
hvilke(n)
> bruger(e) teksten skal ud til), uden at anvende en database?
Jeg har lavet en del chats efterhånden. Baseret på database, text-filer,
Application Variables osv osv.
Det, som jeg har lært, er, at databasen - nu snakker vi MySQL/MSSQL - er
langt bedre gearet til at håndtere presset end klienterne.
Hvis du skal gemme linierne client-side kan du gøre det i et JavaScript
array, som du blot løber igennem.
Dette vil fungere, men resultatet er meget varierende. Hvis din klient har
rigeligt med CPU og RAm til sin rådighed får du et pænt resultat, hvis
ikke... ja så fungerer det så ringe, at dine brugere vil udnlade at anvende
den.
Hvis linierne ligger i en DB kan du også _langt_ bedre styre hvilke brugere
der må se hvilke linier .
Du kan sortere dem som du vil og private beskeder bliver pludseligt en leg,
da man jo bare kan udvælge de linier, der har en bestemt modtager.
Ovenstående forudsætter, at du programmerer din kode korrekt - både ASP og
SQl - så de ikke trækker unødige ressourcer.
Mvh
JImmy
| |
Jesper Nielsen (18-10-2002)
| Kommentar Fra : Jesper Nielsen |
Dato : 18-10-02 02:39 |
|
> Efter min mening er det ikke der, du skal spare.
Jeg har også bestemt mig for, at chatten også skal hente beskeder fra
databasen, da der på et tidspunkt skal opstilles flere servere kun til
chatten.
Tak for rådene.
--
Mvh. Jesper
| |
Jimmy (18-10-2002)
| Kommentar Fra : Jimmy |
Dato : 18-10-02 07:21 |
|
"Jesper Nielsen" <jn@nielsenit.dk> wrote in message
news:qBJr9.122775$Qk5.5211421@news010.worldonline.dk...
> > Efter min mening er det ikke der, du skal spare.
>
> Jeg har også bestemt mig for, at chatten også skal hente beskeder fra
> databasen, da der på et tidspunkt skal opstilles flere servere kun til
> chatten.
Præcis - endnu en god pointe.
Man kan altid udbygge med større eller flere servere, og da du kan anvende
en MySQL-DB er prisen på DB og styresystem ganske rimelig
Samtidig har du mulighed for at lagre alle beskederne i tilfælde af abuse
samt sende folk et "transcript"/udskrift af deres chats osv.
Mulighederne er uendelige med DB-chat.
Mvh
Jimmy
| |
Jesper Nielsen (18-10-2002)
| Kommentar Fra : Jesper Nielsen |
Dato : 18-10-02 23:47 |
|
> Man kan altid udbygge med større eller flere servere, og da du kan anvende
> en MySQL-DB er prisen på DB og styresystem ganske rimelig
Vi anvender nu MS SQL (pt. version 7, men den skal inden længe opgraderes
til MS SQL 2k.)
Men da en chat laver en h.... masse I/O, kunne vi vælge at opstille en MySQL
server KUN til chatten og så lade resten af sitet køre videre på MS SQL.
--
Mvh. Jesper
| |
Jimmy (19-10-2002)
| Kommentar Fra : Jimmy |
Dato : 19-10-02 19:56 |
|
"Jesper Nielsen" <jn@nielsenit.dk> wrote in message
news:Ga0s9.126907$Qk5.5311361@news010.worldonline.dk...
> > Man kan altid udbygge med større eller flere servere, og da du kan
anvende
> > en MySQL-DB er prisen på DB og styresystem ganske rimelig
>
> Vi anvender nu MS SQL (pt. version 7, men den skal inden længe opgraderes
> til MS SQL 2k.)
>
> Men da en chat laver en h.... masse I/O, kunne vi vælge at opstille en
MySQL
> server KUN til chatten og så lade resten af sitet køre videre på MS SQL.
Problemet er ikke så meget Input, men mere Output, som skal hentes minimum
hvert 5-8. sekund pr bruger.
Det løber hurtigt op.
Men svjv er MSSQL væsentligt hurtigere end MySQL og I kan måske klare det
med den ene.
Mvh
Jimmy
| |
|
|