0

When i'm using PHP i use it with PHP-FPM and Nginx. The Nginx receives the request and communicates to PHP-FPM who sets the PHP variables like $_SERVER, $_POST and etc. The PHP-FPM has some working processes that process the incoming requests and probably a queue to save the requests when the working processes are busy. When the PHP ends the processing of the current request everything gets cleaned for the next request. How this works in Java EE? I've been trying to understand this for days but i just can't get into the point.

So, when the HTTP request gets into the Java EE server what the Java EE server does? It simply gets a thread from a pool and sends the request to that thread?

What class is used to first get the request and start processing?

Does the server have a queue for requests?

Does the server have more than one thread pool?

Where does the server use the thread pools?

I also i would like to know if there is a diagram or something to help me understand how the specifications are related to each other i'm overwhelmed by the permutations of implementations so i would like to learn the Java EE by the specifications.

I'm asking this because i would like to know how the platform works and by this i mean: How the jars i'm blindly including on my project interact with the server, what pieces of the server do i really need to think about when i'm developing certain kind of applications.

If you don't know the answer for any of my questions, please leave a comment about the questions, so i can know if there is something wrong with them.

If you know any source where i can learn this content it would also be very welcomed.

krionz
  • 297
  • 3
  • 14
  • 1
    The Java EE world have a complete different mindset compared to the NodeJs or PHP world. You dont need to know the details how a application server handels incomming requests. That is an implmation detail which is solved by the vendor of an application server. – Andreas Hauschild Feb 01 '19 at 14:40
  • Nice, so i will have to study a specific application server to know how things work. – krionz Feb 01 '19 at 17:30
  • No you don't, because you don't need to care how it is implemented. You need to study how Java EE works. If you have an understanding of that you can dig deeper into application server world. Overall Java EE is a big topic, if you want to do web development you should start with servlets: https://docs.oracle.com/javaee/6/tutorial/doc/bnafd.html – Andreas Hauschild Feb 04 '19 at 07:43
  • Great, thank you for the resource, i'll give it a try. I want to do web development, but i want to be specialist on back-end development, learn how different platforms work, and this is the reason why i asked this question. – krionz Feb 04 '19 at 13:47
  • Is there another documentation for java ee 8? Or even 7? The oracle websites look like a maze. I've found only API references for java ee 7/8 maybe there is not a lot of difference between this versions. – krionz Feb 04 '19 at 14:35
  • http://tutorials.jenkov.com/java-servlets/overview.html and https://www.baeldung.com/intro-to-servlets But be aware that this is just a good point to start. You will have to learn a lot of new things in the java universe ;) – Andreas Hauschild Feb 04 '19 at 15:20
  • Yes, it seems like things are more formal i can see the difference even on the type of vocabulary. I am reading java 8 in action to refresh myself about the language and now i'm reading a cookbook about java ee 8 but the book thinks i already know stuff that i don't. I'll check your resources. – krionz Feb 04 '19 at 16:18
  • The jenkov tutorials link was all i wanted from the beginning, thank you. – krionz Feb 04 '19 at 18:47

0 Answers0