Fusion Middleware

Diese Kategorie enthält 96 Beiträge

Tuning des Weblogic /Oracle Fusion Middleware 11g Teil 1

Immer wieder wird das Thema Tuning von Oracle Forms und Reports Anwendungen diskutiert. Ich möchte mit diesen Beiträgen versuchen einen kleinen Überblick der Möglichkeiten offen zu legen. Es wird nicht immer alles getroffen werden, aber es sollte einem doch schon die eine oder andere Idee liefern.

Warum eigentlich Tuning Weblogic / Oracle Fusion Middleware 11g. Bei jedem Kunden Gespräch oder bei jeder Kundeninstallation kommen gerade im Umfeld von Oracle Forms und Reports immer wieder dieselben Fragen zum Tragen. Das fängt an mit der Frage nach der Hardware, geht dann über welches Betriebssystem bis hin wie groß muss der Heap Size von dem WLS_FORMS Manged Server sein.

Um in dieses Thema einzusteigen bediene ich mich erst einmal des Vortrages, der Thomas Robert von der Oracle am 29. August 2012 in Köln auf der SIG Middleware gehalten hat. Ich möchte an dieser Stelle erst einmal verstehen wie das Layout des Java Memory aussieht.

Was bedeuten eigentlich die Heap-Size Parameter inerhalb einer JVM von Oracle / Sun. Wie ich in der Veranstaltung gelernt habe verwaltet eine JVM unterschiedliche Speicherbereiche. Warum ist das eigentlich so?

  • Die meisten Objekte innerhalb meiner Anwendung sind temporär, werden also nur kurze Zeit benötigt z.B. Ausgabe eines Strings
  • Lang lebende Objekte sind Objekte die sich durch die Anwendung ziehen z.B. „Globale“ Informationen

Diese beiden Bereiche werden „Generations“ genannt.

  • Young Generation für kurzlebige Objekte
  • Old Generation für langlebige Objekte

In der Java HotSpot Virtual Machine, sind die Gruppen unterteilt

Heap Speicher

Eden Space (young generation): Pool von Objekten, deren Speicher gerade erst allokierd wurde (noch kein GC Lauf)

Survivor Space 0 (young generation): Pool von Objekten, die den GC Lauf des Eden Space überlebt haben

Survivor Space 1(young generation): Pool von Objekten, die den GC Lauf des Eden Space überlebt haben

Tenured (Old) Generation: Pool von Objekten, die eine bestimmte Anzahl GC Läufe des Survivor Spaces überlebt haben

Permanent Generation (PermGen) Non Heap

Speicherort für die Klassen

Nicht im Heap

Kein JVM Standard

 

 

Quelle: Thomas Robert Tuning Oracle Fusion Middleware 11g 29.August 2012 SIG Köln

 

 

Die wichtigsten Befehle um den Heap zu beeinflussen sind:

 

-XX:NewRatio=[Verhältnis]

Verhältnis zwischen young und old Generation

-XX:NewRatio=3 erzeugt ein Verhältnis 1:3

-XX:SurviverRatio=[Verhältnis]

Verhältnis zwischen eden und survivor Generation

-XX:SurviverRatio=3 erzeugt ein Verhältnis 1:3

-XX:GCTimeRatio=[n]

Zeit, die der Garbage Collector in der gesamten application time

verwenden darf (berechnung 1/(1+n))

-XX:GCTimeRatio=19 führt also zu 1/20 also 5% der Gesamtzeit. Defaut ist 99, also 1%.

 

In dem nächsten Beitrag werde ich versuchen zu klären ob ich das ganze eigentlich für Forms/Reports gebrauchen kann.

Die Teilnehmer meines Kurse mögen bitte nicht weiter lesen, da dieses auch eines der Schulungsthemen sein wird. Schulung

SIG Fusion Middleware

Am Mittwoch, dem 29. August 2012 war es wieder einmal so weit, die DOAG SIG Middleware hat sich versammelt. Das Thema dieses Mal war Administration und Monitoring:

Wir hatten sechs Spannende Vorträge die sich mit diesem Thema beschäftigten. Auf sehr starkes Interesse ist der Vortrag „Administration & Deployment mit WLST“ von Andreas Koop von der enpit Consulting OHG gestoßen, der die Möglichkeiten von Weblogic WLST vorstellte. Ich persönlich fand diesen Vortrag ebenfalls sehr gut, da er einem wieder einmal die Möglichkeiten einer Skriptsprache, die im Weblogic vorhanden ist näher brachte. Danke Herr Koop für diesen fachlich sehr fundierten Vortrag.

