Skip to content
This repository has been archived by the owner on Oct 19, 2024. It is now read-only.

Commit

Permalink
Merge pull request #69 from Grupo-G03-4SOAT-FIAP/feature/14/desenho-mvp
Browse files Browse the repository at this point in the history
Update arquitetura-cloud.drawio
  • Loading branch information
dannevesdantas authored Jul 24, 2024
2 parents f355bb7 + 313f96e commit 0a3f12f
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions docs/arquitetura-cloud/arquitetura-cloud.drawio
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<mxfile host="app.diagrams.net" modified="2024-07-24T21:36:29.046Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36" etag="q5HwtptKJ6afiB5hn-8M" version="24.7.3" type="device">
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36" version="24.7.4">
<diagram name="Página-1" id="QyuDZeAoyNbm0Pvu70TN">
<mxGraphModel dx="2839" dy="647" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<mxGraphModel dx="3728" dy="1132" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
Expand Down Expand Up @@ -481,31 +481,31 @@
<mxCell id="ceXEVoXLRt0rZ3OR1m-A-10" value="🛈 O monitoramento do cluster K8s e da aplicação será feito no Amazon CloudWatch." style="text;html=1;strokeColor=none;fillColor=none;align=right;verticalAlign=top;whiteSpace=wrap;rounded=0;labelPosition=center;verticalLabelPosition=middle;fontFamily=Lucida Console;" parent="L6SBvmUNMrdH3GEFA7w_-1" vertex="1">
<mxGeometry x="2160" y="1840" width="320" height="130" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" edge="1" parent="L6SBvmUNMrdH3GEFA7w_-1" source="L6SBvmUNMrdH3GEFA7w_-46" target="aZ776irZEMooX4o-13bk-79">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" parent="L6SBvmUNMrdH3GEFA7w_-1" source="L6SBvmUNMrdH3GEFA7w_-46" target="aZ776irZEMooX4o-13bk-79" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" edge="1" parent="L6SBvmUNMrdH3GEFA7w_-1" source="L6SBvmUNMrdH3GEFA7w_-46" target="aZ776irZEMooX4o-13bk-80">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" parent="L6SBvmUNMrdH3GEFA7w_-1" source="L6SBvmUNMrdH3GEFA7w_-46" target="aZ776irZEMooX4o-13bk-80" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" edge="1" parent="L6SBvmUNMrdH3GEFA7w_-1" source="aZ776irZEMooX4o-13bk-80" target="ceXEVoXLRt0rZ3OR1m-A-4">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" parent="L6SBvmUNMrdH3GEFA7w_-1" source="aZ776irZEMooX4o-13bk-80" target="ceXEVoXLRt0rZ3OR1m-A-4" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-5" value="Lambda" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.lambda;" vertex="1" parent="L6SBvmUNMrdH3GEFA7w_-1">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-5" value="Lambda" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.lambda;" parent="L6SBvmUNMrdH3GEFA7w_-1" vertex="1">
<mxGeometry x="420" y="2440" width="50" height="50" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.75;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" edge="1" parent="L6SBvmUNMrdH3GEFA7w_-1" source="L6SBvmUNMrdH3GEFA7w_-46" target="YHyJm0zskbPS8452Ppzy-1">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.75;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" parent="L6SBvmUNMrdH3GEFA7w_-1" source="L6SBvmUNMrdH3GEFA7w_-46" target="YHyJm0zskbPS8452Ppzy-1" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" edge="1" parent="L6SBvmUNMrdH3GEFA7w_-1" source="YHyJm0zskbPS8452Ppzy-1" target="-h8u7tBZ8-VItpXT3ClL-5">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" parent="L6SBvmUNMrdH3GEFA7w_-1" source="YHyJm0zskbPS8452Ppzy-1" target="-h8u7tBZ8-VItpXT3ClL-5" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-9" value="SNS" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#E7157B;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.sns;" vertex="1" parent="L6SBvmUNMrdH3GEFA7w_-1">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-9" value="SNS" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#E7157B;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.sns;" parent="L6SBvmUNMrdH3GEFA7w_-1" vertex="1">
<mxGeometry x="420" y="2600" width="50" height="50" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" edge="1" parent="L6SBvmUNMrdH3GEFA7w_-1" source="-h8u7tBZ8-VItpXT3ClL-5" target="-h8u7tBZ8-VItpXT3ClL-9">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;flowAnimation=1;" parent="L6SBvmUNMrdH3GEFA7w_-1" source="-h8u7tBZ8-VItpXT3ClL-5" target="-h8u7tBZ8-VItpXT3ClL-9" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="-h8u7tBZ8-VItpXT3ClL-15" value="🛈 A geração do link da teleconsulta será feita através da&amp;nbsp;Google Meet REST API, um fornecedor externo, que pode não ser capaz de lidar com picos de usuários simultâneos quando o HPA do K8s escalar a aplicação.&lt;div&gt;&lt;br&gt;🛈 Optamos então por tornar o processo de geração do link da teleconsulta assíncrono para que seja possível lidar com picos de acessos sem indisponibilizar ou prejudicar a performance da aplicação em cenários de carga&amp;nbsp;&lt;span style=&quot;background-color: initial;&quot;&gt;alta&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 Uma mensagem será publicada pela aplicação na fila &quot;consulta-marcada&quot; no SQS sempre que uma consulta for marcada.&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 A Lambda function de nome &quot;health-med-teleconsulta&quot; fará a geração do link de forma assíncrona e irá envia-lo para o paciente por e-mail e/ou SMS, usando o Amazon SNS.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 Após gerar o link da teleconsulta com sucesso, uma menagem será publicada pela Lambda function na fila &quot;link-teleconsulta-gerado&quot; no SQS, que posteriormente será consumida pela aplicação, de forma assíncrona.&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 Caso acorra alguma falha ao gerar o link da teleconsulta, uma mensagem será publicada na fila &quot;falha-geracao-teleconsulta&quot; de ação compensatória.&lt;br&gt;&lt;/div&gt;" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;labelPosition=center;verticalLabelPosition=middle;fontFamily=Lucida Console;" vertex="1" parent="L6SBvmUNMrdH3GEFA7w_-1">
<mxCell id="-h8u7tBZ8-VItpXT3ClL-15" value="🛈 A geração do link da teleconsulta será feita através da&amp;nbsp;Google Meet REST API, um fornecedor externo, que pode não ser capaz de lidar com picos de usuários simultâneos quando o HPA do K8s escalar a aplicação.&lt;div&gt;&lt;br&gt;🛈 Optamos então por tornar o processo de geração do link da teleconsulta assíncrono para que seja possível lidar com picos de acessos sem indisponibilizar ou prejudicar a performance da aplicação em cenários de carga&amp;nbsp;&lt;span style=&quot;background-color: initial;&quot;&gt;alta&lt;/span&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 Uma mensagem será publicada pela aplicação na fila &quot;consulta-marcada&quot; no SQS sempre que uma consulta for marcada.&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 A Lambda function de nome &quot;health-med-teleconsulta&quot; fará a geração do link de forma assíncrona e irá envia-lo para o paciente por e-mail e/ou SMS, usando o Amazon SNS.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 Após gerar o link da teleconsulta com sucesso, uma menagem será publicada pela Lambda function na fila &quot;link-teleconsulta-gerado&quot; no SQS, que posteriormente será consumida pela aplicação.&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;🛈 Caso acorra alguma falha ao gerar o link da teleconsulta, uma mensagem será publicada na fila &quot;falha-geracao-teleconsulta&quot; de ação compensatória.&lt;br&gt;&lt;/div&gt;" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=top;whiteSpace=wrap;rounded=0;labelPosition=center;verticalLabelPosition=middle;fontFamily=Lucida Console;" parent="L6SBvmUNMrdH3GEFA7w_-1" vertex="1">
<mxGeometry x="520" y="2240" width="240" height="710" as="geometry" />
</mxCell>
<mxCell id="aZ776irZEMooX4o-13bk-1" value="Médicos e Pacientes" style="sketch=0;outlineConnect=0;gradientColor=none;fontColor=#545B64;strokeColor=none;fillColor=#879196;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.illustration_users;pointerEvents=1" parent="1" vertex="1">
Expand Down
Binary file modified docs/arquitetura-cloud/arquitetura-cloud.drawio.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 0a3f12f

Please sign in to comment.