Microservice Architecture: Techniques and Applications Analysis

Verified

Added on  2021/06/16

|6
|1564
|407
Report
AI Summary
This report provides a comprehensive overview of microservice architecture, a modern approach to software development. It begins with an introduction to microservices, explaining their significance and benefits in the current technological landscape, particularly with the rise of IoT and remote access. The report then details service communication methods, focusing on REST and HTTP protocols, and highlights the key characteristics of applications built using microservices, such as modularity, independent deployment, and lightweight design. It contrasts microservices with monolithic applications, emphasizing the distributed, stateless, and independent nature of microservices. The report further explores various technologies used in microservice implementation and delves into logging techniques, including logging from individual and central services. The report concludes with a bibliography of relevant sources.
Document Page
MICRO SERVICE ARCHITECTURE
By
(Name)
(Course)
(Professor’s Name)
(Institution)
(State)
(Date)
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Introduction
The micro service architecture can simply be referred to as the micro service. This is a very
unique method of creating the systems of the software which are very much popular in the
current world1. The introduction and the development of the Internet of Things in the recent ages
in the technology world has really helped the developers of the systems in the development of
the Enterprise Resource Planning systems. The systems and software which are developed using
the Internet of things method are very much preferred since the development supports the access
of the systems in many devices remotely.
The micro service are identified using unique styles of development, systems which are runs its
own unique process hence making it possible for the modules of the system to communicate with
each other easily and without any problem is what defines the system employed by the use of
micro service.
Service communication
The communication of the services in the micro services architectural systems depends mostly
on the requirement of the application which is developed by the developers. It is accepted that
most of the developers makes use of the HTTP or rather the Representational State Transfer
( REST ) which utilizes the JSON technology2. This is never the restriction for the usage by the
developer since their the protocols are the communication which exists currently are so many
and are free to choose from the varieties which they check as more good and suitable for their
purpose. Though the REST method is the most useful method than others which are considered
very lower in complexity as compared to the other protocols.
1 Dmitry, N. and Manfred, S.S., 2014. On micro-services architecture. International Journal of Open
Information Technologies, 2(9).
2 Krylovskiy, A., Jahn, M. and Patti, E., 2015, August. Designing a smart city internet of things platform
with microservice architecture. In Future Internet of Things and Cloud (FiCloud), 2015 3rd International
Conference on (pp. 25-30). IEEE.
Document Page
Characteristics of Applications developed using Micro service Architecture
The applications which are developed by the employment of the micro service architecture are
very much distinguished since they possess the following key traits;
a. The service of the applications of the architecture are very easy in terms of replacement.
b. The organization of the services are always around the capabilities, this includes the
following; the graphical user interface in the client side of the system or application, the
billing, recommendations and other services.
c. The implementation of the services can be done using various language of programming,
the software environment, the database and the hardware in dependence of the one which
is the best suitable.
d. The application services are light in weight, small in the size, the messaging service is
enabled hence easy in communication between the modules created, its development is
autonomous, and also the they are bound by the context.
e. The micro service architecture applications have their services which are deployed
independently.
f. The services involves the processes which are able to communicate over the network in
order or with core reason of fulfilling the objectives by the use of the HTTP protocol. The
application of the HTTP protocol or the REST protocol is not the limitation as the
developer is free to choose other forms or method of creating communication within the
modules other than the HTTP and the REST.
The Technologies
The implementation of the micro service can be done using different or variety of the language
used for programming. They are also bound and free to using different infrastructures or the
hardware in the development. Hence, the most important and crucial technology which can be
chosen is how the services are able to communicate with one another over a network, the
Integration of the user interface, the asynchronous and the synchronous, and also the protocols
which are be employed in the communication, this includes the REST, messaging and other
Document Page
methods3. Different to the systems which were developed in the traditional where the most
important thing in the development was the language used in the programming which had a lot of
impact in the whole system which is developed, here this is different.
Micro service and Monolithic applications
In a nutshell, the micro service are services that comprises of the small multiple components
which are independent and also intercommunicating, the components can be reused,
communicate and also self contained. Comparing with the monolithic applications which are
very much traditional, dependent in the language used for programming and also they do not
communicate over the network. The who services can be compared and the following are the
differences between the two as follows;
a. The micro service architecture is stateless. This simply mean , the service instance can be
created easily, restarted, stopped and also can be destroyed easily at any time without
having impact on the other services. Just after the functionality of the logging, then the
implementation cannot depend on the persisting services at any time at all.
b. The micro service architecture is distributed. The logging of data in different platforms at
the same time is very much possible and convenient. This is because the database is
remotely accessed over the network using the preferred protocols like the HTTP and the
REST.
c. The micro service architecture is independent. The stack trace in a java application
which is an example of a monolithic application is able to take the developer direct to the
problem source. But for the micro service, this is not the case since the stack trace can
only take the developer to the start of the service.
3 Balalaie, A., Heydarnoori, A. and Jamshidi, P., 2016. Microservices architecture enables devops:
Migration to a cloud-native architecture. IEEE Software, 33(3), pp.42-52.
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Techniques for Logging Micro service
The used of the micro service is being largely used in the tech world today, most of the
businesses are changing towards this noble technology in handling the massive and huge loads of
work they have since the micro service is distributed an also scaled. The following are the tools
and method of logging the micro services;
a. Logging from the individual services
The services cooperate in order to play out a particular capacity, however each and every
services can be thought of as its own particular separate framework. This implies you can
include your logging structure into the service itself, similarly as you would a consistent
application.
How about we utilize the web based business stage from before for instance, using the
NGINX which is a web server and it is taking care of solicitations from people in general
Internet, and a MySQL server which is putting away client and request information, and
numerous PHP modules that are used for preparing orders, approving installment with an
outsider processor, and producing the HTML requests which gets came back to the
client.
Keeping into consideration of our PHP modules, we would therefore browse an
assortment of logging systems, for example, the Monolog, the log4php, or also the
standard error log work. In the event that we separate these segments into
administrations, we can characterize a logging technique inside each service that is totally
free of each other service and also of our general logging methodology.
b. Logging from the central service
In regard to this particular model, the services are permitted to send their logs of the
service which is used or logging. The service too will still require a precise method which
can be used for the logging process generation, but the service is responsible for the
Document Page
storing, processing and also sending of logs to a logging service that is centrally placed, a
good example is the Loggly.
The use of the Docker which is a Loggly docker Image that is given out by the labs called
the Send Grid labs, the image which is given out creates a vessel that is executing a
deamon called the rsyslog which gets to listen for the messages of the syslog which are
coming. The events whose nature is attached to the incoming events are send
immediately to the Loggly, this is where the messages are parsed and also stored. The
traits allows the use of the multiple containers in the logging process that is executing at
the same time for the core purpose of redundancy and the balancing of the load.
Conclusion
The introduction of the micro service architecture in the tech world has really boosted the
development of the enterprise system which can be accessed globally and remotely. The service
is very much important as the developers are now able to develop applications which are
stateless, independent and light weight.
Bibliography
Hamilton, J., 2009, January. Cooperative expendable micro-slice servers (CEMS): low cost, low power
servers for internet-scale services. In Conference on Innovative Data Systems Research (CIDR’09)
(January 2009).
Pautasso, C., Zimmermann, O. and Leymann, F., 2008, April. Restful web services vs. big'web services:
making the right architectural decision. In Proceedings of the 17th international conference on World
Wide Web (pp. 805-814). ACM.
chevron_up_icon
1 out of 6
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]