Reverse Proxy, Python App, REST API, MySQL en Talend FLow

Pagina: 1
Acties:

Vraag


  • Twisted1984
  • Registratie: Mei 2019
  • Laatst online: 27-02 01:06
Mijn vraag
Ik ben op zoek naar informatie/advies voor mijn flow onderstaand en met name de Reverse Proxy);
1.Python App -> 2.Rest API -> 3.Reverse Proxy ->4.Talend -> 5.Mysql -> 6.Talend -> 7.Reverse Proxy -> 8.Rest API - 9.Python App.

I.E. 1. Report Request -> 2+3.Forward request -> 4.verify user & request -> 5.retrieve data -> 6.ETL SQL to JSON -> 7+8.Forward -> 9.On screen "report".

Vertaald;
1-2 Via Python dekstop-app(Client), een aanvraag versturen naar een Rest API(Localhost) in JSON format.
2-3 Via een reverse proxy de aanvraag doorzetten naar localhosten Talend Open Studio (Low-code ETL)
4-5 Talend job krijgt verzoek binnen, ETL de Mysql info en verstuurd het terug in JSON naar de reverse Proxy.
6-7-8 JSON wordt verstuurd van Reverse Proxy naar REST API.
9 Python app toont de gevraagde info.

Reverse Proxy bouwen/onderhouden heb ik totaal geen ervaring mee.
Is de VPS als https://www.strato.nl/server/ voldoende? Is het complex? Is het een formulier invullen aan info en een "service" bouwt de proxy? Wie helpt mij hier a.u.b. verder?


Relevante software en hardware die ik gebruik
Python. (Client)
Python FastAPI app. (Localhost)
Talend open Studio. (Localhost)
Reverse Proxy (Hosted)
MySQL (localhost)
JSON (Python / REST Api)

Wat ik al gevonden of geprobeerd heb
- De Python desktop app werkt, (Client ) met directe verbinding naar Localhost Mysql DB.
- REST API bouwen is volledig nieuw voor me, maar een dag "zwoegen" en kom ik daar vast wel aan uit met Python.
- Evt. alternatieven op de flow zelf, ik weet dat REST API en Talend maybe overkill zijn, maar met AVG in het achterhoofd, zie ik het als een extra layer aan veiligheid. Plus een Talend Job schrijven voor me in deze "complexiteit" is wellicht 5 minuten voor me.


Reden waarom ik voor deze flow nu heb gekozen.
1. Ik wil geen root MySQL credentials in de Client desktop app hebben.
2. User vult Accountnaam en PW in, die tijdelijk worden opgeslagen in de app.
3. REST API, zodat de bericht wisseling kan plaatsvinden.
4. Reverse Proxy, extra veiligheid t.b.v. omleiding. Plus als ik mijn modem reset, veranderd mijn IP (REST API, MySQL en Talend open Studio affected).
Dit wil ik in de Reverse Proxy kunnen veranderen, IPV een update in de Client code.
5. Talend werkt perfect met aanvragen voor dit soort cases plus zit in mijn skillset. Checkt Username +PW met DB, indien niet correct koppelt hij een foutmelding terug. Indien correct, dmv ETL zend de correcte info terug in JSON.

Reverse Proxy, Python App, REST API en Talend Open Studio FLow

Alle reacties


Acties:
  • 0 Henk 'm!

  • 3raser
  • Registratie: Mei 2008
  • Laatst online: 15-09 09:03

3raser

⚜️ Premium member

Twisted1984 schreef op donderdag 22 augustus 2024 @ 13:30:
Reverse Proxy bouwen/onderhouden heb ik totaal geen ervaring mee.
Is de VPS als https://www.strato.nl/server/ voldoende? Is het complex? Is het een formulier invullen aan info en een "service" bouwt de proxy? Wie helpt mij hier a.u.b. verder?
Het klinkt alsof je geen ervaring hebt met een VPS. Het enige wat je krijgt bij Strato is een VPS, oftewel, een virtuele computer in de cloud. Waarschijnlijk met een Linux besturingssysteem. De reverse proxy moet je daar vervolgens zelf op installeren en configureren.

Als je eenmaal aan een VPS begint vraag ik me af waarom je daar niet gewoon alles op host. Waarom zou je vanaf die VPS alle verzoeken willen routeren naar je thuisserver? Onnodig traag en omslachtig.

Mocht je toch verder willen met een reverse proxy, ga dan eens googlen naar iets als "nginx reverse proxy tutorial".

  • Twisted1984
  • Registratie: Mei 2019
  • Laatst online: 27-02 01:06
Thanks voor de input en de tip betreft de google search.

Ben inderdaad niet bekend met VPS, vandaar ook de vraag.
Alles thuis hosten, zou enkel voor testomgeving kunnen, maar wil het e.e.a. aan veiligheid inbouwen betreft AVG. Vandaar dat ik op zoek ben naar "te spelen" met een reverse proxy om te leren hoe het werk etc.
Maar als je dan inderdaad alles op dezelfde VPS kan draaien, net zo makkelijk!