| Design and Implementation of JudgeOnline System Based on jQuery is on the basis of Black-box Testing Theory in the Software Engineering. It is a toolset for compiling, testing, analyzing and judging automatically for multilingual source system based on Java, Servlet, jQuery and Database.The Judge System was designed for ACM/ICPC (ACM International Collegiate Programming Contest). It has been proved effective on practical application. In recent years, many college teachers use the system into routine teaching activities and make achievements.The thesis not only researches into how to imply the JudgeOnline System, based on which we reflect on how to upgrade the system performance of the source code, but also discusses the new trend on how to improve the system function. And the result is that it carries out an in-use JudgeOnline System and gives all the key knowledge and design procedures to complete the system.This thesis is very creative. It discusses the key knowledge and methods of implementing the judging key unit upon Linux as well as the hierarchy of the JudgeOnline System which conditions the development of many JudgeOnline systems nowadays. The ACM/ICPC is in full swing and various online contests emerge in an endless stream. Within those online contests there occur system crashes and slow responses quite often. That is because concurrent requests burst out and cause enormous pressure during the contests. If the design of the system is imperfect, there will pop out all kinds of problems. The thesis stresses architecture of the system rather than technology discussion.Many JudgeOnline systems use Windows as their operating platform, Asp.net as their development environment, SQLServer from Microsoft as their database servers. This may enhance efficiency to some extent. But the arrangement is not proper on a long view. First of all, buying Windows and SQLServer costs a mint. Second, viruses and games run rampant upon Windows which do harm to the management and the safety of the server. Third, from the view of concurrent performance, safety, stability and maturity of the operating system architecture, Windows is not the best choice of a JudgeOnline system and you can see a spot when many global IT giants choose operating system for their key business.From the view of development platform, the maturity and the security of Asp.net have long way to go while Java EE from Java has become very secure and stable after years of development. Furthermore Java EE contains many frameworks of rational structure and superior efficiency. On the contrary, MVC framework of .net has just emerged which shows the lag of .net from one side. .net is only deployed on Windows so far. Mono, so called .net from Linux, is not completely compatible with .net from Microsoft. C# and .net are tightly held by Microsoft and their future seems uncertain.Moreover it's not feasible to have SQLServer as the database for a JudgeOnline system because it is huge and expensive. And the source code and file structure of SQLServer are not open which can only run on Windows commercially. Its confidentiality of log file structure will result in the difficulty of data recovery. From this point of view MySQL is better than SQLServer. It depends on the design of the database structure and the optimization of database operation to choose MySQL or PostgreSQL.AJAX is not widely used in many source code JudgeOnline systems because when they were founded AJAX wasn't created or as mature as jQuery. Therefore the developers of JudgeOnline systems focused on the development of the core of the background evaluation and the evaluation indicators. In recent years with the maturity of framework of jQuery and AJAX , more and more websites employ AJAX to develop the view of the system and it's the right time to use it. Using AJAX to construct a JudgeOnline system not only makes the view colorful, but also reduces the data transmission between clients and server, saves bandwidth and increases speed, thus improving the concurrency of the system which is a crucial point in any JudgeOnline system or any website. We can use less expensive hardware to support more clients. Why not?... |