Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] (Verständnisfrage) Webservices konsumieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] (Verständnisfrage) Webservices konsumieren

    Guten Morgen,

    ich wess nicht, ob ich hier die richtige Kategorie ausgewählt habe, falls nicht, bitte ich um Entschuldigung

    Ich habe mich nun ein Weilchen mit Webservices auseinandergesetzt (mit ASP.NET) und bin eigentlich sehr angetan von der Technologie und könnte es für ein aktuelles Projekt sehr gut gebrauchen.

    Ich mache mir nur Gedanken, wie es Performance-Technisch aussieht, wenn meine PHP-Applikation auf einen Webservice zugreift.
    Selbst wenn die 2 Dienste auf dem selben Server laufen; verlangsamt dieses Hin und Her die Applikation nicht extrem?



    Bevor ich grössere Tests mache, wollte ich mich erkundigen, ob jemand mehr darüber weiss, oder selbst schon Erfahrung gemacht hat.



    Vielen Dank!
    Gruss,
    Richard


  • #2
    "extrem Verlangsamen" was verstehst du darunter? Ich denke das Beste wäre wenn du es einfach mal selbst ausprobierst und für dich entscheidest ob es dir schnell genug ist oder nicht.

    Ich schreib grad meine Abschlussarbeit und dabei werden rund 40-50 Webserviceanfragen Abgeschickt, das geht recht flott. Natürlich hast du immer nen HTTP Request oder zumindest ne Socketkommunikation. Das heißt aber nicht unbedingt das es langsam ist. Aber wie gesagt, ich denke das musst du selbst entscheiden.

    Kommentar


    • #3
      Hallo Florian,

      mit "extrem Verlangsamen" meine ich, dass viele Anfragen halt von (kleines, dummes Besipeiel) von A (Applikation) zu B (Service) zu C (Datenbank) und zurück gehen, statt direkt von A nach C.

      Ich kann mir vorstellen, dass halt durch die Kommunikation viel Overhead entsteht, was bei vielen Abfragen eher negativ ist.


      Getestet habe ich im kleinen Rahmen, was natürlich kein Problem war.
      Aber sobald das Projekt an Grösse gewinnt, kann ich mir vorstellen, dass eben diese Probleme auftreten...

      Kommentar


      • #4
        Natürlich wirst du immer einen Overhead haben, aber die Frage ist was du möchtest. Willst du direkt auf die DB Zugreifen? Kann unter Umständen einfach unmöglich sein (weil z.b. externe Dienste drauf zugreifen sollen die nur eine bestimmte Schnittstelle zur Verfügung haben sollen).

        Schau dir mal große Webservices an, Facebook Connect, Twitter API, Google Maps ... die laufen alle sehr performant und sind doch stark benutzt!

        Kommentar


        • #5
          In unserem Unternehmen arbeiten wir mit einem PHP-Front- und einem Java-Backend. Diese beiden kommunizieren über natives xml per curl. Die Zeit bis zur Ankunft einer Response ist innerhalb eines Netzwerks so gering, dass es im Vergleich zum Parsen einer Seite kaum ins Gewicht fällt..

          Kommentar


          • #6
            Ich habe letztens in sonem Vortrag von jemandem gehört, dass er sich gefreut hat via SOAP eine Anbindung von Magento an eine Wawi geschaffen zu haben, welche für den Import eines Produktes nur 1,2 Sekunden benötigt hat. Ein anderer hat dagegen gehalten. Er schafft in der gleichen Zeit zwei Produkte...
            Ich hab nur gedacht ich bin im Wald.

            Schau dir mal große Webservices an, Facebook Connect, Twitter API, Google Maps ... die laufen alle sehr performant und sind doch stark benutzt!
            Wie soll man sich die anschauen? Sollte man nicht Mitarbeiter eines dieser Unternehmen sein um dazu berechtigt zu sein?

            Sicher möglich ist alles. Aber weisst du ob Google evtl. für jeden Request ein eigenes Rechenzentrum betreibt?
            Blos weil die Anwendung bei denen flüssig läuft sagt noch absolut garnichts über die Performance der Architektur aus!

            Unter extrem verlangsamen verstehe ich:

            Wenn ich mit nem Streameditor 5 Millionen Datensätze aus einer Datei im CSV Format auf der Kommandozeile auslese und direkt in eine Datenbank importiere dann geht das ZZ (heute fertig).

            Wenn ich aber die Datensätze z.B. via SOAP API wohlmöglich noch einzeln oder in 20er Portionen importiere, dann werde ich das Ende des Importes möglicherweise nicht mehr erleben (und ich erfreue mich bester Gesundheit und bin Anfang 30).

            Ich schreib grad meine Abschlussarbeit und dabei werden rund 40-50 Webserviceanfragen Abgeschickt, das geht recht flott.
            Das ist ja auch mal eine geniale Aussage.

            Was wenn richardf zufällig bei nem magentalastigen Telekommunikationsanbieter arbeitet und die Vergabe der IPs für Europa zukünftig über einen SOAP Webservice einführen möchte?

            Durch so eine Aussage kannst du die Welt vernichten

            Kommentar


            • #7
              Zitat von phpsecretary Beitrag anzeigen
              Wie soll man sich die anschauen? Sollte man nicht Mitarbeiter eines dieser Unternehmen sein um dazu berechtigt zu sein?
              Das ganze ins öffentliche APIs, da kannst du ja mal anzapfen und sehen wie lang eine Abfrage dort dauert. Da kannst du davon ausgehen, dass diese WS stark benutzt werden, sollte also die Geschwindigkeit ausreichend sein kann richardf sehen, dass ein Webservice schnell genug seien kann.

              Ich versteh nicht ganz wo drauf du mit deinem Posting hinaus willst? Sicherlich sind Webservices immer irgendwo langsamer als direkt Socketkommunikation, aber ich denke mal dem ist sich richardf bewusst ...

              Kommentar


              • #8
                Eigentlich wollte ich damit aussagen, dass es abhängig vom Einsatzgebiet des WS ist.
                Und selbstverständlich ist es auch sehr stark davon abhängig, wie der WS umgesetzt wird.

                Wenn man wie Twitter den Bedarf hat Unternehmensfremde Entwickler auf bestimmte Funktionen seiner Applikationen zugreifen zu lassen, dann kann man einen WS einsetzen bzw. einen WS als Standard festzulegen. Natürlich mit allen Nachteilen die Standards nunmal so haben.

                Der Vorteil soll darin liegen, dass man theoretisch nur eine Dokumentation erstellen müsste und schon könnten hunderte Entwickler die Funktionen des WS in ihrer Software verwenden.

                Der Nachteil ist die Performance und das sollte nicht runtergespielt werden, weil sich darauf ja die ursprüngliche Frage bezog.

                Kommentar


                • #9
                  Der Nachteil ist die Performance und das sollte nicht runtergespielt werden, weil sich darauf ja die ursprüngliche Frage bezog.
                  Die AUssagen sind genauso präzise, wie die ursprüngliche Frage:
                  verlangsamt dieses Hin und Her die Applikation nicht extrem?
                  Was dem een sin „Recht flott“ is den annern sin „extrem langsam“

                  Faktisch benutzen Webservices oftmals Klartextformate wie XML, die zusammengestellt und geparst werden müssen. Dazu kommt der Overhead einez Verbindungsaufbaus und die Datenübertragung übers Netz. Damit wird die Geschwindigkeit von der Performance der beteiligten Server, von der Anzahl gleichzeitig zugreifender Clients u.ä. abhängig. Also, welche Pauschalaussage darfs sein?
                  --

                  „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                  Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                  --

                  Kommentar


                  • #10
                    Zitat von nikosch Beitrag anzeigen
                    Also, welche Pauschalaussage darfs sein?

                    Wie erwähnt habe ich keine grossen Tests machen können - und Google war mir auch nicht all zu hilfreich. Ich wollte lediglich Erfahrungen von anderen Usern hier einsammeln und nicht dumme Kommentare.

                    Auf jeden Fall vielen Dank an alle, die mir Ihr Wissen weitergegeben haben.

                    Gruss,
                    Richard

                    Kommentar


                    • #11
                      Ich denke, man kann schon sagen, dass Webservices netzintern kein großen Probleme mit sich bringen (Meiner Erfahrung nach und siehe meinen Beitrag oben).

                      Zugriffe auf externe Services sollten mit Vorsicht zu genießen sein, da es vielleicht auch mal passiert, dass ein Service aufgrund von hoher Auslastung eine Response-Zeit von mehreren Sekunden haben kann - Was das für die Applikation bzw. deren Auslieferung bedeutet, kann man dann für sich entscheiden.

                      Kommentar


                      • #12
                        Zitat von xm22 Beitrag anzeigen
                        Ich denke, man kann schon sagen, dass Webservices netzintern kein großen Probleme mit sich bringen (Meiner Erfahrung nach und siehe meinen Beitrag oben).

                        Gut, danke!

                        Was ich genau machen wollte war eine Art Backend, dass auf interne Webservices zugreift und ein PHP-Frontend, dass halt die Benutzerinteraktion und das Benutzer-Management übernimmt.

                        Ich werde das mal genauer anschauen, danke nochmals für Deinen/Euren Input!

                        Kommentar

                        Lädt...
                        X