03.Server - Application server

 

Application server 

අපට dynamic data generate කරගන්න අවශ්‍ය විට application server බාවිතා කරන්න සිදු වන අතර backend සිදුවන process මානාව handle කරන්න මෙහිදී සිදු වෙනවා.මෙහිදී එය පහසු කරගැනීමට application server හරහා අපට අවශ්‍ය services  ලබා දෙනවා.

Examples විදිහට transaction management services, security services, Dependency injection services, concurrency වගේ ඒවා.

මේ Requirement පිලිබදව developers ලා  worry වියයුතු නොමැති අතර developers ලා  business logic එක විතරක් focus කරනම් ඇති.මොකද මේ all services, application server එකෙන් provide කරන නිසා developer තියෙන්නේ මේම server දෙන configuration information බාවිතා කරලා develop කරන application එක configure කරන්න විතරයි. 


Java EE (Java Enterprise Edition) වලදී මෙම application server එක කොටස් 3කට බෙදල කතා කරන්න පුළුවන්.නමුත් මෙම කොටස් වෙන වෙනම තියෙන ඒවා නෙවේ.ඒවගේ ක්‍රියාකාරිත්වය අනුව බෙදනවා කොටස් 3කට.ඒවා තමා පහතින් විස්තර කරලා තියෙන්නේ. (Logically divide කිරීමක් පමණයි.මෙය physically divide වී නොමැති අතර මේවා විශාල තනි library එකක් විදිහට තියෙන්නෙත් පුළුවන්).


Web container – Java වැනි server side programming language කොහොමද run කරන්නේ සහ (Servlet, JSP, JSF, Web services) run කරලා කොහොමද response එකක් දෙන්නේ කියන එක දන්නවා.මෙම වැඩ කරන්න පුළුවන් හැකියාව තියන tomcat මේකට හොද උදාහරණයක් විදිහට කියන්නත් පුළුවන්.මෙය JVM එකක්.

Application Client Container – කොහොමද dependency injection එක කරන්නේ, authentication authorization සහ confidentiality වගේ අපේ application එකේ security maintain කරන්නේ කොහොමද වගේ ඒවා මෙම කොටස දන්නවා. 

EJB Container - මෙම කොටස දන්නවා කොහොමද EJB life cycle manage කරන්නේ සහ translation manage කරන්නේ කොහොමද කියන එක.මේකට JTA (Java transaction API) වැනි API බාවිතා කරලා තියනවා.

සෑම  application server එකකටම  in build web server එකක් තියන අතර, developer ලට අවශ්‍යනම් වෙනම තවත් web server එකක් පිටින්  set කරගන්නද පුළුවන්.තවද web server එකක් static content එකකට පමණක් response කරන අතර එය dynamic කරන්නනම් plugging බාවිතාකරන්න වෙනවා.Applications server එක web server එකේ සෑම වැඩක්ම කරන අතර ඊට අමතරව services provide කරනවා  අපි develop කරලා deploy කරලා තියන application එකට (services – Transactions, Security, Dependency injection, Concurrency).

Dependency Injection – We assume that There are Two java classes called A and B. A depends on B. Instead of we instantiation B class inside the A class, container instantiate B class and at the run time inject it to A class. So developer only focuses about the logic.



Comments

Popular posts from this blog

02. Spring – Creating spring project clone it with GIT step by step.

02.What is MicroService?

06.Mongo DB - Query part 2 (Aggregation)