System Architect-Basic to Enterprise Application architecture-client/server

Source: Internet
Author: User

Opening

On the article, we introduced, the single-machine software architecture, in fact, no matter what software system, are to solve the actual problems, software in order to better solve the actual problems will be generated, then for the single-machine soft

The architecture of the pieces is constantly changing and evolving, and of course the good software architecture plays a decisive role in the life cycle of the software. A good software architecture will undoubtedly extend the life cycle of the single-machine software, while adapting to the evolving needs of the later generation, the. NET Framework Architecture design and architecture design, I believe is very good.

This article, will tell you the more common schema mode, client-server mode, can be understood as C/S architecture mode. Now the C/S architecture has changed from the original simple client-server form to the

More derived architectural patterns, c/a/s,c/s/m/s. including multi-layer C/s architecture. This article will summarize the minor changes between these architectural patterns and application scenarios to explain briefly, of course, because of my experience and knowledge is not enough,

Mistakes, please point out a lot.

Outline

1. Opening

2. Outline

3. The generation of C/s architecture

4. Common scenarios and architectural pattern evolution of C/S architecture

5. c/S Architecture summary and description

C/S architecture

c/S and b/s architecture I think we should all still understand its essence and difference.

Definition of Wiki encyclopedia:

c/S (CLIENT/SERVER) structure, known as the client and server structure. It is the software system architecture, through which can take full advantage of the hardware environment of both ends, the task is reasonably distributed to the client side and

Server side to achieve, reducing the system's communication overhead. At present, most application software systems are two-layer structure in client/server form, the advantage of C/s is that it can give full play to the processing ability of client PC, many work can

The client is processed and then submitted to the server. The corresponding advantage is that the client responds quickly.

There are a lot of friends and I argue that the future is B/s, the architecture model of C/s, may become less and even replaced, saying, my understanding is this, any kind of architectural pattern exists, or

That sentence, is to solve the problem of different application scenarios exist. So it's not easy to judge whether the future will be replaced, but one thing, if we go back to the nature to see, you find that the browser itself is the C/s program, unless one day, we do not need a browser, you can surf the internet, perhaps I will agree with your point of view.

The development of science and technology continues to progress, the traditional structure of C/s may be the case.

This should be easier to understand, we put business logic in the client application, the client is the form of the rich client, only need to read

We can think of the database as the server side when we take the information or write the reply. This way, it should be a lot of software is so built now, of course, there may be many at this stage

The architecture of the new software has changed, not the simple structure, because no matter the integration of the application or the subsequent expansion of such an architecture, there is no doubt that a large number of modified programs to

And there will be bottlenecks in performance and so on.

For the architecture corresponding to the C/s, we look at the general way as follows:

Above I give is the general B/s application of the physical deployment architecture.

We're going back to what we said above. The browser itself is a client software, through the DNS domain name resolution server, send a request to the specified Web server, the Web server based on the user's request to produce HTML text

File, the process of processing needs to access the database, processing finished, returned to the client browser, the browser based on the returned information, rendering rendering to the browser client. I'm just outlining the next procedure,

Did not make many details clear. Let's take a look at the constant derivation and variation of the C/s architecture.

Scenario and Architecture pattern Evolution of C/S architecture

We also said in the last section, the C/S architecture has been continuously improved, has now derived a lot of architectural patterns, we will review and analysis, each of the architectural patterns of the general application scenario.

1, the client contains the business

A client application that internally contains business logic processing, requesting and accessing the database only when necessary. Persistence of data

Operation.

This mode of application scenario: generally used in the need for clients to provide rich applications, such as hospital information system.

The representative language of this model: Pb,vb,delphi and so on. Of course. NET Winfrom application, so there are many.

Advantages: Can reuse the PC resources, reduce the pressure on the server, in line with the user's operating habits, the user experience is better.

Cons: Installation and update trouble, not light, information sharing is more troublesome, there is no way to access the Internet.

2. C/A/S Architecture

This structure looks much more powerful, why, the client is lightweight, and the browser is similar, not only to provide a strong user experience and user-friendly traditional software operation, while not like the fat

The client can also support automatic upgrades, as well as the user's weight.

Application Server: is responsible for processing the client submitted complex applications, and then if the client user volume is large, you can use some measures to send the request for task distribution, and this is what we said later

Multilayer. Here the application server is responsible for processing the client sends the request information processing, with the database data related to the business logic operations, the client sends the request to the application server, the application server receives please

and processing. The application server accesses the database based on the client's request, processes the business logic, returns the processed results back to the client, and the client displays the results.

This way, all business processes are done through the application server as long as the necessary components are included inside the client. This will greatly reduce the efficiency of the client, while increasing the cost for future users

Provides the basis for horizontal scaling.

