Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo zusammen, 

ich würde in Zukunft gern einmal folgende Konstellation ausprobieren und wollte mich einmal vergewissern, ob es so möglich ist und Sinn macht. 

- Es existiert eine Anwendung, in der pro Stunde 3000 Bilder hoch geladen werden
- Backend: Laravel
- Server ist ausreichend dimensioniert und hat eine gute Anbindung


Nun besteht ja die Möglichkeit, via Nginx einen Loadbalancer zu erstellen, der im Grunde folgendes macht:

- Backend API wird aufgerufen
- Request trifft auf Nginx LB
- LB schaut, welcher Server den geringsten Load hat
- LB weist dem Request Server X zu

Das ist doch so korrekt, oder?

Dann zu den Fragen:

Domain (api.domainxy) und SSL Zertifikat weisen dann auf den Loadbalancer. Innerhalb der Nginx-Config stehen dann z.B.

 

http {
    upstream backend {
        server backend1.example.com weight=5;
        server backend2.example.com;
        server 192.0.0.1 backup;
    }
}

 

1. Sehe ich es richtig, dass alle weiteren "Knoten" ein eigenes SSL Zertifikat benötigen?
2. api.domain.xy ist dann lediglich der LB und das eigentlich Backend sitzt dann auf api2, api3, ...?

Vielen Dank für Input 🙂  
 

Zu 1.
Das kommt ganz auf deine Config an, du kannst einen Load Balancer auf zwei Arten konfigurieren:
- SSL Termination: SSL wird vom LB terminiert, er decrypted die Nachricht und schickt sie unverschlüsselt (e.g. HTTP) an die Server weiter. Dafür braucht der LB das Cert, die Server brauchen keine (da Traffic LB <-> Server nicht verschlüsselt).
- SSL Passthrough: Der LB leitet die Nachricht einfach verschlüsselt an die Server weiter ohne sie zu inspizieren. Für diesen Fall benötigt der LB kein SSL Cert da er nichts decrypted, die Certs liegen bei den Servern.

Wenn der LB das Cert hat ist i.d.R. von SSL Termination die Rede.

Zu 2.
In deinem Codebeispiel sind backend1 und backend2 als Primary sowie 192.0.0.1 als backup konfiguriert. Die Primaries haben eine Weighted Policy, 5% vom Traffic gehen an backend1, der Rest (95%) an backend2. Der Backupserver wird aufgerufen sollten beide Primaries failen.

  • 3 Monate später...

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.