Link to home
Start Free TrialLog in
Avatar of sam15
sam15

asked on

PB_archittecture

We have a fat client PB application installed on 200 machines that connects to an oracle 10g server. IT is very hard to maintain.

We would like to do one of the following:
1. Migrate from 2-tier client/server (fat client) to 3-tier (thin client) architecture
2. Migration from 2-tier client server to n-tier web architecture.

What kind of work is involved in Option 1. Is it difficult to do or just a matter of copying the executables to an application server and all users run it from there. Do we need a special application server for that?

Would it be more difficult to go to a web architecture. DO we need to recode the whole application in some other language or Sybase offers tools to allow you to do this.

Is there any good reference books on doing the above migrations

thanks,

ASKER CERTIFIED SOLUTION
Avatar of diasroshan
diasroshan
Flag of Kuwait image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of sam15
sam15

ASKER

Can you elaborate on "if most of the business logic written into user objects" then use EA server?

How many ways can you program in PB. i thought that is how the standard way of doing this. I did not write this app, is there a way for me to check how it is written?

You say it is easy? is it merely copying the executables from client machine to EA server? are we talking days/weeks/months for a medium size application.

is this EA server like an Propietary Application Server that Sybase has for hosting PB applications.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of sam15

ASKER

thanks for the info. so it seems i got 3 options but still not sure how much effor involved

1.  EA server - that allows us to deploy code on application server (still client server 3 tier model). still we need to have client code on each machine. Work effort depends on how the code is written

2. Citrix server - 0 client software. All PB code will be on citrix server. need citrix client for that on each machine. Any changes for PB app here?

3.  Appeon - this makes PB a web application accessible by browser. Would this require same effort as #1 and also depends on how the code is written.

thanks,
Avatar of sam15

ASKER

I should have mentioned the PB application is Version 10.5.
For citrix no pb changes are required except if you are reading something from registry or ini and which is different on each client machine. Because on CITRIX there will be one registry and ini shared by all clients. Other than that I don't see any major change in your system.

And yes you have fourth option to look for pb11+ as mentioned by Rosh. I don't have much idea about it, but I believe it too uses EA server and .net plateform.

Regards,
Sandeep
Hi,

Out of the 4 options, its entirely upto you which approach u wish to adopt.

Rule out EAServer, it would require lotsa changing in architecture and coding.

If you procure appeon, its as good as using a wizard to move to the web. Requires minimal changes for unsupported features.

CITRIX is a technology, widely used to overcome performance issues with network traffic etc.  You could read more on it too.... Lotsa applications developed in PB make use of this technology.

Finally, the latest version of PB... .NET enabled... havent tried it yet... so cant comment on it...

Cheers,
Rosh
Avatar of sam15

ASKER

is there a way for me to verify how current application is design: whether more windows or more user objects. I think it is more windows and objects placed on the windows but i want to confirm.
open object browser and select your application target from dropdown and check no of windows and user objects under window and userobject tab pages.

Regards,
Sandeep
Avatar of sam15

ASKER

I did tools/browser and  clicked on tabs.

under user object there are 300 starting with n_cst, pfc_n_cst, u_, and uo_
The uo_ were a few.

Under windwos there are also about 300 starting W_

under data windows there are about 500 starting D_

Does that tell you it is using windows and datawindows.
looks like your applicaiton is using powerbuilder foundation class (PFC) library. These objects will be mostly in libraries starting with 'pfc' and 'pfe' (5 with pfe and 5 with pfc). Also these pbls and objects are supplied from sybase in PB installation. All objects in libraries starting with 'pfe' are inherted from objects in libraries starting with 'pfc'. Hence 'pfc' library object are in top layer, then 'pfe' objects are in middle layer and then your company's custom objects are in lower layer (should be there in other pbls).  Middle layer (pfe) is mostly used to customize default PFC functionality otherwise there won't be any code in it.

Now all the objects starting with 'uo_' should be developed by your company. Objects and windows created by your company will be inherited from PFC objects.

As you said there are few user objects starting with uo_ and there are around 300 windows, it means that your actuall business logic is mostly in windows (bcoz PFC libraries have less windows).

And that will be tough to migrate. Hope this explanation will help you to understand your applications architecture.

Regards,
Sandeep
Avatar of sam15

ASKER

One lat question on APPEON.
How is APPEON different than EA Server? Are they both Application servers.

Is APPEON now owned by Sybase and reliable app server or it may be discontinued?

It seems an APPEON deployment will need a few months of work? agree

I was reading that PB11 does WEB stuff. Is that converting PB code to .NET code or you are writing .NET code.

Appeon is NOT like EA Server at all.  It is specifically designed to allow PB applications to run Web-Enabled.  As far as I know, that is its only purpose.

An Appeon deployment is your easiest route to web deployment of PB apps.  You may have to change a few things to get around a couple of the limitations of Appeon but you should not have to make wholesale changes or re-write the application.  Depnding on how big your application is you may have it working in days and certainly in a few weeks, not months.

What you were reading about that "PB11 does WEB stuff" is deployment with Appeon.  There is no way to "convert PB code to .NET code" as that would be a complete rewrite and change in architecture.

Appeon is THE solution if you are a PB shop and need to deploy on the WEB.  It works really slick and requires a minimum of modification to yoru existing code base.

Get an evaluation copy and port one of your smaller apps to see what it takes.

Regards,
Bill
Hi,

NO, Appeon is not an application server like EAServer but just another tool or should i say Add-on for PowerBuilder.

i guess the solution for u would be appeon.
Download a trial version from http://www.appeon.com

Go through the site, would answer a lot of ur queries.

We use appeon and are pretty happy with it.

Cheers,
Rosh
Avatar of sam15

ASKER

I thought you install APPEON on a server and move all the client code to it so users can use a browser/URl for application. Thhere has to be some application server for that. Or do you need an EA server + APPEON to do this.

What I found is that Powerbuilder is considered now a .NET programming language just like ASP, VB, C#.
It can be used to develop applications that run on .NET framework.
Forget about .NET unless you are looking to do a complete rewrite.  Just because you can do a thing does not mean you should do a thing.

I would suggest you go to the Sybase documentation on Appeon at:
http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.help.appeon.6.1/title.htm

You can use EAServer, WebLogic, or WebSphere as the application server.

The installation documentation will tell you everything you need to make it all work.

Regards,
Bill
I agree with sam15 that PB11 has features that will migrate your PB code to .Net plateform

here is more info

http://www.sybase.com/products/modelingdevelopment/powerbuilder

Regards,
Sandeep
It sure does.  I am just not sure what advantage that has over Appeon.

Are you suggesting that it would be easier to port the applications to .NET than it would be to deploy them with Appeon?

In addition, it takes an extraordinary talent and work to deal with the .NET performance issues.  I know of exactly one, large scale .NET web deployment that impresses with it's speed.  It is not impossible; it is just not trivial.

What advantage(s) are there to porting to .NET instead of deploying with Appeon?

Regards,
Bill
Avatar of sam15

ASKER

probably none. .NET will take moretime.

But i was curious on how APPEON is an add on tool and not an application server. How can it host the PB code if it is not an app server.
As close as I can figure without actually doing an installation, Appeon is a PB runtime environment that plugs into the back of an application server.  Kind of akin to a JVM but that may be a bit of a stretch since I think there is a zero-install client component to Appeon as well.

Regards,
Bill
Hi,

Appeon architecture resides in at least three types of servers: Web server, application server, and database server.  Each server involves a third-party server product: for example, Appeon Server is installed to EAServer.

I guess EAServer is bundled with Appeon Server.

Cheers,
Rosh