Preface: Graduation design has been in the past for a while, and I have always wanted to write a little experience as a commemoration, but I have been in the project without time. Today, the project finally comes to fall, and finally I can review this graduation design. I have done what this "improvement" is done.
When I don't know the graduation, I can't or should not consider the problem of the entire platform architecture. However, I have considered it. Now this first will talk about the platform architecture used in my graduation design. Bar. My graduation design is a virtual project. The original topic is "Design and Implementation of Small Network Monitoring System", but now I feel that "monitoring" is changed to "alarm" seems to be more appropriate. Its main purpose is to achieve "Service Monitor" and "Content Monitor". The "Service Monitor" refers to the designated port of the specified host within the specified time interval to see if it is working, "Content Monitor" means Scan the specified web page to see if it has illegal links or illegal information, such as the presence of the host, the system will automatically via Email to alarm. The system is divided into four (maybe called four more appropriate) working processes from a large functional architecture (note is the process, not thread), one is the user input acceptance and information output process (general control process), one It is a service monitoring process, one is a content monitoring process, and one is an alarm process, each process is a separate application, and communication between the processes. This multi-process program architecture is different from the general application programming process multi-threaded architecture. It is the advantage of having a higher independence between the same application's multi-process, which can be developed alone, adapt to multi-distributed Applications, with better scalability and robustness. For the advantages of scalability and robustness, it may be more prominent, for example, if the server needs to be monitored later, simply modify the general control process, let it operate more monitoring processes, and each monitoring process is not Need to modify it. If there is a problem with a monitoring process, you can completely shield the monitoring process without affecting other monitoring processes and the operation of the entire system. Each process is a completely independent entity. It is an independent smart body. Each process can adopt its own independent algorithm, and even the same process can use different algorithms, such as the same process of completing the content monitoring process A, B. A Have higher accuracy, B has a higher speed, which can run simultaneously and exist of the entire system, and the general control process is prepared as needed, such as the contents of the Government website with higher accuracy, so The general information volume is not very large, but it is required to be more accurate, the slow but complex algorithm in A can adapt to its needs; let the B process with simple but fast algorithms handle ordinary business or personal websites, such a website general information Large, but the requirements for accuracy are not high. In summary, this multi-process rather than a single process multi-threaded architecture has considerable advantages, its architecture itself is more appropriate to distribute computing calculations and grid computing than single-process multithreading, so it may be one in the future development. The mainstream platform architecture. The development of computer hardware technology, promotes and promotes the development of software architecture, with previous thinner, fat server, mainly due to the low processing ability of the previous personal PC, and therefore more tasks are completed on the server. However, the processing power of the personal PC has reached the performance of the previous small machine, so the significance of the thin terminal is not large, and because there is a large number of terminals, the server and network load are heavy, so now, now gradually develop fat Terminal, fat server, or even fat end, platform architecture of the thin server side, the server is generally only as the general control program, responsible for coordination and synchronization between multiple processes, while a greater amount of work is done by each intelligent terminal. But not to say that the platform architecture mode of thin terminal and fat server will disappear, and they will continue to improve and develop, and even have more broad development space.