![]() |
Serveranwendung
Morgen.
Ich würde mal gerne wissen, wie ich eine Serveranwendung schreiben kann und welche Voraussetzungen der Server erfüllen muss. Die Serveranwendung sollte eigentlich nur zwei Sachen können: An einem bestimmten TCP Port lauschen und bei Bedarf in eine mySQL schreiben bzw. daraus lesen können. Welche Möglichkeiten gibt es da? ASP. würde wahrscheinlich gehen, nur leider habe ich keinen ASP Server zur Verfügung. Eine EXE würde garantiert gehen, aber auf nem Apache geht das halt nicht. Ein Java Servlet würde mir noch einfallen - wie sind da die Voraussetzungen? |
Re: Serveranwendung
Äh, Apache? Exe würden gehen wenn man die entsprechende Schnittstelle von Apache bedient.
Aber willst Du das eventuell bei einem Provider laufen lassen bei dem Du eine 0815-Homepage hast und dort auch nicht ASP.NET verfügbar ist. Dann vergiss gleich wieder Delphi und Java. Wenn Du Glück hast kannst Du eigene PHP-Scripte hochladen welche das Gewünschte erledigen. |
Re: Serveranwendung
Was hat denn EXE-Unterstützung mit Apache zu tun? :gruebel:
Naja, ohne dass du Executeable-Files ausführen kannst, wirst du da nicht weit kommen. Du könntest auch ein Skript endlos laufen lassen (PHP oder Perl oder so), aber da hast du dann eher wenig Kontrolle über das Skript. Eigentlich sind ja die Services genau für sowas gedacht, aber wenn du keinen VOllzugriff auf den Server hast, siehst hier schlecht aus. Ev. hilft dir ein Cronjob. Grüße Faux |
Re: Serveranwendung
Java :kotz:
wie wärs mit einem SOAP-Server? die müssten doch theoretisch auch unter Apache laufen oder? Hab schon lange keinen mehr gemacht, aber der Output ist afair eine DLL und ich bin mir ziemlich sicher dass es ein Apache Modul dafür gab :) |
Re: Serveranwendung
Öööh... Ich meinte ein Apache unter Linux. Hab ganz vergessen dass es den ja auch für Windows gibt.
Naja, egal. Dann werd ich es wohl doch über PHP machen. Wieviel mehr Möglichkeiten habe ich mit CGI? Python? PERL? |
Re: Serveranwendung
Zitat:
Also du solltest dir mal bewusst sein, dass jedes dieser Skripte (incl. PHP) eine maximale Laufzeit auf dem Server hat (meistens 10-30 Sekunden) wie nicht überschritten werden darf. Nach dieser Zeit muss sich entweder das Skript selbst wieder aufrufen, oder es wird von der Skriptengine (oder wie immer man das Teil nennt) geklillt. Grüße Faux |
Re: Serveranwendung
Zitat:
Zitat:
Zitat:
Jedenfalls hast du je nach Sprachwahl extrem unterschiedliche Möglichkeiten. Die meisten Unterschiede liegen letztlich darin, welche Bibliotheken du verwenden kannst. Für die einfache Arbeit mit einer Datenbank (nahezu beliebigen Typs) und einfache Abfragen sind die sicherlich alle gleich gut geeignet. Die Entscheidung sollte hier einfach über die eigenen Vorlieben und Kenntnisse fallen. Da du ja (wenn ich mich richtig erinner) gerade mit viel mit Java arbeitest, solltest du dir ruhig die JSP/Servlet Geschichten anschauen. Alles was du brauchst ist ein Server, der die Technik unterstützt. Am häufigsten wirst du hier den Namen Tomcat hören (kommt auch von Apache und kann sehr leicht mit dem Apache Webserver zusammenarbeiten). Beim Einsatz von Java im Web Bereich verwendest du (hauptsächlich) zwei Techniken, JSPs und Servlets. Letztlich ist das eine falsche Aussage, JSPs werden in Servlets übersetzt und Servlets sind auch nur Java Klassen, aber so von der Arbeit her unterscheiden die sich halt leicht. So entsprechen JSPs ein wenig dem, was du aus PHP kennst. Du hast hier ein spezielles Tag, mit dem du Skriptanweisungen in einer HTML-Seite einbetten kannst. JSPs werden eigentlich nur für die Anzeige der Webseite beim Client verwendet. Du kannst Code direkt einbetten (was immer eine unschöne Vermischung von Java und HTML darstellt) oder eigene Tags definieren und diese verwenden (etwas aufwändiger aber lohnt sich!). Servlets sind hingegen normale Java Klassen und haben auch Zugriff auf alle Java Bibliotheken (damit insbesondere auch auf JDBC). Der eigentlich unterschied zu normalen Applikationen liegt dann darin, dass du keine main verwenden wirst, sondern eine post und get Schnittstelle hast. Wie gesagt, für die eigentliche Abarbeitung eignet sich alles gleich gut, was du einsetzt sollte von der Vorliebe abhängen. Wenn du allerdings ein fertiges System verwendest, musst du schauen was dir zur Verfügung gestellt wird. Ein Apache ist nur ein Webserver, hier läuft weder PHP, noch Perl, noch Python, .... Das muss schon von jmd. installiert werden. In der Regel gibt es ein voristalliertes PHP modul und das war's. Wenn du hier keine Möglichkeiten hast selbst etwas zu installieren, entfallen schon alle anderen Lösungen. Gruß Der Unwissende |
Re: Serveranwendung
Zitat:
|
Re: Serveranwendung
[OT]
Zitat:
[/OT] |
Re: Serveranwendung
Da fällt mir spontan ein Webservice ein, der auch einfach in PHP geschrieben werden darf, sofern PHP in der 5er Version läuft...
![]() |
Re: Serveranwendung
Zitat:
Zitat:
|
Re: Serveranwendung
Mh, wenn es dir um einen bestimmten TCP-Port geht ist ein WebService nicht unbedingt notwendig.
Letztendlich bedeutet das, dass du auf einem schon relativ niedrigen Level kommunizeren willst, das heißt, dass du dir eine Art "eigenes Protokoll" überlegen musst. Also festgeleget Nachrichten an den TCP-Port schicken und dafür bestimmte Antworten erwarten. Soll es so nach dem Motto laufen "Gib mir mal alle Namen meiner Freunde aus der DB", dann denke ich ist ein WebService zuviel. BTW, Tomcat ist auf dem Java-Gebiet eher ein simpler Webserver, die größeren wie JBoss, WebSphere usw. sind dann schon wahre Application-Server mit EJB-Unterstützung usw. |
Re: Serveranwendung
Zitat:
|
Re: Serveranwendung
Naja, eben die einfache String-basierte Kommunikation über einen TCP-Socket.
Denn so Vorteile wie die Unabhängigkeit von Plattform und verwendeter Programmiersprache sind hier denke ich nicht stechend. Die Argumentation war auch nicht, dass es mit WebServices nicht geht, sondern eher dass es zu aufwendig ist für eine simple Kommunikation, in der beide Kommunikations-Partner weitgehend festgelegt sind. |
Re: Serveranwendung
Ich denk aber schon, dass es recht kompliziert wird, über einen anderen Port zu kommunizieren. Wenn der Server wirklich bei einem Provider steht, glaub ich nicht dass dann dafür extra ein Port geöffnet wird.
Aber es gibt bekanntlich mehr Lösungen als Probleme :zwinker: |
Re: Serveranwendung
Hi Jelly,
jap, da hast du mit Sicherheit Recht! Ich kenn auch keinen Provider der so etwas mitmacht. Aber wenn man einen VServer, dedicated Server, oder was auch immer es inzwischen für Namen dafür gibt, hat, denn könnte man den entsprechenden Port selber aufmachen. Czapie. |
Re: Serveranwendung
Hab in PHP noch nie nen Webservice geschrieben, aber theoretisch sollte doch der komplette SOAP Teil eigentlich gekapselt sein, so dass es IMHO weniger Arbeit macht als ein eigenes Protokoll.
Egal wie du es machst solltest du entweder die Queries auf der Serverseite haben, oder alle auf SQL Injection prüfen vor dem Ausführen. Damit dir keiner ein "drop database" schicken kann;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz