Common used Software Architectural Patterns.
Layered pattern
Presentation layer (UI layer)
Application layer (Service layer)
Business logic layer (Domain layer)
Data visit layer (Persistency layer)
Usage:
Desktip applicaiton
E-commerical web application
Client-server pattern
Two main components: One server-end & Many client-ends.
Usage:
Emails;
Shared files;
Bank services.
Master-slaves pattern
Master device & Slave devices.
Usage:
Database replication. Master database is defined as authorized data source, slave databases keep a consistency with master database.
All databases connect with each other by system bus.
Pipe-filter pattern
Broker pattern
Usage:
Middleware: Apache ActiveMQ, Apache Kafka, RabbitMQ
Peer-to-peer pattern
Event-bus pattern
MVC-Model View Controller pattern
Blackboard pattern
Interpreter pattern
Comparison: