New projects on-line, increasing user volume, work continues to identify problems, solve problems. Take a moment to summarize your understanding of the architecture design.
a little ad. This article was posted on the public number of Neil. Neil's article will be posted on the public number the first time. Welcome the attention of our small partners. public Number: Internet and composers
A little off-topic. I was a fan of martial arts since childhood, Jin Yong Cologne Classic works have seen many times. Favorite Female Master, is "The Day of the Dragon" in the Zhao: Dare to Love to hate, Shawming the Lord. Lizzy, one of the two goddesses in my mind, is very similar in character to Zhao. Another goddess is Vivian Chow. Most like the male, when it is Yang: son of Yang Kang, "has been changed", once young frivolous, after washing Qianhua, God carved heroes realize sorrowful palm, the tide.
In the martial arts novels, the highest realm of martial arts is "No recruit wins the recruit", all have the elephant's moves are turned out. In this state, vegetation can hurt people. There are four stages in Jin Yong's novels, which depict swords and demons alone and seek defeat. The fourth phase of the sublimation, "after 40 years of age, no matter, grass and bamboo stone can be swords." Since then, gradually into a sword-free environment. "From the sword, to the soft sword, and then to the non-frontal sabre, the last is the grass and bamboo stone can be a sword, in fact, is a concrete thing constantly abstract process." At the beginning, martial arts need to use the sharpness of the sword to show, and then become only a soft sword, and then not even the sword blade need, no front, big Qiao not work, reached the highest level, mastered the true meaning of force, can be martial arts through any form of display, "No Sword wins sword". Analogy to architecture design, from the very beginning of the C language output Hello World, to the obsession with "PHP is not the best language", to the various design patterns, architectural thinking, the highest level is capable of dealing with any complex business needs, the architecture design as a work of art. When can you reach this level of state? Flow of saliva yy ...
Zen Master Qingyuan in Song Dynasty put forward the meditation of the Triple realm: the beginning of meditation, look at the mountain is the mountain, see the water is water, when the Zen, see the mountain is not a mountain, see water is not water, Zen mourn, see Mountain still mountain, see water is still water. A straightforward point is said: People at the beginning of the good, the beginning of all is a white paper, are very simple, that is, look at the mountain is a mountain; with the experience gradually enriched, experienced some vicissitudes, feel the world is too difficult, tired sleep do not love, see water is not water, mentality continues to change, back to basics, Re-view the world from a simple perspective, Epiphany, see the mountain is still a mountain, see the water is still water. This is the meaning of this threefold realm.
This Zen language can also be used in the connection between abstract thought and figurative thinking. "Looking at Mountains is a mountain", that is, to analyze specific problems; "To see the mountain is not a mountain" is to refine the specific problems, abstract, to form a set of architectural design and solutions, can be applied to all similar specific problems; "Looking at mountains or mountains" is a process of validating the solution. The abstract architecture is used to solve the problem, and the original design is optimized according to the effect. This is a process from figurative thinking to abstract thinking to a figurative mind, and I think that the design of any architecture is basically in line with the process, abstract analysis and concrete analysis, both of which are indispensable. For example: Colleague A has designed two solutions for a problem, both of which are completely antagonistic, and because of the complexity of the problem, both sets of solutions do not solve the problem perfectly and need to evaluate their respective effects. Colleague a only from the abstract theory analysis, the two sets of programs the effect is the same. But the actual situation is: because the different positions of the exposure rate is different, will result in two sets of the effect of a large gap. Can be summed up briefly: abstract theoretical analysis and specific problem analysis need to be carried out, and the effect of the two are complementary.
The boulevard to Jane, called the Ames Razor Principle abroad, is that the solution should tend to be simple rather than complicated. This principle is easy to say, but it is extremely difficult to do. The problem of software engineering is becoming more and more complex, and there is no way to rely on simple answers. Mention the classic paper "No silver Bullet". This paper discusses the secondary complexity and the necessary complexity. Secondary complexity refers to the problems that arise from the people themselves, such as using C++,java or Python. This type of problem can be solved more quickly. The necessary complexity refers to the software itself to solve problems, such as complex business scenarios, massive user access and so on. There are many types of design patterns, but none is omnipotent. Extract the main points from the complex problems, continue to abstract, and then combine the specific problems to analyze, in order to ensure that the business needs to meet the premise, as far as possible to simplify the scheme, optimize the scheme, and then consider the future of possible changes in the business scenarios, avoid over-design. This is probably the architect's skill.
28 principles apply to many places: 20% of the time to complete 80% of the work, the remaining 20% of the work may take 80% of the time to complete. The design of the architecture needs to take into account the handling of various anomalies, many times the handling of abnormal situations is the most time-consuming. But I think exception handling can be very critical. We spend 20% of our time doing 80% of the work, and in the same way, competitors can do 80% of the work in a very short period of time. So, the last 20% is our potential advantage. A good user experience, not just for users to be comfortable, but also to not make users feel uncomfortable. The handling of anomalies, then, may be the key to ensuring the experience.
configuration configuration for a high degree of flexibility
module decoupling each module only one thing, keep the
Read and write separation for high performance key
cache the closer to the business layer, the higher the cache hit, but the lower the reusability
Read-write Conformance mass services prioritize performance and intentionally lose part of real-time data consistency, but will absolutely guarantee that the final data is consistent
Today's recommended song:
"Over My Head" Sum 41
"Real Hip Hop" Jin
"Wife" Blackstar
This article welcome reprint, Reprint Please indicate the public number and author. Public number: Internet and composer. Neil All rights reserved, pirated must investigate!
Abstract thought and figurative thinking in pierced-architecture design