Analysis of the data access layer technology under the .NET (6)

zhaozj2021-02-16  52

U other

Ø ASTA

Network database application development or friends who have used Borland Midas technology should often be used under Delphi. It should not be unfamiliar with ASTA.

If ADO.NET or O / R mapping is implemented, DAL is Shaolin, Wudang's authentic heart method. The ASTA has a little bit of the taste of "Qiankun Migrant": Almost completely throw it almost completely from the DATA Access of DAL. (And slightly different from the original place, but also count another moving J) to process!

The traditional DAL implementation is like this:

ASTA has another way, an additional "intermediate layer":

In general, the introduction of the intermediate layer is to improve flexibility, reduce coupling,

ASTA is designed with this feature.

A key point on the figure is between the Asta Client and Asta Server

The "network connection", ASTA technology is using network characteristics, indirectly

Block the difference between different database systems, so that the developer is finished when designing DAL

Needless to know the existence of Database! This situation is a bit like a browser, it is completely

Use the HTML page from IIS or apache, just know yourself

It is the HTML page to obtain the HTML page using the HTTP protocol!

In ASTA, the browser is Asta Client, the HTML page is Asta Dataset (which is different from the DataSet in ADO.NET, which can be considered to be another database independent data collection means), and IIS, Apache It is the different ASTA Server provided by ASTA (currently supporting most mainstream database systems, developers can also write their own ASTA Server), and HTTP protocol is naturally a communication protocol between Asta Client and ASTA Server!

From a technical analysis, one of the purposes of ASTA architecture is to use its own protocol to block network communication protocols of different database systems, so that the client (DAL) completely gets rid of communication challenges when writing network database applications!

(The author remember, before .Net comes out, each time you write the Internet-oriented SQL Server application, in addition to configuring the connection string, you have to install the SQL Server Client Network Utility specially installed in the client to configure the Internet connection, do not say SQL The security issue caused by Server exposed port is that such a toss is also enough.

Write the program in ASTA is very comfortable, just know the address and port of ASTA Server, the username, password (ASTA comes with certification system, developers can also write their own Authentication / Authorization module, and even directly utilize databases The verification mechanism provided by the system), immediately obtain any data information of any database! Moreover, once the database system changes (such as switching from SQL Server to Oracle, the client does not require any modifications at all!

The lack of ASTA technology is also very obvious: due to the introduction of in some cases

(If the amount of data returns a large amount of data is enough to fatally "network intermediate layer",

When you develop large applications (especially enterprise-class applications for Internet)

It is necessary to be particularly careful, after all, comfortable to pay some costs!

Interested friends may wish to go to this website to see: http://www.astatech.com

Ø .NET Remoting / WebServices

It is not ready to take the .NET Remoting / Webserve, after all, these two technologies are not done for DAL.

Helpless, it is to see some friends have been used, and later thinking, it is quite quite truth, and take it out to see you with you.

In fact, although Microsoft promotes XML WebServices, but in terms of technology, it can be discussed. NET Remoting, XML WebServices is nothing more than a special case of HTTP SOAP communication protocol in .NET Remoting.

.NET Remoting Apply to DAL may be due to two purposes:

(1) I want to achieve cross-platform data access, because DataSet in ADO.NET is sequentially, through Remoting or WebServices can restore site on the client;

(2) Alleviate server pressure and increase system flexibility.

This is a bit similar to the above ASTA technology, but only the agreement here.

Replace it to .NET Remoting Protocal. But use this way,

Still different from the flexibility of ASTA, after all, Remoting

Ask the client to register each DAL access interface, once the interface

Change, the interface must be registered!

Therefore, the author's suggestion is to avoid using .NET Remoting

Build the DAL module of the application (if it is business logic layer, no

There is this problem), unless it is really "forced" (for example: must be in DAL)

Layer implementation distributed computing or customer insist on using .NET Remoting J)!

The following sections are writing because of time limit!

l My program (end, write ...)

u Comprehensive existing technology

Ø Add a new Daf Layer on Dal: Data Access Facade

N Use Dataset / DataTable / DataView Cache Management

N Use Objectspaces / Eco ADO.NET Stored Procedure

Ø ...

u Using ready-made framework

Ø Open source project recommended to use OPF (abroad)

Ø Commercial product recommended to use Grove (domestic)

Ø ...

u Design your own persistence layer

Ø If you want yourself to design the wheel, then the best reference material is too this article: http://www.ambysoft.com/persistencelayer.pdf

Ø ...

l Summary (end, write ...)

l Reference (not finished, writing ...)

Special Note:

"My Program" has been completed, please refer to the following link:

http://www.9cbs.net/develop/read_article.asp?id=27542

About the Author:

转载请注明原文地址:https://www.9cbs.com/read-24108.html

New Post(0)