Lessons learned from the project (can be supplemented at any time)

Source: Internet
Author: User
Lessons learned from the project:
01. The network of the test environment and development environment must be separated;
02. data Consistency Issues (mainly front-end databases and back-end databases; data should be classified based on their own characteristics, and "important data" should adopt a feedback mechanism (Note: regular check mechanism ); "Common data or big data Data" adopts no feedback mechanism (Note: 1. for stateful data: dual channels are used to ensure reliability, and the message body must have a "timestamp" to prevent old data from overwriting new data; 2. for incremental stateless data: A single channel plus regular check mechanism is required to ensure reliability );
03. source code version management. The current source code version must be consistent;
04. network management monitoring (important: including network and host parameters), service monitoring should be considered in advance (important: including whether the service is available; and intermediate links involved in the service, such as: 1. "the size and existence of the intermediate table and message queue" must be monitored; 2. timeout monitoring should be provided for remote calls (TCP/RPC) between modules or main components of the Service );
05. Optimization of Kernel Parameters and network parameters of the server host;
06. Master-slave server and cluster solution-Reliability;
07. system error locating method;
08. Performance testing must be done first;
09. Resource and asset management forms must be prepared and updated in real time;
10. interpersonal relationships must be well handled;
11. Preliminary architecture design is very important. Do not blindly adopt new technologies;
12. Do not make big and comprehensive things. First, meet the basic requirements;
13. The customer's opinions must be fully listened to, but they cannot fully comply with the customer's requirements;
14. The system and application logs must be processed well, such as log segmentation, log level, and log format;
15. Summarize the problems in a timely manner and review the quality, rather than investigate the responsible person, and create FAQs;
16. Summarize the scripts for routine maintenance and troubleshooting, and update them to the configuration library;
17. Automated basic regression use cases should be developed to reduce repetitive work;
18. CodeReview requires at least others to understand the basic logic;
19. There must be a plan before work. Once the plan is determined to be difficult to change, leaders should remember to do what they want;
20. data Storage Methods: distributed storage requires regular check mechanisms to prevent data inconsistencies. centralized storage requires consideration of the processing performance of centralized databases, that is, fast response, and supports high concurrency;
21. In a distributed system, if time is used for comparison, the system time between nodes should be unified and the NTP service should be used;

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.