Laden...

C# auf Webserver

Erstellt von somebody vor 15 Jahren Letzter Beitrag vor 15 Jahren 1.429 Views
S
somebody Themenstarter:in
13 Beiträge seit 2008
vor 15 Jahren
C# auf Webserver

hallo liebes forum,

ich bin ein ziemlicher neuling im bereich c# und wie im nachfolgenden erklärt auch leider ein noob in sachen serverprogrammierung.

seit einiger zeit schon arbeite ich im bereich webDESIGN und kenne mich vor allem mit sprachen wie php und actionscript aus. leider kommt man da aber nicht so mit server-architektur an sich in berührung (jeden falls ich) und nutzt zu meist das, was man vom provider vorgesetzt bekommt. na gut also ich habe schon einen socket-server für ein flashspiel (rein experimentell und lokal) in php programmiert, was aber hinsichtlich serverprogrammierung schon das höchste der gefühle war.

nun beschäftige ich mich seit ein paar tagen mit c# und habe dank meiner kenntnisse in der objektrientirten sprache actinscript und der eindeutigen vorteile gegenüber c++ (mit welcher ich nur etwas rumexperimentiert habe ... jedoch nie wirklich schätzen gelernt hab) auch recht leicht zugang zu dieser gefunden. sie macht mir wirklich freude.

leider habe ich aber ein ziemlich generelles verständnisproblem, was die serverprogrammierung betrifft. bitte lacht mich, für die wahrscheinlich für die meisten hier bescheuert klingenden, fragen nicht aus 😉

die da folgende wären:

