Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Advice on moving to a multi tier Delphi architecture

We have a relatively large application that is strongly tied into Firebird (stored procedures, views etc). We are now getting a lot of requests to support additional databases and we would also like to move a lot of the functionality from the client to the server.

Now seems like a good time to move to a 3(4) tier architecture. We have already looked at DataSnap 2009 and RemObjects SDK/DataAbstract. Both seem like they would do the job, but are there any advantages/disadvantages we should look out for? Are there any other frameworks that you could recommend?

Cheers, Paul

like image 653
norgepaul Avatar asked Feb 13 '09 07:02

norgepaul


People also ask

What are the three main advantages claimed for an n-tier architecture?

N-Tier architecture has following advantages: better scalability, better and finer security control, better fault tolerance ability, independent tier upgrading and changing ability without affecting other tiers, friendly and efficient development, friendly maintenance, friendly new feature addition, better reusability ...

What is the different between multi-tier and Muti layed architecture?

Layer is the logical separation of functionality into assemblies, for example, Data Layer, Presentation Layer, Business Layer etc. All the assemblies may also be deployed in the same physical machine. Tier is all about the physical deployment.


2 Answers

I can recommend using the KBM Middleware components from Components4Developers. There is a bit of a learning curve but they are very flexible and hold up well under use in real world conditions.

Comment from a user (http://www.components4programmers.com/usercomments/commentfromapowerusertoaquestion.htm)

like image 72
Aikislave Avatar answered Nov 09 '22 18:11

Aikislave


Changing your application to Multi-Tiers with new framework (RM,DS,kbmMW, or what ever), will make a lot of changes in our application architecture, I recommended to go with this in future, but you can achieve the support for multi database, with other products like

UniDac from DevArt( Best components for database with direct connection). AnyDac(from same Company who offer RemObjects. SqlDirect(Has support for 9 MajorDB and also ODBC). ZeosDB(Open source).

using one of the components above, will give you support for most major databases, beside it will not make you doig a lot of changes, and in some cases you just replace old database components with the new ones, and maybe change some of properties.

However, changing to Multi-tiers will not only make you only support more databases, but it will separate your business logic from presentation layer, therefore you can have more presentation layers for your application like web interface, or smart devices.

But the most important in the Multi-Tiers architecture, you will have a scalable system the grow more than what the database you are using can handle of connection, beside other benefits, like using other languages to write client applications.

like image 37
Mohammed Nasman Avatar answered Nov 09 '22 17:11

Mohammed Nasman