Ich habe eine Frage zum Design einer Anwendung, an der ich gerade arbeite.HTTP HTTP RESTfull API-Anfragen vom HTTP-Server an meine Anwendung weiterleiten
Ich machte eine monolithische Java-Anwendung mit Sockets rund um die Uhr geöffnet, so etwas wie ein Spieleserver. Ich versuche nur zu sagen, dass es sich um eine einzelne jar-Anwendung handelt und nicht um eine modulare Servlet/Page-basierte Webanwendung.
Ich möchte jetzt eine RESTful API zu dieser Anwendung hinzufügen. So können Personen/Clients HTTP-Anfragen an meine Anwendung stellen, um bestimmte Informationen zu erhalten. Aufgrund der monolithischen Natur meiner Java-Anwendung bin ich unsicher, wie dies implementiert werden soll. Eine weitere wichtige Sache: Ich erwarte mehrere Anfragen pro Sekunde, also wäre es schön, wenn ich einen bestehenden http-Server mit den Anfragen betrauen könnte und sie irgendwie an meine App weiterleiten könnte, um eine Antwort einzurichten und den http-Server senden zu lassen es wieder.
Einige Dinge, die ich gedacht habe: statt Zuordnung zu Servlets auf Anfrage
wickeln meine Anwendung in einer tomcat Anwendung, obwohl ich nicht sicher bin, ob tomcat kontinuierlich eine Anwendung ausführen kann.
Öffnen Sie einen Socket und parsen eingehende HTTP-Anforderungen selbst (oder es gibt wahrscheinlich eine Lib für das?). Ich befürchte, dass dies Auswirkungen auf die Leistung haben wird, und würde lieber vorhandene http-Server verwenden, da sie für hohen Datenverkehr optimiert sind.
Verwenden Sie einen bestehenden http-Server, um die Anfragen zu bearbeiten (Apache, LightTP, ...) und leiten Sie Anfragen über Dinge wie scgi an meine App weiter oder verwenden Sie einen Server, der via XMLRPC weiterleiten kann. Gibt es andere Technologien/Protokolle, um dies zu tun?
Irgendwelche Ratschläge, wie man damit umgeht? Danke!