Der Vortrag zum Thema „Weblogic Server 11g – Clustering und Hochverfügbarkeit in Theorie und Praxis“ von Thorsten Michels MT AG hat einem noch einmal die Möglichkeiten der Clustertechnologie vor Augen geführt.

Volker Linz von der Oracle Deutschland B.V. & Co.KG zeigte uns dann einen Überblick über Cloud Control 12c bevor Jens Zwer Oracle Deutschland B.V. & Co.KG uns einen sehr sehr guten Einblick in das Thema Real User Experience Insight verschaffte.

Zu dem Thema Oracle Fusion Middleware gehört ja auch der gesamte Bereich der Hardware. Hier hat uns Marcel Amende von Oracle Deutschland B.V. & Co.KG einen sehr tiefen Einblick in die Exalogic Insight verschafft.

Mit diesen bisherigen Themen hatten wir uns nun einen sehr guten Einblick über Cluster, Skript, Performance Monitoring sowie der Hardware verschafft. Das was nun eigentlich noch fehlt ist die Möglichkeit Tuning Maßnahmen zu tätigen.

Hier hatte wir die Möglichkeit mit Thomas Robert von der Oracle Deutschland B.V. & Co.KG sowie Jan-Peter Timmermann von der Pitts GmbH Stuttgart einem gemeinsamen Vortrag „Tuning des Weblogic /Oracle Fusion Middleware 11g “ zu lauschen. Ok. Der Vortrag ging nicht ganz so tief in das Tuning wie einige es sich erhofft hatten.

Ich persönlich fand aber den ersten Teil über den Garbage Collector hoch spannend und bin dankbar dafür, dass Thomas Robert uns dieses bereitgestellt hat.

Ich selber habe mich auf die Speicherparameter für WLS_FORMS konzentriert und habe selber sehr viele Überraschungen erlebt. Dazu mehr in einem weiterem Blog auf meiner Seite.

Was mich allerdings überrascht hat war die Diskussion, das viele Teilnehmer gar nicht darüber informiert sind, das es für Umsteiger von Forms 6i / OAS10g auf die aktuelle Version 11gR(1)/2 Kurse gibt die es den Administratoren erleichtern sich in der neuen Struktur zurecht zu finden.

Es gibt in Deutschland soweit mir bekannt ist zurzeit drei Anbieter, die hier ein Training anbieten. OK einer davon ist die Firma PITSS mit dem Kurs WeblogicServer Forms & Reports für Administratoren .

Patrick’s Oracle Modernization Experience | Oracle Forms Modernization and Upgrade, Oracle Forms2ADF Migration, Oracle Forms2APEX Migration

Oracle Forms Upgrade – Reduction of estimated Effort

Posted on July 18, 2012 by Patrick

Last week I started a Upgrade Project for around 250 Forms and Libraries. The original Estimate was 23 Days with our Tool PITSS.CON.

Before I started the Upgrade, I did a unused Code analyze and that droped around 10% Lines of Code. Even more amazing was, that the Upgrade analyze now reduced the Effort by 25%. The cleaning of the Code just took me one day but I saved over 5 days.

I think it is worth for any Modernisation Project to think about Re-Engineering.

For me this a mind blowing Project.

viaPatrick's Oracle Modernization Experience | Oracle Forms Modernization and Upgrade, Oracle Forms2ADF Migration, Oracle Forms2APEX Migration.

Oracle Fusion Middleware Forms und Webutil

Leider ist es auch mir wieder einmal passiert, das ich versucht habe mit einer Formsmaske zu arbeiten die Word/Excel ansprechen möchte. Also das alte Vorgehen: einbinden von webutil und Jacob. Leider habe ich das aus der Gewohnheit heraus mit den mir vorliegenden Komponenten gemacht. Und natürlich läuft es nicht.

Oracle hat hierzu am 12. Mai 2012 ein Dokument erstellt welches unter der ID 1093985.1 im Metalink zu finden ist. Hierdraus geht eindeutig hervor, das sich die Webutil Installation mit Jacob in der Version 11g deutlich unterscheidet.

Es ist mittlerweile Notwendig geworden die richtige Jacob Version mit der richtigen Oracle Fusion Middleware Version zusammen zu bringen.

So ist für die Oracle Fusion Middleware 11gR1 (11.1.1.x) nur die Jacob 1.10.1 zulässig. Für die Oracle Fusion Middleware der Version 11gR2 (11.1.2.x) muss es die Version 1.14.3 sein. Unter gar keinen Umständen die aktuelle Version 1.16.x nutzen.

Ich habe die zur Zeit gültigen Download Url’s mal hier mit hinterlegt:

 

Forms Version Jacob Version Download Download New
10gR1 und 10gR2 Jacob 1.10.1 hier  
11gR2 Jacob 1.14.3 hier  
12.2.1.0 Jacob 1.18-M2 hier  
12.2.1.2 Jacob 1.18-M2 hier  
12.2.1.3 und 12.2.1.4  Jacob 1.18-M2 hier New

In der 1.14.3 Version gibt es dann auch für die *.dll Dateien zwei unterschiedliche Verzeichnisse. Eines für die 32Bit und eines für die 64bit Welt.

Die während der Installation mit gelieferten webutil.pll / webutil.olb liegen default mäßig im ORACLE_HOME/forms Verzeichnis. Hier ist beim Anwendungs Deployment darauf zu achten, das in der Anwendung diese genutzt werden. Also wer den ORACLE_HOME Pfad aus seiner Konfiguration austrägt sollte dafür sorgen, dass die Webutil Komponenten in der aktuellen Version genommen werden.

Forms 12c benötigt: Forms 12c Application Supports JACOB Version 1.18-M2
Oracle Forms 12c, when configured with Webutil at runtime, supports JACOB version 1.18-M2 in order to perform the client side OLE integration. Note that this version of JACOB is different from the versions supported in the previous releases of Oracle Forms.

JACOB is a JAVA-COM bridge that allows you to call COM automation components from Java. It uses JNI to make native calls to the COM libraries. JACOB runs on x86 and x64 environments supporting 32 bit and 64 bit JVMs.

Einfache LB Konfiguration für Forms

Immer wieder kommt das Thema auf, einen einfachen Load Balancer für Forms aufzusetzen. Ich habe mir ein einfachen weg ausgesucht.

In der httpd.conf werden folgenden Module eingebunden (zusätzlich zu den normalen)

LoadModule proxy_module
LoadModule proxy_balancer_module
LoadModule proxy_http_module
LoadModule status_module

Anschließend erstelle ich mir einen Virtuellen Host auf dem meine Forms Anwendung laufen soll

<VirtualHost 192.168.140.133:80>
   ServerName prodforms
ServerAlias prodforms
UseCanonicalName On
<IfModule proxy_module>
<Location / >
ProxyPass balancer://service_prodforms/ stickysession=JCLUSTERID
ProxyPassReverse balancer://service_prodforms/
</Location>
</IfModule>
</VirtualHost>

Und dann noch die Proxy Konfiguration

##########################################################
### service_prodforms = webforms1 192.168.140.101 ###
### webforms2 192.168.140.101 ###
##########################################################
<Proxy balancer://service_prodforms/>
BalancerMember http://webforms1:8888/ loadfactor=1 timeout=3 route=webforms1
BalancerMember http://webforms2:8888/ loadfactor=1 timeout=3 route=webforms2
ProxySet lbmethod=byrequests stickysession=JCLUSTERID
</Proxy>
<IfModule headers_module>
Header add Set-Cookie „JCLUSTERID=sess.%{BALANCER_WORKER_ROUTE}e;path=/“ env=BALANCER_ROUTE_CHANGED
</IfModule>

Der Cookie sorgt dafür, dass die Session auf einen Server gebunden wird.

Über die Direktive

<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Allow from all
</Location>

Kann ich dann einen einen kleinen Manager local nutzen um die eine Seite ein oder auszuschalten

Dies ist eine einfache Möglichkeit den Apache http Server als loadbalancer zu nutzen

Oracle Modernization Alliance—Automated Migration Partners

Seit dem Jahre 2010 gibt es bei Oracle die OMA (Oracle Modernization Alliance).

Zitat : „OMA defines automated migration as the ability to transform legacy technologies into more modern ones with an automation rate of approximately 80% or higher.

Automated migrations are particularly useful when there is no desire to make major architectural changes to an application itself. Thus transforming code to make use of new databases or transforming 4th generation languages that are less „legacy reliant“ to start with are good potential candidates for automated migration.

Additionally, automated migration is a useful modernization technique for cleaning up legacy environments by performing code restructuring and other modernizations where the source and target language are the same.“

Pitss GmbH in Stuttgart ist einer der 14 Mitglieder dieser Alliance mit dem Schwerpunkt der Forms/Reports Modernisierung. Mit unseren PITSS Forms to ADF Migration Days: 22.-23. Mai 2012, Stuttgart
wollen wir zeigen wie das geht und das man Erfolge erzielen kann.

