What design patterns should architects master?

Source: Internet
Author: User

Today I attended an open project run by Beijing Bowen viewpoint publishing house in Shanghai.
Party (http://www.douban.com/event/11051981 ). Two topics have inspired me a lot.
Design facts and mistakes, another is Lao Zhao (@ jeffz_cn)'s "cache in Web Applications".

Of course, my gains may not be the theme they both want to convey, but it only triggers many associations, so they will not write down the process of thinking. Let's just draw some conclusions.

1. The architecture design needs to focus on the needs. There are two major parts of the requirements, one is the business-related requirements, and the other is the business-independent requirements.
2. Business-independent requirements, including reusability, high performance, reliability, ease of use, and security.
3. The classic gof design model only solves (or even partially solves) the reusability requirement.
4. Many design models can also be summarized in the field of high-performance requirements. The cache proposed by Lao Zhao today is an important mode that spans n fields and improves performance.
5. In my opinion, there are three major ideas to improve performance: cache, splitting, and parallel. On top of the three ideas, there is another general idea: Find the performance bottleneck and try to optimize it.
6. The idea of caching has been well discussed by Lao Zhao today. At each layer, there are cache Implementation ideas and solutions at each level, with advantages and disadvantages. It would be even better if we could talk about the common characteristics of the cache mode. It may be concluded that the CPU and I/O can be reduced in a more efficient way by performing special processing on 80% cases.
7. Splitting, such as separate data storage, separate static content from dynamic content, and distribute cache on multiple memcached servers, it is to decentralize the original bottleneck and refine the original problems.
8. parallelism is also a major category, so we will not start it. The general idea is to allow computers to do as much work as possible at the same time.
9. Maybe there should be such a book: high-performance design patterns, which should be equally important as "reusable design patterns.
10. There should also be "security design mode", "high reliability design mode", and "Easy-to-use design mode" among others, these cross-application, cross-business, and cross-domain design models are all design patterns that should be deeply mastered by architects.
11. maybe there should be a publishing house with high organizational skills. write such a set of Architect Design Pattern books.

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.