Chat mit Server, Welches Protokoll Sollte man verwenden

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von Andi_VB.

    Chat mit Server, Welches Protokoll Sollte man verwenden

    Hallo,

    Ich bins mal wieder, ich bräuchte mal einen Guten rat, auch wen es hier vil. schon oft gefragt wurde. Es ist
    doch sehr speziell...

    Also ich möchte mal grob gesagt einen Chat, er muss sicher sein, und sehr schnell. und sollte nicht nach 100
    Benutzern instabil werden. Was aber ganz wichtig ist ist das ich Privatchats laufen lassen kann aber auch einen
    Öfentlichen. Freunde deklareiren kann uns so weiter. Das ganze soll über einen server laufen. also Von Client zum
    Server, und von da dann weiter zum emptfäger. Der Server ist natürlich über Internet erreichbar. Es ist jedoch ein
    NAS-Server.

    Ich Würde sehr über antworten freuen.
    Dnake und Grüßle
    KAXTJ
    Danke,

    Aber wen ich alles richtig verstehe ist das alles auf interne Chats und direkte über das Internet Chats bezogen.
    ich suche aber eine Möglichkeit alles über ein und den selben Server laufen zu lassen. und dann noch ein nas-server.

    Ich bin schon eine ganze weile dabei das ganze zu programmieren. Die alle erste Version ist glaube ich fast 2 Jahre her, oder noch länger, da habe ich es über SQL gemacht. Das Problem ist einfach gewesen, es wahr zu langsam für das was ich vor habe. außerdem hatte ich das Gefühl das es ab einem gewissen punkt überlastet wäre. Letztes Jahr im sommer dann die zweite Version. Diese wahr aber auch zu langsam und zu allem Überfluss auch noch unsicher. dank FTP. Und jetzt bin ich bei der dritten Version und da möchte ich nicht wieder ein rein Fall haben.....
    Protokoll: TCP.
    Und wieso solltest du das nicht über den selben Server laufen lassen. Du schreibst einen Server. Startest diesen und dieser verarbeitet die Anfragen die man an ihn sendet.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.

    thefiloe schrieb:

    Und wieso solltest du das nicht über den selben Server laufen lassen. Du schreibst einen Server. Startest diesen und dieser verarbeitet die Anfragen die man an ihn sendet.
    Ja das ganze soll über ein nas-server laufen..... Wen es über ein komputer leuft, were es schon klar, aber es soll eben darüber laufen, das ist mein problem.......
    OK, trotz dem danke für die mühe.

    Ganz kurz ein NAS-Server ist ein Server der Daten in einem netzwerk und Internet bereithält. Er ist, Linux basierend, jedoch leider nicht dafür geeignet Linux Prgramme aus zu füren, Nur speziell entwinkelte programme, sind Auf diesem server ausführbar.

    Funktionen:
    FTP-Server
    Medien-Server
    Web-Pushing
    SQL-Server

    Könnte man die benutzer daten vom FTP server Über SQL abrufen und dann auf FTP weiter machen so das es sicher ist? (ist mir grad so eingefallen als ich mir alles so angeschaut hab)
    FTP ist nicht nur usicher, sondern schon alleine der Gedanke, einen Chat über nen FTP mit Textdateien zu programmieren ist fürn Ar.... Ich hab Dir den besten Code gepostet, an dem Du Dich orientieren kannst. Alle anderen Lösungsansätze sind zum Scheitern verurteilt. Du brauchst nen Windows-Server (evtl. geht auch Linux mit MONO). Ein NAS-Server ist dafür nicht geeignet, das er, wie Du schon geschrieben hast, seine ganz eigenen dezidierten Aufgaben hat.
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o
    Die meisten NAS-Server basieren auf einem Unix-Derivat (Linux, BSD...).
    Diese (speziell abgespeckten) Betriebssysteme lassen sich mit entsprechenden Kenntnissen meist auch aufbohren um weitere Funktionen.
    Dasselbe gilt für Router.

    Ich zweifle allerdings an der Sinnhaftigkeit des Unterfangens.
    Diese dedizierten Server sind so ausgelegt, dass sie genau ihre Aufgaben erledigen können und haben kaum freie Ressourcen für zusätzliche Anwendungen.
    Lass den NAS-Server das machen, was seine Aufgabe ist und bring den Chat auf einen eigenen Rechner.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Hey.

    Ich wuerde dir empfehlen, den Chat via TCP zu programmieren. Bitte greife nicht zur FTP-"Loesung".
    Dies ist nicht nur total unsicher (selbst, wenn es nur deine Freunde sind), sondern es ist auch total langsam (zumindest bei Hostern wie bplaced / square7).

    Falls du den Server mithilfe von Visual Basic schreibst, kann ich dir folgendes Tutorial ans Herz legen: vb-paradise.de/allgemeines/sou…ltiserver-tcp/#post194504

    Alternativ kannst du auch versuchen, den Server mit PHP zu schreiben. Kann ich dir zwar nicht so empfehlen, da es total langsam laeuft; ist auch eher eine kleine "Notloesung".
    (Eine PHP-Datei. Parameter mit $_GET[] abfangen. Chat sowie Benutzer in seperate Text-Dateien speichern. Am besten ohne Passwoerter! :P)
    Hi,

    ich kann auch noch kurz was dazu beitragen.

    Ganz kurz ein NAS-Server ist ein Server der Daten in einem netzwerk und
    Internet bereithält. Er ist, Linux basierend, jedoch leider nicht dafür
    geeignet Linux Prgramme aus zu füren, Nur speziell entwinkelte
    programme, sind Auf diesem server ausführbar.
    Doch das geht ;)
    Und zwar haben diese kleinen Kisten einfach nur eine andere Prozessor-Architektur. Nehmen wir mal an, dein NAS-Server hätte die IP-Adresse 192.168.0.10
    Du musst dann nur in die Konsole bzw. die Windows Eingabeaufforderung und dort eingeben: telnet 192.168.0.10
    Falls es dein NAS unterstützt, kannst du dich so direkt auf das System einloggen. Du hast dann die Konsole vor dir, als hättest ganz normales Linux auf deinem PC installiert.
    Wenn du dem Linux-System jetzt vertraut bist, kannst du hier tun und lassen was du willst...und auch installieren und ausführen was du willst.

    Das Problem (und eigentlich auch kein Problem) ist, dass es hier jetzt nur keine vorgefertigten Pakete gibt (wie man es von Linux-Paketverwaltungssystemen kennt). Du musst also selbst dein Programm kompilieren (was für einen richtigen Linuxuser nichts besonderes ist).

    Nehmen wir an, du willst für dein Linux auf dem PC (zb Ubuntu) ein Programm installieren, welches nicht in der Paketverwaltung ist (sehr oft der Fall...besonders neue Programm-Version betreffend)...du lädst dazu einfach den Quellcode vom Anbieter runter und kompilierst ihn. Es wird auf deine Prozessorarchitektur passend kompiliert (zb i386 oder x86-64).
    Im Prinzip läuft es auch für andere Geräte so ab. Du musst nur auf die andere Architektur kompilieren...Cross-Kompilieren. Und der GNU GCC ist so ein Cross-Compiler. Das heißt, du kannst von deinem Linux-PC einfach auf die Architektur deines Embedded-Geräts kompilieren (zb MIPS-Prozessor).

    Falls du C/C++ beherrscht und auch dem Linux-System vertraut bist, ist es ein Kinderspiel, mal schnell ein Programm zu schreiben und auf irgendein Embedded-System zu schieben. Und es ist auch echt egal, für was das System eigentlich gedacht ist. Nehmen wir das Programm vsFTP...ein Linux-FTP Server. Du kannst es einfach Cross-Kompilieren und auf einen alten Router, auf deinem NAS (sollte ein NAS eh schon haben) , auf deinem HD-MediaPlayer oder sogar auf deinem Fernseher ausführen lassen.
    Mit ein bisschen Übung und Hintergrundwissen geht das. Und am leichtesten gehts, wenn Telnetzugang zum Gerät vorhanden ist. Du kannst ja mal alle Geräte in deinem Netzwerk mit telnet anloggen...du wirst staunen wo du überall reinkommst. Selbst auf ner kleinen IP-Kamera läuft ein komplettes Linux System und du könntest hier nen richtigen Webserver oder sonst irgendwas installieren...solange es die Hardware und der Speicher erlauben.

    Ich bin grad nur zufällig über dieses Thema gestolpert und wollte die Info posten, falls es dir weiterhilft. Mich wundert es nur, dass hier keiner was bestimmtes bezüglich des NAS geschrieben hat...und zwar: Deine Vorstellung ist leider nicht möglich. Wenn du keine Änderung an deinem NAS-Gerät vornehmen willst (also eingriff ins Linux-System), dann bietet ein NAS so eine Möglichkeit einfach nicht.
    Diese Kiste ist eigentlich nur ein Netzwerkspeicher...eine Netzwerkfestplatte. In der Regel bieten diese FTP, Samba und nen MediaServer (zB Twonky oder MediaTomb) an. Manchmal auch nen kleinen Webserver für ne Homepage...und ob da Sprachen wie PHP laufen, das ist ungewiss.

    Falls es dein Interesse geweckt hat, kann ich dir auch gerne Links posten, die das Thema weiterführen.

    Für deinen Fall empfehle ich dir folgendes:
    Lass das NAS Gerät erstmal unberührt von solchen Dingen...wenn du was falsches machst, bringst du das Gerät ohne gute Kenntnisse nicht mehr zum laufen. Und auf dem NAS geht es normal einfach nicht.
    Vielleicht hast du noch einen alten Router irgendwo rumliegen...wenn du ein kleines C Programm schreiben kannst, würde ich es hier unterbringen und den Router einfach im Netzwerk laufen lassen (braucht auch weniger Strom als ein PC oder NAS). Bereits vorgefertigte Linux-Betriebssysteme für Router (welche den Router auch noch um Funktionen erweitern) findest du hier: dd-wrt.com/site/index
    Pure Linux-Betriebssysteme für Router und andere Embeddedgeräte findest du hier: openwrt.org/

    Und falls du zufällig den ASUS-Mediaplayer O!Play hast, ist das hier eine gute Seite: sites.google.com/site/farvoice/about_en
    Hier gibt es auch schon vorkompilierte Programme, so dass du selbst ohne Programmierkenntnisse diesen simplen HD-MediaPlayer zu einem richtigen NAS bzw Server mit etlichen Funktionen erweitern kannst.
    Wer oft mit Linux auf dem PC arbeitet und zufällig diesen Player hat und mit diesem Thema darauf rumgespielt hat, hat es sehr schnell begriffen wie easy sowas ist und wird sich schnell daran machen, irgendwelche verstaubten Geräte mit Netzwerkanschluss rauszukramen und zb aus nem alten Netzwerkdrucker nen Webserver machen :D

    Liebe Grüße

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Andi_VB“ ()