Below is an example of a Network Diagram that depicts a possible topology for our reservation system, illustrating firewalls, routers, subnets, and connections. It is designed to enhance network security and efficiency.
graph TB
%% Internet
Internet[Internet] --> Firewall1[Firewall]
%% Perimeter Network -DMZ
subgraph DMZ[Perimeter Network -DMZ-]
Router[Router]
APIGateway[API Gateway]
end
Firewall1 --> Router
Router --> APIGateway
%% Internal Network
subgraph InternalNetwork[Internal Network]
LoadBalancer[Load Balancer]
ApplicationServer1[App Server 1]
ApplicationServer2[App Server 2]
DatabaseServer[Database Server]
EventBus[Wolverine Event Bus]
end
APIGateway --> LoadBalancer
LoadBalancer --> ApplicationServer1
LoadBalancer --> ApplicationServer2
ApplicationServer1 --> DatabaseServer
ApplicationServer2 --> DatabaseServer
ApplicationServer1 --> EventBus
ApplicationServer2 --> EventBus
%% External Services
subgraph ExternalServices[External Services]
NotificationService[Notification Service]
PaymentGateway[Payment Gateway]
end
EventBus --> NotificationService
EventBus --> PaymentGateway
Components Breakdown:
Internet:
- Represents the public internet where customer and administrator requests originate.
Firewall:
- Secures the perimeter network by filtering traffic entering and leaving the network.
Perimeter Network (DMZ):
- Contains the Router and API Gateway, ensuring that requests are routed securely to the internal network.
- The API Gateway handles authentication, request routing, and acts as the single point of entry to backend services.
Internal Network:
- Includes a Load Balancer that distributes traffic across multiple Application Servers (to ensure high availability and scalability).
- Database Server: Stores customer, reservation, and resource data securely within the internal network.
- Wolverine Event Bus: Handles asynchronous messaging between internal components and external services.
External Services:
- Notification Service: Sends reservation updates and confirmations to customers (via email, SMS, etc.).
- Payment Gateway: Processes payment transactions securely.