_wenn ich einen managed server bei einem provider buche kann ich auf diesem c# programme ausführen, die das verhalten des servers handeln? _
(also der server soll wirklich nur "ein paar" ganz spezielle funktionen ausführen, die ich gerne in c# programmieren würde)

wenn ich auf windows entwickle, auf dem server aber zumeist ein linux bzw. ein lampp läuft, ist das programm durch die "universal language runtime" (ich hoffe ich hab das richtig verstanden) und das .net-framework auf diesem lauffähig? bzw. was muss ich dabei beachten?

Ich wäre sehr dankbar, wenn mir jemand von euch ein paar hinweise hierzu geben könnte.

nur zur erläuterung meiner idee:
ich entwickle gerade ein programm, welches zumeist offline läuft und diverse datensätze in lokalen datenbanken verwaltet. damit aber von zeit zu zeit alle daten an zentralem ort zusammengeführt werden, soll ein server her, auf welchen die datensätze in einer "hauptdatenbank" zusammengeführt werden bzw. zur auswertung abgerufen werden können. der server soll aber auch auf anfrage des programms dokumente (zumeist pdf) bereitstellen und schauen, ob der jeweilige nutzer des programms in der serverdatenbank registriert und somit berechtigt ist sachen zu speichern oder abzurufen.
die verhaltensweisen des servers würde ich halt sehr gerne in c# programmieren.

ich hoffe dieser einstiegsbeitrag zeichnet nicht all zu negativ mein bild in diesem forum 😉

liebe grüße
somebody

Das Leben ist ein scheiß Spiel ...
... aber es hat ne geile Grafik!

G
497 Beiträge seit 2006
vor 15 Jahren

wenn du .NET-Programme auf einem Server im Internet laufen lassen willst, wirst du höchstwahrscheinlich einen Windows-Server mieten müssen. Mit Mono kann man auch .NET-Anwendungen unter Linux laufen lassen, die Kompatiblität ist aber nicht in allen Fällen gegeben, besonders wenn man brandaktuelle Features nutzen will. .NET 2.0 wird aber fast vollständig unterstützt. Problem: der Provider muss Mono anbieten - keine Ahnung, ob sich das ansatzweise durchgesetzt hat.

Ansonsten bliebe halt ein Windows-Server, zumeist mit IIS als Webserver-Komponente. Da kann man die volle Palette von Windows-Anwendungen laufen lassen, man ist im Prinzip nur durch die Vorgaben des Providers bezüglich Softwareinstallation eingeschränkt.

deine Idee könnte über selbsterstellte ASP.Net- oder WCF-Webdienste abgedeckt werden. Als Datenbank-Backend irgendein SQL-Server (je nachdem, was der Provider im Angebot hat), Treiber gibts für fast alle Datenbanken.

S
somebody Themenstarter:in
13 Beiträge seit 2008
vor 15 Jahren

ich danke dir vielmals für die antwort!
... is ja nicht selbstverständlich bei so blöden fragen 😉

ich habe für die webentwicklung derzeit ein xampp laufen, kann ich sowas damit zur entwicklung ersteinmal simulieren? oder muss ich mir da besser schon nen iis aufsetzen? habe wie gesagt leider noch keine ahnung davon und finde im netz nicht wirklich hilfreiche infos darüber.

lg
somebody

Das Leben ist ein scheiß Spiel ...
... aber es hat ne geile Grafik!

G
497 Beiträge seit 2006
vor 15 Jahren

der IIS wird ja mit Windows mitgeliefert. XP hat den IIS 5, Server 2003 den IIS 6, Vista und Server 2008 liefern IIS 7 mit. Standard-Webdienste laufen auf allen 3 Servern, die Unterschiede liegen hauptsächlich im Setup der Webanwendung (speziell der IIS 7 ist da im Vergleich zur Version 5 und 6 deutlich anders aufgebaut). IIS nachinstallieren (über Systemsteuerung/Software), aktuelles .NET-Framework installieren. Wenn das Framework schon drauf ist und der IIS nach dem Framework installiert wird, einmal "aspnet_regiis -i" aufrufen (liegt unter %WINDIR%\Microsoft.NET\Framework\Version, z. B. C:\Windows\Microsoft.NET\Framework\v2.0.50727), damit das Framework sich im IIS registriert. Danach ist der Webserver bereit.

M
303 Beiträge seit 2006
vor 15 Jahren

Problem: der Provider muss Mono anbieten - keine Ahnung, ob sich das ansatzweise durchgesetzt hat.

Blödsinn. Wenn er einen Server hat, muss der Provider überhaupt nichts anbieten, dann kann er sich selbst die Software einrichten, die er braucht. Dein Argument würde bei Shared Webhosting greifen, aber du sprichst doch in deinem Post selbst von einem Server.

S
somebody Themenstarter:in
13 Beiträge seit 2008
vor 15 Jahren

hallo und vielen dank für die antworten. war gestern total im lesewahn versackt und habe somit leider nich mitbekommen, dass schon wieder eine antwort auf meine noob-fragen geschrieben worde. habe auch gleich mal die forenoptionen umgestellt, vielleicht bekomme ich ja jetzt notifications.

@marco.b: bin mir nich ganz sicher, doch ich habe ja von einem managed server gesprochen (bezüglich der serviceleistungen, die ein provider hierbei zu leisten hat, würde ich mich wahrscheinlich auch für diesen entscheiden wollen) und da gibt es doch bestimmt restriktionen, was der provider installieren kann/will ... weis nich ob GarlandGreene vielleicht darauf bezug genommen hat.

generell bin ich leider auf ein kleines problem gestoßen ... ich arbeite auf meinen beiden rechnern mit xp-home ... welches soweit ich nun erfahren musste keinen iis mitbringt 🙁
gibt es diesbezüglich ein open source-projekt, à la xampp, welches mir eine ähnliche basis schafft? bin leider als student nicht so gut betucht.

da ich im netz irgendwie kaum infos finde und mittlerweile schon das gefühl habe, dass ich komplett nach dem falschen suche nur mal noch zwei kleine frage, gegen meine verwirrung:

generell löse ich das doch dann aber über webservices oder?
d.h. ich setze den server auf/lasse ihn aufsetzen, installiere das geschriebene programm und lasse es als dienst laufen??!!

ich danke euch vielmals, dass ihr so lieb seid und mich bei meinen dummen fragen unterstützt.

liebe grüße
somebody

Das Leben ist ein scheiß Spiel ...
... aber es hat ne geile Grafik!

M
303 Beiträge seit 2006
vor 15 Jahren

Achso, entschuldigung das habe ich überlesen. Ich dachte, es ginge um einen Rootserver.

@GarlandGreene: Sorry für die falsche Korrektur 😉

Zum Problem: Für dein Vorhaben würden sich in der Tat Webservices anbieten. Dazu benötigst du den IIS Server und der wird bei einem Managed Windows-Server garantiert enthalten sein. Kein Windows Server arbeitet auf Basis von XP Home!
In 90% der Fälle bekommst du eine Windows 2003 Server Standardedition, bei meinem Server ists die 64-Bit Version.
In jedem Fall wird der IIS installiert sein.

Zum Entwickeln an deinem Arbeitsplatz benötigst du den IIS nicht zwingend, da ja mit Visual Studio ein Entwicklungswebserver ausgeliefert wird. Falls du unter MONO arbeiten willst, sollte dir der XSP Webserver helfen können, der kommt glaube ich standardmäßig mit MONO.

S
somebody Themenstarter:in
13 Beiträge seit 2008
vor 15 Jahren

hallo ihr lieben,
leider war ich gestern durch familiäre verpflichtungen außer rechweite zu einem internetzugang, daher kann ich erste heute antworten. allerdings hatte ich mir vorher noch schnell deine antwort durchlesen können und hab mir für die lange fahrt mal ein paar sachn zum durchlesen ausgedruckt.

an dieser stelle sollte ich jedoch vielleicht endlich ersteinmal meine enticklungsumgebung klären (sorry, dass ich das bisher noch nich getan hatte) ... damit keine weiteren misverständnisse entstehen.

ich meinte nämlich mit xp-home keinesfalls den angedachten server (ich würde bei dem system auf einem server glaube ich auch ersteinmal stutzen 😉 ... und nach einem anderen provider ausschau halten )

also ich habe hier auf meinen rechnern derzeit installiert
Windows XP Home 32
Visual C# 2008 Express
SQL Server 2008
XAMPP 1.6.5 (Apache HTTPD 2.2.9 + Openssl 0.9.8h, MySQL 5.0.51b, PHP 5.2.6) ... durch meine "tätigkeiten" im webdevelopement

da ich mich auch schon ne weile nach managed servern umsehe, habe ich mitbekommen, dass die meisten provider einfach mal ein LAMPP anbieten und die
server, bei denen es sich um windows-server handelt, preislich nach oben ser herausstechen, daher werde ich wohl oder übel in den sauren apfel beissen müssen und mich serverseitig eher auch auf apache einstellen. allerdings bin ich mir da noch nicht ganz sicher und wäge noch die vor- und nachteile ab!

_Leider hieße ein apache ja aber bestimmt auch für mich, dass ich serverseitig auf .net 3.0 verzichten muss, oder?? habe bisher nur das oben schon angesprochene mod_mono und ein mod_aspdotnet gefunden, die beide nur bis 2.0 kompatibel sind! somit wäre ja WCF hinfällig, oder?? _

grundsätzlich habe ich dabei nun noch folgende fragen, bei welchen ich wiederum sehr dankbar wäre, wenn mir jemand vielleicht ein paar hinweise geben könnte!

  1. bei webservices mit .NET stoße ich unweigerlich immer wieder auf ASP, ist meine grundsätzliche ilusion einen webservice direkt mit C# zu schreiben also generell mist?

  2. da ich in allen unterlagen, die ich bisher gelesen habe, immer wieder SOAP als standard für RPC gefunden habe: arbeiten alle Webservices mit SOAP bzw. ist das einfach mal der vorteilhafteste für interoperable RPC (ich weis, wie oben erläutert, nun leider nicht mehr so genau, ob ich auch sererseitig strikt c# bwz eine .net 3.0 basierende sprache nutzen kann).

ich danke euch nocheinmal sehr für eure hilfe und hoffe, dass man wenigstens merkt, dass ich mich wirklich aktiv mit diesem thema auseinander setzen möchte und euch nicht nur als noob eure kostbare zeit klaue.

liebe grüße
somebody

Das Leben ist ein scheiß Spiel ...
... aber es hat ne geile Grafik!

799 Beiträge seit 2007
vor 15 Jahren

Zu Frage 1: Nein, ist keine Illusion. Du kannst diese komplett in .Net bzw. C# schreiben.

Zu Frage 2: Du kannst ausschließlich C# auf dem Server verwenden.

As a man thinketh in his heart, so he is.

  • Jun Fan
    Es gibt nichts Gutes, außer man tut es.
  • Erich Kästner
    Krawutzi-Kaputzi
  • Kasperl
S
somebody Themenstarter:in
13 Beiträge seit 2008
vor 15 Jahren

hi und danke für deine antwort,

leider haben wir uns aber bei der zweiten etwas falsch verstanden. ich hatte nun bereits von mehreren varianten gelesen, die serverseite zu ralisieren (asp.net, java, pearl und sogar php5.x) und wie du mir liebenswerter weise ja schon bei 1. beantwortet hast auch c#

ich wollte diesbezüglich eigentlich nur wissen, ob SOAP (da in ausnahmslos allen von mir gefundenen, dokumenten davon die rede war) der einzige bzw. vorteilhafteste standard für plattformübergreifende kommunikation sei?

liebe grüße
somebody

Das Leben ist ein scheiß Spiel ...
... aber es hat ne geile Grafik!

799 Beiträge seit 2007
vor 15 Jahren

Also soviel ich weiß, gibt es auch andere aber die sind bei weitem nicht so gut dokumentiert wie SOAP.

Ich glaube, wenn du .Net verwendest, ist es der am besten festgetrampeltste Pfad und bietet damit die meisten Vorteile. Vor allem da ja wirlich so eine ziemlich jede Programmier- und Skriptsprache SOAP Kommunikation mit irgendeiner API unterstützt. (Dabei ist besonders ein Test-Programm in Perl schnell getippt)

An deiner Stelle würde ich zu dieser Technologie greifen.

As a man thinketh in his heart, so he is.

  • Jun Fan
    Es gibt nichts Gutes, außer man tut es.
  • Erich Kästner
    Krawutzi-Kaputzi
  • Kasperl
S
somebody Themenstarter:in
13 Beiträge seit 2008
vor 15 Jahren

ich danke dir für deine antwort und euch allen natürlich vielmals dafür, dass ihr mir bei diesen grundlagen-frangen geholfen habt. und ihr habt mir wirklich sehr geholfen. es ist ja schließlich nicht gewöhnlich, wenn jemand mit so blöden anfängerfragen vorbeischneit, dass er so bereitwillig hilfe bekommt ... danke.

nun habe ich nämlich zumindest einen überblick über meine möglichkeiten und kann diese untereinander abwägen.

ich werd nun einfach mal ein paar tutorials dazu durcharbeiten und sehen, wie ich am besten zurecht komme. ansonsten, werde ich ja dabei dann bestimmt ein paar spezifischere fragen haben, für die ich dann bestimmt eigene themen öffnen muss, solange sie im forum noch nicht geklärt wurden. aber bei so viel freundlicher hilfe, hab ich da ein gutes gefühl 😉

vielen dank und liebe grüße
der basti

Das Leben ist ein scheiß Spiel ...
... aber es hat ne geile Grafik!