Three-layer infrastructure of the Internet
Before the browser entered thousands of households, the end user can only enjoy a single and boring data from the local server. Today, with the popularity of the URL in the world, we can enjoy the data from Paris and the Piolia database, and just as simple as reading the data around us.
End users have always been expected to enjoy more types of data, but there is no feasible approach to achieve this before the Internet. The vigorous development of the Internet provides an ideal data distribution method for end users and has laid the basis for exchange data in a global scale. But although these improvements have been made in the infrastructure, IT companies are still unwilling to open their databases to the public.
It seems that we also need to wait a few years before you can see that IT companies share their databases with the public in their way. Headquartered in the system integrator computer system development company (CSD) of Albeckgi, New Mexico, Tom Herring, Vice President of Sales and Marketing, said: "Enterprises using large machines have been seeking a way for many years, so that they can The end user provides a graphical client to access the database, but it is too difficult. "First is a security issue, followed by establishing the feasibility of this system. How high is the problem.
The structure of the browser / web server / database provides solutions for the above IT companies. Embedded between the client and the server, the Web server in the enterprise firewall can exceed the illegal intruder from obtaining the company's confidential data. But more importantly, it is very simple to use the web server to establish a database-based application. The browser pre-installed in the end user desktop computer makes developers no longer need to write complex graphical user interfaces for the application. If this app is very popular, IT businesses simply expand its size and distribute the workload on multiple web servers. In addition, because the browser automatically downloads any of the graphical user interfaces you need and the web home page, information technology companies no longer need to participate in software distribution.
Web-based database applications are typical examples of three-layer applications, which have a display layer, a logical layer, and a data layer. From the thousands of three-story applications distributed over the World Wide Web, it can be seen that this three-layer model has been very popular in Internet development. In fact, the three-story mode is very popular throughout the software development industry, and its advantages are recognized by more and more people. In the case of experts, this three-tier mode as the mainstream architecture of software development will soon replace the second layer mode.
Why not use Layer 2 mode?
Apptive Java Application Server Manufacturer, Headquartered Vice President of Progress Software Company, Massa, Bedford, Masa, is recommended, if you want to get the most appropriate metaphor of a layer, two and three-layer mode architecture, Then you can see a production process of food. In a layer of mode, you collect food yourself. In Layer 2 mode, you purchase food directly from the local farm. In the three-layer mode, you purchase food from the supermarket, and the supermarket purchases food from a number of farms.
It looks at the Netherlands to come to tomatoes, which is less efficient from the local farm, which is more costly, and it is better to species. But we all know that the fact is just the opposite. Large-scale professional farms can produce more food to make up for the additional cost of transportation, storage and distribution. After consumers entrust the production of food to several professional farms, but can eventually save money, but also get more foods, and ensure that there can always have sufficient food supply without global disasters. If the large business church, then this is the value of the economy.
Mr. Moore, Progress, believes that the field of client / server is also similar. Although the Layer 2 client / server mode is one step on the basis of a PC-based application, but. Mr. Herring, computer system development company said: "The client / server has made a lot of commitments, but the technology is not reached."
One of the commitments to the client / server to end users is that users can access data extensively. Before the client / server appears, the end user only has limited experience in the huge data store residing in many databases around the world. The mainstay of the mainframes that saved these data and even more than Noxe. For those applications that are rare, access to data warehouses - usually 3270 terminals - they are too bulky and boring enough to give end users to give up the entire idea. Like the final user lacks experience, we cannot guarantee that it will definitely interact with the data and transactions according to data. Data is a sacred thing, only those experts who are proficient in the corresponding tools will be played.
Of course, the problem facing the client / server is that you have to install the software on your computer for each user who wants to use the application. From many ways, this model is very troublesome. First, install the software on each computer is very time, not to mention cost. Second, in the world of the personal computer, each computer is different, and it is more troublesome to carry out maintenance. For example, Frank Vafier, president of PRLIFIC, president of JYACC, New York City, New York, New York, said: "Sometimes you need to install the DDL (dynamic link library) conflict with other programs."
Third, Mr. Herring believes that because in the Layer 2 mode, the display and logic is closed in one layer, or the client will be very large, or at least relatively large, thus consumes native storage space and system resources.
In other words, Mr. Vafier said: "Unless you need a lot of applications, it is not worth to install these things. For occasionally used users, the app is not used at all." Mr. Vafier is introduced to the mass market. The Layer 2 client / server application has experienced failures in the early days and talked about the initial family bank app and the Federal Express Corp. (FedEx company) developed package tracker (not web-based).
the third floor
Recently, we generally believe that various online database applications are natural things - but these applications, whether they have their own goals and uses, or even more than a few years ago. Regardless of whether we are developing your own travel plan, or online booking or disc, and even an access to the 401K record of the employee, in Vafier's words, this ability to transaction in the source is the function of any new application. .
In addition to rare exceptions, these applications may be possible to increase a layer between the client and the database - the so-called "middle layer" of Moore, which is the "intermediate layer", which is said: "middle" The role of the layer pair calculation is to pack the session, communication load, and work itself, divide into blocks that can be managed, so that effective processing can be performed. "
Intermediate layer (also known as logic, application server or information agents) can perform a lot of functions. Some of these features have been executed by the client or database, but many of the features provided by the intermediate layer are new.
SUN Microsystems General Manager STU Stern, General Manager of the North American Java, said that the most basic tasks performed by the intermediate layer in the web-based database application areas may provide security. The intermediate layer resides outside the firewall within the enterprise network and consists of a client and database fortress in the form of a web server.
In a purely three-layer system, the mandate of the intermediate layer is to provide the core part of the application logic - program. Mr. Stern believes that the application logic is placed in the client layer or the data layer will have a lot of trouble, because "the front and backend systems have a big change in the change of the demand." If the application logic is constructed In the intermediate layer of coordination, it can ensure that most of the coding can remain unchanged regardless of how the front end or the rear end changes. Finally, companies also rely on the intermediate layer to ensure that the application can be obtained by the end user. In large systems, this will involve maintaining load balancing between servers, managing the information such as the connection between the client and the transfers between the client and the database. Mr. Vafier, Prolific, believes that it is especially important for web applications: the application logic can be distributed on multiple servers, thereby increasing their calculation processing power. He said: "If the Layer 2 client / server application is successful, you want to use its number of users more than you expected. If it is web-based application, this number may be 100 times or 1000 times "
Why is the three-layer architecture now? Why isn't it earlier? If everyone thinks that the three-layer architecture is better, then why do it appear until now?
In fact, the idea of the three-layer architecture is not fresh. Mr. Moore, MOORE, who is using IBM's Customer Information Control System (CICS --- Customer Information Control System) and the Tuxeda Transaction (TP) monitor of the BEA system, said: "The three-story structure is opinion. In fact, if you look well, you will see the production process in many places to use a three-layer application.
Airline booking system has always been a typical example of a three-layer application. Mr. Moore said: "You have heard that the airline's ticket staff is very bad, is it typing this joke in a lifetime?" The actual situation is that a small computer runs a specialized customer program, the client is very elsewhere. Special application server dialogues, and this server may be a TP monitor on IBM's CICS or other Unix, which is dialogue with the background data source. This application is definitely available in three-layer system: clients, application servers and databases are installed on different system components, respectively.
However, establishing and maintaining a three-story application has been a problem that makes everyone's headache, only the most tenacious or backshop development team will perseve it. Mr. Herring, computer system development company, said: "We used to arrange the best programmers to develop these projects. But they all said it is very difficult." If not now installed the World Wide Web browser, developers may Now I am now building and installing client programs on the end user's computer. Currently, only a few developments such as Sybase's PowerBuilder can be used to build such applications. Moreover, in order to obtain transaction functions required by most database applications - Reliable transmission, two-stage submission, etc. - you must hire developers who are proficient in middleware.
Mr. Sun's Stern said: "It is certainly good idea from logically and physically divided into these three layers. But I am also very clear. In the short term, your workload is definitely bigger." So most clients / Server developers have skip the development of the intermediate layer and focus their focus on the establishment of application logic directly on the GUI client.
Therefore, the development of three-story applications is only used by systems that really need it, such as the ATM (ATM) bank app and the airline booking system mentioned above. Generally speaking, considering the use of three-story mode development has the following features: they require reliable transmission of information, which must support a large number of potential customers - that they are required to have good scalability and performance.
However, the main reason for developers to apply three-story mode may not be because it is the correct way to construct applications, but because in many cases it is more easier than the development of Layer 2. Therefore, the three-layer mode should be grateful to the downloadable thin client. Mr. Progress's Moore said: "The simple extent of the three-story mode is comparable to a layer of model." Java also has a significant contribution to the popularity of the three-layer architecture. The developer does not think that Java is the best language for creating a networked application.
Mr. Moore said: "From the design, Java is a simple network computing architecture." It has played a vital role in the success of the three-layer system - download the thin client's ability, built-in network Safety and other excellent features of this language - as, from a computer to another computer call function is easy in Java.
What benefits will be used after the three-layer architecture?
Now, the three-layer architecture has been recognized as the most effective model developed by the developer, but if the three-layer structure is to be a real-available system, what other aspects need to be improved?
Mr. Sun's Stern believes that first, the intermediate layer must also be improved, not only to support the World Wide Web and Windows clients. Mr. Stern said: "The client equipment is everywhere," he hinted the next generation of palms, telephones, television, pagers, etc.
Middleware manufacturers have begun to add support for different component architectures. ICL, headquartered in Restton, Virginia, is responsible for the marketing manager of Corba object request agency (ORB) product, said: "There are currently three mainstream technology." These technologies include: Microsoft Component Object Model (COM) And distributed COM, CORBA, and ORB solutions (see "OTM Weighing") and Java. Mr. Hunter said: "Enterprises must include these three technologies for any solution developed by the middleware market."
In this regard, ICL's DAIS series has recently added two new products: Com2Corba - a development software that can connect Windows applications to CORBA-based enterprise applications, and J2 --- Java version Dais ORB. Other middleware manufacturers are not willing. For example, Massachio City, Sosborough, Sosborough, known as PRC (Remote Program) Product, recently announced the launch of at least 4 middleware environments: COM, CORBA, Java, and RPC support interactive operability An application development tool: Nouveau.
Development to the N layer or more
So, if the computer system has successfully developed from a layer model to the second floor, how will it develop?
Mr. Progress's Moore believes: "From a logical point of view, the next development phase of the computer architecture should be the so-called full-distributed calculation of such a concept. In such modes, there is neither client, no existence Server --- Any part can be used as a client, but also as a server. "But Mr. Moore also pointed out that in full distributed computing mode, there is also a good place to be popular in three-layer structure. Managing all distributed applications will also be very difficult. Mr. Moore said: "Three-layer mode is the most mature application architecture that can still be managed."
This is not to say that there is no room for improvement. ActiveWeb Application Integration System Manufacturer, Cali Funfini St. Clara City Active Software Company's technical director Rafael Bracho's future outlook is that we will adopt an N-layer architecture, rather than two or three-layer structures. This mode requires greater flexibility when establishing an intermediate layer, while maintaining the display layer, logic layer, and data layer of the three-layer mode.