Über das Thema Migrationen wird sehr viel philosophiert, wir machen das seit über 10 Jahren. Für uns ist immer wieder wichtig zu betonen, dass es sich hierbei um ein Projekt handelt und eine Umstellung nicht mal so nebenbei erfolgen kann. Leider muss ich persönlich immer wieder feststellen, dass die Oracle DBA’s damit beauftragt werden die Applikation Server zu betreiben. Das war im Oracle 10g Umfeld durchaus noch denkbar (obwohl ich das nicht befürworte). Aber den DBA’s jetzt die OFM 11gR2 Welt anzuvertrauen. Ich persönlich habe mittlerweile über 20 Umstellungen von 10g aus 11g hinter mir. Habe mich mit knapp über 80 Teilnehmern meiner Kurse über die Unterschiede von 10 zu 11 auseinander gesetzt. Alle Teilnehmer waren (ok einer nicht) einhellig der Meinung, dass sie nach dem Kurs wirklich in der Lage sind die Umgebung zu installieren, konfigurieren und auch zu administrieren. Aus diesem Grunde: an alle die in naher Zukunft mit OFM 11gR2 Forms/Reports zu tun haben. Versuchen Sie einen Kurs zu besuchen.

 


 

PITSS Forms to ADF Migration Days: 22.-23. Mai 2012, Stuttgart

Erfahren Sie in diesem 2-tägigen Hands-on Workshop von PITSS alles über die intelligente Art der Modernisierung. Aufgrund des großen Erfolges im Vorjahr legt PITSS diesen Event auch in diesem Jahr auf. Sehen Sie Schritt für Schritt wie Sie zielorientiert und messbar zur modernen, vielfältigen ADF Anwendung gelangen!

Informationen & Anmeldung:

http://www.pitss.de/news-events/events/detail/article/pitss-forms-to-adf-migration-days/?tx_ttnews[backPid]=947&cHash=56189e76ff0c541ae9fde9c4c3a5462e

Für alle die sich damit beschäftigen ihre Forms Anwendung zu modernisieren ist dies ein seht guter Einstieg

Avatar von PatrickPatrick's Oracle Modernization Experience

The new PITSS.CON Feature: Source Code Analytics

Get a quick View inside of you Oracle Forms Application. Make the invisible visible. PITSS.CON Source Code Analytics analysis all Level of a complex Oracle Forms and Reports Application on Source Code Level. The module delivers information about Quality and Complexity. You get a lot of Key Data like most used objects, Lines of Code, Comment Ratio and a lot of others. Problems will be visible, Progress will be measurable.

PITSS.CON Source Code Analytics – Profile

  • Oracle Forms Applications – load, analyse and understand, including SQL, PL/SQL, Script and a lot of others.
  • Identify and follow Quality aspects and display Development Power
  • Make Quality measurable and display the Progress of a Development on all Levels in a Visual way.
  • Provide Online Reports for the Management, to control the Application pro active, qualify and improve the Application and Development of the Developers.
  • Analyse Oracle…

Ursprünglichen Post anzeigen 207 weitere Wörter

Weblogic 12c – DOAG SIG (Fusion) Middleware am 15.5.2012 in Frankfurt

Nachdem nun der Weblogic 12c auch schon wieder ein paar Tage alt ist startet die DOAG mit ihrer SIG Middleware am 15.5.2012 einen Überblick über das was uns der Weblogic so alles bringt. Viele Fragen, die sich aus dem täglichem gebrauch mit dieser Umgebung ergeben werden versucht zu beantwortet. Wie da wären: Was bringt uns der Weblogic 12c an Neuerungen mit. Es wird ein Vergleich gestartet JBoss vs. Glassfish vs Weblogic. Welcher dieser Server bringt mir welche Vorteile.

Auch für die vielen Forms/Reports Installationen gibt es Neuigkeiten: Wie komme ich denn auf die 11gR2 Umgebung.

Im Datenbank Umfeld hat sich RAC gefestigt, aber wie kann ich den RAC im Weblogic Umfeld ansprechen. Hier versucht der Vortrag „WebLogic-Server im Zusammenspiel mit Oracle Real Application Cluster (RAC)“ Lösungen auzuzeigen.

 

Stattfinden tut das ganze am 15. Mai in Frankfurt. Ich persönlich freue mich auf die Veranstaltung!

 

Migration von Forms zu Apex

Die Gelegenheit, die Struktur seiner Applikation zu überdenken?

 

Im DOAG@Talk ist mir ein Beitrag von Patrick Wolf (Principal Oracle Member of Technical Staff) über den Weg gelaufen. Für die IT-Dienstleister ist der Ansatz den er vertritt sehr schön. Machen Sie alles mit APEX neu, das geht mit APEX ja sehr schön und schnell.

