AWS-API-Gateway + Elastic Beanstalk und Microservices

Werde ich bauen microservices-Architektur in AWS und ich möchte Sie bitten, zu klären meine Zweifel.

Mein Aktuelles Allgemeines Konzept

Ich würde gerne mit API-Gateway, das macht microsevices " APIs laufen in Elastic Beanstalk. Ich möchte die Elastic Beanstalk in der VPC, ohne direkten Zugriff aus dem Internet auf Ihre Instanzen.

AWS-API-Gateway + Elastic Beanstalk und Microservices

Fragen & die Zweifel:

  1. Elastic Beanstalk bekommt subdomain auf Anwendung erstellen. Diese subdomain sollte verwendet werden, die von API-Gateway mit integration Typ: AWS-service in Aktion, - Konfiguration, - habe ich Recht?
  2. Was ausmachen würde ein einzelner microservice? Eine Elastic Beanstalk-Anwendung ist eine spezifische skalierbare microservice?
  3. Wie die microservices sollen miteinander kommunizieren? Es wäre eine Aufgabe, wo Im gehend zu nutzen, SQS (Simple Queue Service). Aber in anderen Fällen ist es besser, wenn zwei microservices kommuniziert mit einander durch API-Gateway, nicht direkt - habe ich Recht?
  4. Test-Umgebung: Welche Struktur sollte ich in der test-Umgebung (oder staging-env.)? Ich denke, über die Erstellung von separaten VPC mit anderen Elastic Beanstalk und andere Amazon-Dienste.
  5. Test-Umgebung und API-Gateway: Wie sollte ich ein API-Gateway? Sollte es clients ermöglichen den Zugriff auf die microservices in der Testumgebung wenn request-spezifische subdomain, wie: test.mydomain.com/hello_world/say_hello. Ich bin mir nicht sicher über die Verwendung von API-Gateway in CI/CD, um es schnell und einfach, ohne manuelles kopieren einige Konfiguration, von der Testphase bis zur Serienreife. (Ich bin mir nicht erwarten, dass jede komplexe Lösung, nur einige Hinweise darüber, welche Komponenten, Bauteile, Konzepte, könnte ich Verwendung für Sie. Weitere details werde ich zu finden auf meinem eigenen).
  6. Haben Sie keine Erfahrung bei der Bereitstellung von apps zu Elastic Beanstalk verwenden Codep Bereitstellen und/oder Jenkins? Ich bin interessant, in welcher Art und Weise besser sein könnte: Jenkins, AWS Code Bereitstellen oder Jenkins+CodeDeploy.
  • Im Allgemeinen, wenn die Leute beziehen sich auf microservices, Sie reden AWS Lambda oder Azure-Funktionen. Im Falle von Lambda-Funktionen können direkt aufgerufen werden von der API-gateway, extern, dann entweder ausführen SQS Aufgaben oder kickoff anderen lambda-Funktionen direkt. Auch sehe ich nicht die Notwendigkeit für ein VPC-es sei denn, Sie verbinden die VPC einige on-prem-Infrastruktur und die Lambda-Funktionen der Zugriff auf diese Vermögenswerte.
InformationsquelleAutor nicq | 2016-11-17
Schreibe einen Kommentar