Services are a unit of functionality that are run independently. That is to say that a service can be deployed separately from the rest of your systems and applications. Services are designed to maximize reuse as opposed to being designed to fit a particular system or application.Components are parts of a system or application that are designed to work together. They may be deployed together in a tightly bound configuration.
Services vs ComponentsServices are ideal for highly resilient systems whereby parts of your infrastructure can crash but the rest keeps going gracefully. Components are designed to fit together to deliver functionality. This doesn't mean that they aren't reusable as a component can be an API that gets used in a wide range of systems and applications. Services and components aren't mutually exclusive architectures as a service can be made from components. Components may also call services.
|Definition||A unit of functionality that is designed to be deployed independently and reused by multiple systems.||A unit of functionality that is designed to serve as a part of a system or application.|
This is the complete list of articles we have written about software design.
If you enjoyed this page, please consider bookmarking Simplicable.
© 2010-2023 Simplicable. All Rights Reserved. Reproduction of materials found on this site, in any form, without explicit permission is prohibited.
View credits & copyrights or citation information for this page.