Wie schön wäre es eine Anwendung die über 10/15 Jahre gewachsen ist mal ebenso neu zu machen J . Nein da bin ich etwas anderer Meinung. Man sollte in meinen Augen so viel wie möglich aus der Forms Anwendung wieder verwenden, d.h. evtl. Code in die Datenbank. Dann mit neuer Technologie das Frontend entwickeln, auch mit APEX.

Für das Aufräumen / Auslagern von Code in die Datenbank gibt es schöne Tools die einem dabei nicht nur helfen sondern einen auch in die Lage versetzten die Anwendung einmal zu analysieren, Toten Code zu entdecken, nicht genutzten Code zu entfernen. Und das ganze per Repository und Versions Verwaltung.

Wenn ich dann die Masken wirklich entschlackt habe kann ich mit einer neuen Technologie auf die Datenbank Logik zugreifen und die Anwendung neu erstellen.

 

 

Oracle Aussage zu Forms/Reports im März

Im März hat Oracle wieder einmal ein SOD (Statement of Direction) auf den Markt gebracht ebenso wurde die Oracle Lifetime Support Policy
bereit gestellt. Ich als Oracle Forms/Reports Entwickler finde beide Dokumente recht interessant. Da sagt Oracle doch das die Strategie bei Oracle ist Tools bereit zu stellen, die es einem ermöglichen Anwendungen zu entwickeln. Dazu gibt es zwei parallele Produkt Pfade. Zum einen die Klassischen Forms/Reports und die Java Entwicklungen. Der Oracle Business Intelligence Publisher (BI Publisher) wird bei den Java Entwicklungs Tools mit aufgeführt.

Oracle verspricht, dass in beide Technologie Welten auch in der Zukunft investiert werden soll und verweist an dieser Stelle dann auch mal wieder auf die E-Business Suite. Aber ist die E-Business Suite nicht als Fusion Apps neu auf dem Markt?

Wichtig für mich ist an dieser Stelle der Hinweis, dass es eine neue Version Forms/Reports (12c) geben wird. Es ist geplant diese als eine der Komponenten von OFM 12c mit bereit zu stellen. Also für alle die heute noch auf 6i oder 10g sind: Forms lebt immer noch und ist damit älter als mein Sohn.

Im Bereich Reports hat Oracle sich anscheinend dem Starken Druck vieler Anwender oder auch Gruppen (DOAG) anscheinend angepasst und doch noch eine Version 12c geplant. Aber und ich glaube das sollten wir nicht unterschätzen. Zitat aus dem SOD „Many Oracle applications and products, including E-Business Suite, Siebel CRM and JD Edwards, have already changed their reporting infrastructure to use BI Publisher as a replacement to earlier reporting tools.“ Ich glaube dass man hier wirklich anfangen sollte über ein alternatives Reporting Tool nachzudenken.

 

Oracle empfiehlt natürlich auf das aktuelle Release zu gehen (ich habe nichts anderes erwartet). Aber nach meinen bisherigen Installationen kann ich dem auch nur zustimmen. Es macht Sinn hier den Weblogic zu nutzen. Ich habe damit einen sehr guten Applikation Server zur Verfügung. Das Problem was an dieser Stelle immer wieder auftaucht ist natürlich das Erlernen der neuen Umgebung. Ich habe im letzten Jahr hierzu mehrmals einen Kurs gegen, den ich auch dieses Jahr wieder anbieten kann. Die Erfahrung hat mir leider gezeigt, dass viele Unternehmen sich gar nicht darüber bewusst sind was der Umstieg von 10 auf 11 von der Architektur sowie von der Administration mit sich bringt.

Der Weblogic Server bringt viele Vorteile mit sich, die ich an dieser Stelle einmal nicht aufzählen möchte. Ich möchte aber durchaus den Hinweis los werden, das es sicherlich Sinn macht über eine neue Lizensierung nachzudenken, denn die Einschränkungen im Bereich „Weblogic Basic“ sind nicht ganz ohne! Bei Fragen einfach mal warten bis zum nächsten Blog oder Mail an: JTimmermann(at)pitss.de.

Wo ich persönlich mich jetzt doch einmal einarbeiten werde ist der BI Publisher. Ebenso werde ich mich mit dem Thema Anbindung an Forms beschäftigen müssen.

Für alle die Umsteigen wollen, sei das Dokument von Grant Ronald erwähnt: A Case Study in an Oracle FormsRedevelopment Project to Oracle ADF .

Ich habe bisher immer sehr skeptisch einer automatischen Migration in Richtung ADF gegenüber gestanden. Aber das es teilweise funktionieren kann wird in dem obigen Dokument näher betrachtet.