0% found this document useful (0 votes)
10 views2 pages

Microservices and Technology Stacks

The document discusses whether microservices within an application need to share the same technology stack. It presents arguments that using multiple programming languages can increase flexibility but also complexity, and that limiting technology stacks reduces complexity but limits flexibility. It also discusses staffing implications of different technology stack approaches.

Uploaded by

Srijeeta De
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views2 pages

Microservices and Technology Stacks

The document discusses whether microservices within an application need to share the same technology stack. It presents arguments that using multiple programming languages can increase flexibility but also complexity, and that limiting technology stacks reduces complexity but limits flexibility. It also discusses staffing implications of different technology stack approaches.

Uploaded by

Srijeeta De
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

4/8/2021 Thread: Module 4.1 - Learning Activity 1: Technology Stack &...

HOME STUDENT RESOURCES HELP STUDENT HELP


ANJAN SUMANKUMAR PATEL 43 LOGOUT

?
TRIMESTER 1 HE 2021 MIS603 KENT ST NSW R1231 CRN 1880 Discussion Board
Forum: Module 4 - Discussion Forum Thread: Module 4.1 - Learning Activity 1: Technology Stack

F Search r Refresh
THREAD: MODULE 4.1 - LEARNING ACTIVITY 1: TECHNOLOGY STACK

Select: All None Thread 1 of 3

Message Actions  Expand All Collapse All

3 Post(s) in this Thread 2 Unread 0 Unread Replies to Me

 
Anonymous 10 months ago

Module 4.1 - Learning Activity 1: Technology Stack

Learning Activity 1: Technology Stack Discussion Forum Post 

After completing your readings for this module – do you believe that it is
necessary for microservices within a broader application to share the same
technology stack? Refer to the readings in your answer and explain the position
you have taken.

Describe your position in no more than 100 words each.

Post your answer to the Module 4.1 Technology stack discussion forum.

Please read through other students’ posts and comment on why you agree,
disagree or can provide help with another students’ post. Please reply to at least
one other students’ post.

Reply

 
Kubra Gullu 7 days ago

RE: Module 4.1 - Learning Activity 1: Technology Stack

Group Activity:

[Link] 1/2
4/8/2021 Thread: Module 4.1 - Learning Activity 1: Technology Stack &...
Kubra Gullu
Katarzyna Maria Figiel
A technology stack is a set of tools developers to create an application. As
we discussed earlier on the subject, one of the biggest advantages of using
microservices is to offer an option and flexibility to choose in a
programming language, database, and the other tools within the
deployment as long as the components can communicate through API and
exchange the messages.
On the one hand, using multiple programming languages - polyglot
architecture - can be beneficial for developers to choose the best option
based on the environment that they will be most comfortable with. In
addition, in the microservices, the components do not have to share the
same tech stack as they are loosely coupled. These features give
developers the freedom and increase their creativity by not sticking to only
one programming language to deliver the need of organisations on time.
On the other hand, Nadareishvili et al. (2016, p. 112) discussed that using
many different languages may cause complexity in the system, which is
why sometimes companies prefer to limit the programming languages.
Additionally, from a business perspective, having various tech stacks within
one system creates a need for the company to hire and keep multiple
developers who are experts in the relevant languages/solutions.
References:
Nadareishvili, I., Mitra, R., McLarty, M., & Amundsen, M.
(2016). Microservice architecture: Aligning principles, practices, and culture.
California, USA: O’Reilly. Retrieved from [Link]
[Link]/lib/think/[Link]?
docID=4602504&ppg=19

 
Muhammad Awais 4 hours ago

RE: Module 4.1 - Learning Activity 1: Technology Stack

In progress 

Select: All None

Message Actions  Expand All Collapse All

← OK

[Link] 2/2

Common questions

Powered by AI

Selecting a technology stack for microservices involves balancing the flexibility that comes with a polyglot architecture against the complexity it introduces. Flexibility allows using the most effective tools for specific tasks, enhancing innovation and best fit for scenarios. However, it can lead to increased system complexity and maintenance challenges, as well as requiring a broad skill set from developers. Managing these trade-offs involves assessing project needs versus long-term maintenance cost and complexity .

Microservices can operate on different technology stacks because they are loosely coupled and communicate through APIs. This allows for flexibility and the use of the most suitable tools for each component's environment . However, using a polyglot architecture can also cause system complexity, sometimes prompting companies to limit the diversity of technological solutions . Furthermore, from a business perspective, diverse tech stacks require hiring developers with varied expertise, thus impacting workforce planning .

Using multiple programming languages, known as a polyglot architecture, allows developers to choose the best language based on the environment and requirements, increasing developer creativity and the ability to meet organizational needs efficiently . This approach provides the flexibility to utilize the strengths of different languages and tools, improving adaptability and innovation .

Proponents of limiting programming languages in microservices argue that it reduces system complexity and streamlines maintenance, as a unified tech stack simplifies deployment and documentation. Opponents argue that limiting languages can constrain the flexibility and ability to utilize the best-suited tools for specific tasks, potentially stifling innovation and responsiveness to unique challenges .

Microservices architecture, through its decoupled nature and allowance for polyglot environments, aligns well with organizational needs for technological adaptability. It supports tailored solutions for individual service requirements and enables rapid responses to evolving business needs. However, this adaptability must be balanced against potential increases in operational complexity and required cross-functional expertise, impacting the organization's strategic planning .

Polyglot architecture in microservices can lead to increased system complexity due to the necessity of managing various languages and tools. This complexity can complicate the development and maintenance processes, potentially increasing the operational burdens and requiring a more diverse skill set among developers . Consequently, it may also demand a streamlined approach to limit the diversity of tools and languages to control such complexities .

APIs facilitate communication between microservices, allowing them to operate independently of having a unified technology stack. This ensures that although each microservice might use different tools or languages, they can still interact seamlessly by exchanging messages through standardized interfaces .

APIs provide a consistent interface for communication among microservices, enabling integration despite the use of different technology stacks. This is crucial for maintaining interoperability and functionality across various services, allowing them to work as part of a cohesive system while retaining the flexibility to select individual tech solutions as needed .

Microservices architecture can enhance developer creativity by allowing the selection of programming languages and tools best suited for each service. This flexibility enables developers to experiment with different solutions, fostering innovation and enabling them to deliver organizational needs effectively and in a timely manner .

A polyglot architecture requires a company to hire and keep multiple developers who are experts in relevant languages or solutions, as the system involves diverse technology stacks. This influences the hiring strategy to focus on a varied set of skills and could increase recruitment and training costs .

You might also like