Women in Technology

Hear us Roar



Article:
  The PHP Scalability Myth
Subject:   Performance NOT EQUALS to Scalable
Date:   2003-10-16 08:44:43
From:   anonymous2
Response to: Performance NOT EQUALS to Scalable


Sorry I mean EJB (EJB is the core J2EE): JSP-EJB


EJB = session bean (then use entity beans, JDO, JDBC, what ever you want to access databases), session beans allow load distribution. Most simple approach : JSP in a machine, EJBs in other.

PHP has the same scalability problems as JSP. It performs well with a few concurrent users, but with tons ... more machines, distributed computing please => scalability.


Making PHP scalable ... use PHP-EJB or similar when it is ready.



Full Threads Oldest First

Showing messages 1 through 4 of 4.

  • Performance NOT EQUALS to Scalable
    2003-10-17 09:21:50  anonymous2 [View]

    > PHP has the same scalability problems as JSP. It performs well with a few concurrent users, but with tons ... more machines, distributed computing please => scalability.

    Thats a bunch of crap. The JSP is compiled into servlets and the servlet is cached. Multiple threads make use of the Servlet at the same time. In addition, with JIT turned on, the Servlet is somewhat compiled and optimized. How the heck can you say PHP is even close to this? JSP can take the load with no problem. The servlet/JSP container was designed with this in mind.

    Be careful with what you say...because you are clearly incorrect.
  • "EJB is the core J2EE"?
    2003-10-16 14:46:31  anonymous2 [View]

    I think you will find that "EJB is the core J2EE" is not a universally held belief. Especially because of the performance issues with EJB deployment even in the 2.0 standard. A good read on this is Manning's "Bitter EJB" which goes into detail on EJB performance problems and offers architectural alternatives.

    As for having EJBs on a different machine, that is a serious performance problem because of the RMI to do all of the data fetch to build the pages. It means that you are paying a penalty to transit the data to and from the web server to the EJB server and then another transit cost to get it in and out of the database. This is why EJB 2.0 added local interfaces.
    • "EJB is the core J2EE"?
      2003-10-17 10:30:02  anonymous2 [View]

      AGGHGHHGHGHGH!!!!!

      Local entities are entities that are local to the clients that are running in the same VM as the EJB container. By using local entities you are assuring that references are used and not remote objects. This doesn't help you with speeding up your servlet/JSPs. Value objects do that.

  • Performance NOT EQUALS to Scalable
    2003-10-16 09:36:39  anonymous2 [View]

    Both systems scale by distributing the load across multiple machines. With PHP, this is done with an HTTP load balancer. It's quite easy.

    Exactly what is it that makes you think EJB will be more scalable than a bunch of servers behind an HTTP load balancer running JSP? The additional overhead of EJB typically makes things less efficient, not more.