Menu
Home
Log in / Register
 
Home arrow Computer Science arrow Building Applications with Scala
Source

Architecture principles

Scalability is about handling more users, traffic, and data; and in order to do it, we will need to apply some principles and techniques. Our application is already using the most modern techniques and technologies, such as functional and ReactiveX programming, RxScala,

Akka framework, Play, and much more. However, in order to scale, we will need to have an infrastructure in place and other kinds of system that will allow us to handle more users.

A good application architecture should be created around the following principles:

• Separation of Concerns (SOC) (more details at

https://en.wikipedia.org/wiki/Separation_of_concerns)

  • • Service Orientation (SOA/microservices)
  • • Performance
  • • Scalability/Resiliency

Let's see these principles in detail.

Service orientation (SOA/microservices)

Service orientation is about having a higher level of abstraction, which is also called services or microservices. SOA is not about a specific technology, but about principles such as shared services, flexibility, and intrinsic operability. If you want to learn more about SOA, check out the SOA Manifesto at http://www.soa-manifesto.org/. Microservices is a particular flavor of SOA where the main difference is the focus on the granularity, autonomy, and isolation. If you want to learn more about microservices, you can check out

https://www.linkedin.com/pulse/soa-microservices-isolation-evolution-diego-pach eco as well as http://microservices.io/.

 
Source
Found a mistake? Please highlight the word and press Shift + Enter  
< Prev   CONTENTS   Next >
 
Subjects
Accounting
Business & Finance
Communication
Computer Science
Economics
Education
Engineering
Environment
Geography
Health
History
Language & Literature
Law
Management
Marketing
Mathematics
Political science
Philosophy
Psychology
Religion
Sociology
Travel