Server cluster strategy


Cluster is not the best way to solve performance problems, low in the single case of concurrent performance, if found unsatisfactory, then do not expect the cluster to help bring about performance improvements, on the contrary the performance will decrease.

Domestic and imported to choose?

In fact, earlier point in time, I found that IBM, BEA and other application server products provide the trend of homogenization, the total time a user asked: "are the J2EE application server, What is the difference between them?" Asked more , found after much thought, the degree of consistency on the J2EE standard application server is one of the criteria to measure, so J2EE application server, there is no way different. For PC, notebook computers, more personalized products, homogeneity is not a good thing: Users looking to buy similar products could not get interested in their profits decline. However, the application server platform that enterprise, the value is its stability, availability, scalability and other enterprise-class features at lower prices who can meet these needs, the natural first choice on a user.

Honggang Kingdee Yuan said in an interview: "Kingdee's Apusic and IBM WebSphere, BEA WebLogic no essential difference."

"Just as the Apollo spacecraft Shenzhou spacecraft and no one would think they have any essential difference, are for the manned space created by the tool, not because one is in China, the other is the USA, there is in use on difference, "Yuan Honggang such evaluation software in China and the USA. But he also admits that Kingdee's Apusic and similar products are still some gaps, but in the J2EE standard framework, fully available to users. On the other hand, price and service support from the point of view, Apusic also has the advantage of local products.

If you carefully analyze Apusic difference with similar products, we will find that the principle of its design has a lot. According to Yuan Honggang description: "Users would normally follow when using the software '28 principles', that is usually only 80% of users use 20% of the functionality of a software to Microsoft Office Word, for example, usually we just use it to write the document, no access to many advanced features. In Apusic application server development, we also follow the same principle, as far as possible throughout the software products for 20% of the most important function well, to ensure that the needs of most users, The remaining 80% of the function of the gradually increasing as needed. For example, a cluster of foreign products feature very early on that we recently launched, we believe that the cluster features a low-priority needs, and only after other performance guarantee will consider the cluster. "

From the functional point of view, Apusic seems less than the number of foreign products, slow some, but the benefit is Apusic start very fast. The running light Apusic Another important reason is the structure to the core kernel and multiplexing, and coding is very simple.

That the foreign integrated J2EE application server level or higher than the domestic platform, features and more abundant, but great emphasis on SMEs in information technology today, perhaps the domestic J2EE platform can play a greater role.

To clarify the "cluster Paradox"

Was launched late last year Apusic cluster function, Yuan Honggang view, "the cluster calculation effect only in the fine-grained only obvious, that is, the calculation process to a certain segment of parallel algorithms, distributed to more than one treatment will be calculated runs, the final results then combined. and J2EE applications, most of the calculations are coarse-grained, with transactions in the distributed computing needs of coordination, but also reduces the overall processing capacity of the cluster. "because he believed that , the cluster is not the best way to solve performance problems, low in the single case of concurrent performance, if found unsatisfactory, then do not expect the cluster to help bring about performance improvements, on the contrary the performance will decrease.

Honggang Yuan said that in the following two clusters are useful: first, run at high concurrency overload the host environment. Google this site for example, a large traffic, so Google will take the cluster strategy to divert the user's request, in order to improve overall responsiveness. However, the J2EE application is usually in contact with a very large load, the volume of 500 per second visit the following applications do not need to take the cluster strategy. Second, the failure of the transfer application. This may be really useful where the cluster, using a low-cost computing devices as the primary backup device, the primary device fails to succeed in a timely manner to ensure 7 x 24 hours of uninterrupted service.

Product implementations, Apusic not follow most of the memory taken by middleware vendors replication technology. Kingdee that if the use of memory replication technology, will cost a lot of network bandwidth, performance is also affected, because whenever a node's state changes, are needed by means of a multicast transmission to the other node state information, along with internal node increases, the memory copy will also be very frequent, serious obstruction to the bandwidth. Apusic uses a client-side cache, state information stored directly on the client, when the server fails to state transition to the available server.

EJB development completely changed

Yuan J2EE Honggang predicted changes are ushering in an epoch-making, the key word is EJB.

EJB gives the feeling of the past too heavy, and the development process complex and difficult to maintain, so the actual project, less use of EJB. In the future EJB J2EE 5.0 specification will be a considerable adjustment in EJB3, its development method would be completely changed, no longer use the Home, Remote interface concepts, and to the development of lightweight models to J2EE 5.0 the introduction of the annotation tool described as EJB, Entity Bean's role in particular has been repositioned so that it simply afford the O / R Mapping role. All of these initiatives are to make EJB development process more firmly, more efficient, easier to maintain.

In Web development, J2EE 5 adds a new JSF specification, which is a Web development framework similar to Struts in, but more convenient. JSF UI component model based on events and the development of methods used to subvert the traditional Web development, combined with development tools, closer to a true MVC programming environment.