3. Multiple C/S structure

We have described above, C/A/S's already relatively powerful structure, not only provides browser-like support for Internet access, but also has a good user experience.

Let's take a look at the new physical architecture patterns generated based on the above architecture.

Of course, with the speed of server performance, we will find that, in fact, is not CPU slow, not enough memory, all the performance bottlenecks, all are present in the IO, this issue, whether it is now talking about any

The logical architecture, the physical architecture, or the data architecture, in general, is to solve the IO bottleneck problem. We do not carefully consider the current large number of listed companies, whether it is the Internet or work

of the class. Once the volume of data is large, the response of the request is the key point in IO.

We learned the principle of computer composition, we can know that there is a difference between memory and CPU, the order of magnitude is different, the hard disk and memory, and there is an order of magnitude difference, so this CPU generally, do not multitask

Or a large number of operations, the bottleneck is usually not here.

4, or multilayer

Of course, it can be a database cluster, or the structure of a distributed database store.

5. Distributed Applications

Distributed Application deployment server for the deployment of business segmentation.

6. SOA Architecture

Above we have said basically the current way of deploying a more popular physical architecture.

Next, let's say about the logical architecture of C/S.

Say the fat client first.

Evolve slowly:

Again abstract.

That's not going to work, because it doesn't fit in the UI. So derived from the MVC architecture, the general MVC pattern applied on the Web, C/s generally do not use this way, the current popular Java EE Development framework, such as JSF, Struts, Spring, hibernate and other combinations, such as struts+spring +hibernate (SSH), jsp+spring+hibernate, etc. are all oriented to the MVC architecture. NET people should all

You've learned about ASP.

In general, today's architecture is not simply these patterns, have been based on an integrated framework, or application development platform, through the platform to provide middleware, to achieve a variety of systems integration or cross-

Each other, with the power of these middleware, we can focus on business needs without considering too many non-functional requirements.

Summary of C/s architecture

Above we describe the more common C/s structure of the model and evolution, in fact, the aspects of the logical architecture, overall, the change will not be too large, generally these patterns, about how to layered, layered, and that need

See the specific needs and non-functional requirements of the project, including application deployment requirements.

With the popularization and rapid development of Internet applications, the future life of the Internet application of the world, this is no doubt and problems, but we can also see the future of C/s architecture development and business opportunities, the current

No matter the big companies, are promoting their basic platform, the development of applications on the platform, through the way of SaaS, to provide convenient shopping services store, so that not only to facilitate users to use good application services,

It also provides opportunities for developers, so the current mode of C/s architecture is increasingly shifting to SOA and SaaS.

We should recognize the form and direction, if we develop the path of independent innovation, then we must consider the future, architecture design is to adapt to future needs and the key to the development of the company, which is the current hot SOA architecture to the enterprise

The key to strategic impact. Everybody knows, noun bar, everyone will say, but the process of practice is always difficult, but if because of difficulties to give up, then believe that the enterprise will also fail because of difficulties. In the

Country, it is difficult to run a business.

A little bit more, the development of C/s architecture, the future will be the above-mentioned basic platform, application integration, SaaS, C/s may be less, but will not be replaced. Currently, most of the desktop applications are

This pattern, more and more, I believe everyone is commonplace. Now visionary companies are aware of the future of the enterprise, so seize the mobile phone and browser market, through the user's viscosity, to maintain the enterprise

Space for sustainable development and business value.

What is the relationship between business and architecture, in fact, think about is related, good Foundation can have good development, good company, if there is no sustainable vision and foundation, doomed to fail, recently more fiery

Saliva paste, also can see clues, big companies why to build their own platform, there is a reason.

Every company wants, unfortunately, may be for a variety of reasons, not set up, this time, you can consider low investment, high return of the way, through the purchase of existing market a better base platform, not only can

Instantly enhance the vitality of enterprises, while improving the competitiveness of enterprises, the fastest speed to seize the market. The future of cloud computing is a trend, no way to do things. When a person says, you do not believe, two people said when you do not believe, when

When everyone around you is believing, you believe it. Although many people shout foggy.

There are a lot of options, the key is to see if you seize the opportunity, the opportunity is always caught by the people who are prepared.

For now, we have completed the first step: SAAS.

Related information

Download the information.

If you have any questions about using the Agileeas.net development platform, please use one of the following contact or communication methods.

1, phone-mail mode:

Hego:[email protected] Mobile: 18691480181 Blog: http://www.cnblogs.com/hegezhou_hot/

2, QQ Exchange:

308961614-Net Name: H.O.T

3, QQ Exchange Group:

185074255 New

Agileeas.net Rapid Development Platform Download

Please click on the image to download.

System Architect-Basic to Enterprise Application architecture-client/server

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.