10g Disco Portlets : Scalability across hundreds of users

Hi,
Looking for some insight to scaling disco portlets across hundreds of users. Using Discoverer 10g 10.1.2 and have a portal with about 25 Disco Portlets scattered across a few portal pages. (Using Oracle Portal also) Every user gets the same pages, but the content of Disco portlets is different by user.
Most of the Disco Portlets are Worksheet Portlets showing a table + graph, the remaining disco portlets are Worksheet List portlets. Some portlets refresh hourly, and some are once a day.
We've staggered hourly portlets at different times of the hour so they don't all refresh at say the 00 mark of each hour. Portlet A refreshes at 00 minute mark, Portlet B refreshes at the 10 minute mark, etc.
Because each user needs to see different data, the disco portlets all use private connections vs. public connections, so each portlet graph shows different data depending on the user.
What's happening is at the 00 minute mark, each user is having their Portlet A being refreshed. As the number of users grows, this just gets worse and worse. There seem to be refreshes happening constantly. The kicker is, these hourly refreshes happen regardless of the user looking at the portal that day or not.
We're having challenges with scaling the portal as the number of users is growing. How did Oracle envision Disco Portlets to scale with hundreds/thousands of users? All we can do is stagger the hourly refreshes, but we can't stagger the users.
We have Disco running on one unix server, the database on a 2'nd server, Portal on a 3'rd and Infra on a 4'th.
Any insight into scaling Disco Portlets for the above scenario would be helpful.
Thanks.

Hi,
Let me see if I can start the ball rolling for you on this one with some insight from previous implementations.
"What's happening is at the 00 minute mark, each user is having their Portlet A being refreshed. As the number of users grows, this just gets worse and worse. There seem to be refreshes happening constantly. The kicker is, these hourly refreshes happen regardless of the user looking at the portal that day or not."
1. The portlets will get refreshed once per main portlet and an additional refresh for each customization. This could explain why you are seeing more refreshes than you expected.
2. The refreshes will occur per the schedule to refresh the data in cache whether or not the user is logged in.
The way is works at very high-level is like this:
The PortletProvider is a J2EE application running under OC4J_BI_Forms container.
It polls PTM5_SCHEDULE table every 2 seconds or as specified by peekSleepIntervalSec parameter in the configuration.xml
If a portlet refresh is found (ie the scheduled refresh time arrives) then the information about the refresh is added into a job queue within OC4J_BI_Forms.
Java threads pick up jobs from the queue (parallel processing, maxsessions).
For each job a session is picked up from the session pool, query is generated and sent to EUL/database to retrieve data.
Next, retrieved data is processed into XML and stored in PTM5_CACHE table as BLOB.
The PTM5_SCHEDULE table is updated with Last Refresh Date and Next Refresh Date, etc.
The next time the relevant portlet is accessed in a browser refreshed data are read from PTM5_CACHE (and formatted per customization).
Discoverer Portlet sessions can be pooled, enabling them to be reused by different Discoverer Portlets. Pooling Discoverer Portlet sessions saves CPU and memory resource usage.
You can see how to control these parameters via the Application Server Control or $OH/discoverer/configuration.xml file in the documentation here:
http://download.oracle.com/docs/html/B13918_03/con_files.htm#sthref1195
Now having said that, there have been a few bugs in the Portlet provider regarding how the session pool behaves and one that does not kill existing dis51ws processes.(bug 4929480)
I also seem to recall from past a bug about hourly refreshes specifically.
(bug 4929480) is documented in
Note 436135.1     Discoverer 10g (10.1.2) Sessions (dis51ws) Are Not Terminated After Timeout Causing Users Unable To Login     
Oracle has produced some patches, but which one you apply really depends upon your version, environment (ie. EBS11i/SSO integrated or not), current patches applied and your platform.
You may have to work that out with Oracle Support, but I can tell you in general some good one-off merge patches that you should apply (based on my experiences).
From the note above:
For versions 10.1.2.1 / 10.1.2.0.2 (Discoverer 10.1.2.48.18 and 10.1.2.50.05):
Patch 5922220 is the latest known Portlet merge patch on top of 10.1.2.1 (10.1.2.50.05) for E-Business Suite Single Sign-On integrated customers and Patch 5497101 is the latest known Portlet merge patch on top of 10.1.2.1 (10.1.2.48.18) for other customers. Both of these patches include the above fix.
# For versions 10.1.2.2 (Discoverer 10.1.2.54.25):
* We recommend you apply Discoverer "cumulative patch II" ( Patch 6129303 ) as directed by Oracle Support if it is appropriate for your environment.
I would consider:
A.) Make sure you are patched appropriately
B.) Make sure you have tuned your Discoverer portlet session pool.
C.) If the load is large enough, you may need to consider an additional Discoverer standalone server with a load balancer.
A note on that: Load balancing portlets is a bit different than standard HTTP applications (Plus/Viewer) since each portlet application on each server will be checking the refresh table in the metadata repository (infrastructure) database.
You will have to ensure:
a.) the times on each server is synchronized
b.) the the peeksleepinterval is adjusted on each server to accommodate a smaller server vs. larger server (ie. which one you want to pick up more of the refreshes)
Oracle Support has documented those pretty well in MetaLink document 360310.1     How Discoverer Portlet Provider Refreshes Are Distributed In A Load Balanced Environment
I hope that helps get you started.
Other comments / experiences welcomed.
Regards,
Steve.

Similar Messages

  • Sharing ITunes files across multiple windows user accounts

    How can my husband and I share our music files across two windows user accounts on the same computer.  As of now, when one of us buys new music, the other cant get it in their music library.  How do we get it to show up for both of us?

    follow this link to support article. http://support.apple.com/kb/HT1203

  • Oracle Portal Portlet 404 Error for Specific Users

    I have a single portlet in Oracle Portal that is returning the message "Error: The listener returned the following error: 404 Not Found" that is occurring for just 2 out of my 350+ users. I have tried clearing user cache, clearing portlet cache, deleting these two users from portal and recreating their accounts, changing their usernames, rebooting the entire app server and nothing is working. There are other users for which the portlet will return the exact same data that the 2 problem users are requesting without an issue.
    Portal version is 10.1.2.3. Any help that anyone can provide would be greatly appreciated as I am about ready to beat my head against a wall.

    Hi Kirk,
    Please check below MOS ID, your issue will be resolved.
    Error: The Listener Returned The Following Message: 404 Not Found [ID 456421.1]
    Mark if this helps you.
    Regards,
    Kishore

  • Disco Portlet definition in 9iAS: Get drop-down for parameterized sheet?

    The subject line says it all:
    If you have a parameterized sheet, should one get a drop-down of possible values when a Disco portlet is defined in 9iAS Portal? Or does one have to always type in the values manually?
    (I have created a custom item class with the LOV; works w/ Plus, Viewer, and Desktop.)
    John N.
    [email protected]

    After some interchanges with Support, it turns out that this functionality does not exist due to architectural issues regarding the Discoverer/Portal integration. The problem has been logged as a bug. They guess: Maybe 9.0.5.

  • Popping up Disco portlet in portal?

    Hi folks.
    This is a Discoverer portlet question for 9iAS. In short, it seems that you can't set a portlet to pop up. (I am not trying to pop up Disco Plus or the Viewer -- I am trying to pop up a portlet specifically. In the tar I've entered at Oracle support, it seems that this last point is hard to grasp.)
    A nice feature of the 9iAS portal is that a portlet can have its attribute set so that instead of showing in a portal region, it displays in a new browser region.
    The way you do this is:
    1. Define and refresh the portlet as usual.
    2. Go to graphical layout mode and click the pencil to change the attributes. Set the "Display Options" attribute to "Link that Displays Item in New Browser Window."
    3. Now go to the Region attributes, click the Attributes/Style tab, and make sure that the attribute "Display Name or Image" is included in the Displayed Attributes.
    4. Now return to your page view.
    5. Click on the link for the worksheet.
    6. You will see the portlet pop up, but it says: "Error: The portlet has not been defined."
    This is of course wrong, because if you change the display back to "Item Displayed Directly in Page Area," it shows fine.
    Other parameterized (i.e., customizable) portlets work fine: For instance, database portlets pop up just right.
    Can someone verify this for me?
    Note that this a portlet I'm trying to pop up. Popping up a Viewer page is not adequate, because I want to use the simple portlet customization features. Also, popping up a Plus session is not good either in our environment.
    [Aside: Unless I am wrong, this is another example of Discoverer's inadequate integration with 9iAS portal. Among the other important issues are: You can't pass page parameters to a Disco portlet; the little drop-down arrow that is supposed to "minimize" the portlet doesn't work; data points aren't headed right in portlets or the viewer; Viewer URLs with MANY parameters don't work; I could go on and on.]

    After some interchanges with Support, it turns out that this functionality does not exist due to architectural issues regarding the Discoverer/Portal integration. The problem has been logged as a bug. They guess: Maybe 9.0.5.

  • Managing root passwords across hundreds of systems

    All:
    Is there a mechanism to manage root passwords across hundreds of Solaris 10 systems? The policy requirement would be UNIQUE ROOT PASSWORDS...
    Thanks
    Sekhar Nagasundaram

    Hi,
    Your friend ssh is the answer here :)
    We do exactly this in the office, changing passwords remotely. Obviously, you will need to have some backend database to hold/generate the passwords for each machine. Once you have that, it is a matter of iterating over each machine in turn and changing the account password.
    There are three ways I can think of doing this in an automated way:
    1) on each system use sed or similar to directly alter the /etc/shadow file. (risky...)
    2) on each system use a tool, to change the /etc/shadow password file, which is passed the passwords on the command line. There is a chpass or similar tool such as this distributed with a Squirrelmail plugin for instance
    3) use an expect script to alter the password by interacting with passwd.
    Which way you implement will be largely goverened by your local policies and procedures.

  • Disco Portlets - Auto Resize Graphs

    Is there a way to automatically resize disco portlet graphs determined by screen size?

    I find this to be one of the biggest limitations of this product. The only thing close to a work around is to use panels and set the anchor to slack. This will allow some level of adjustment when the Window size changes.<BR>

  • Disco Portlet "View Worksheet" link

    We are running Discoverer 9.0.2.53 and Portal 9.0.2.3
    We have Discoverer portlets that were created using a private connection. When clicking the "View Worksheet" link, users are prompted for the password. Creating a connection in Viewer using the EUL owner connection is a work around but was unacceptable to the developers mainly because the users can delete the connection.
    I reviewed 8.4.3 of the 9iAS Discoverer Configuration Guide to start Discoverer without exposing a password in the URL but the "View Worksheet" link in the Discoverer portlet is dynamically generated by worksheet_run.xsl. That style sheet can't be modified. I had opened TAR 3225992.995 trying to get suggestions and the discussion is covered here.
    I did some more investigating and if I click on the "View Worksheet" link and add a URL parameter "&pw=password" I can connect with no problem but that would still entail modifying worksheet_run.xsl and I cant hide the URL with Portal. I can hide the URL parameters in viewer if there is a viewer connection.
    We are currently logging in as each user that should have access to these 200+ Discoverer portlets as they are added to OID and set up a viewer user defined (Private) connection as a work around even though it is unacceptable to the customer. It is also an administrative nightmare for us.
    Any suggestions appreciated, Ron

    Hi
    I'm not certain with regards to this being configurable in 10g R1. If it is, it will more than likely be done when you set up the portlet initially. Certainly this is the way it is done in 10g R2. I'll dig around and see what I can find. Sorry I can't be more help at this stage.
    Best wishes
    Michael

  • JSR168 portlet - How to acquire Portal user identity?

    My scenario is:
    - Write a JSR168 portlet to access data in an Oracle database
    - The portlet will use the identity of a Oracle Portal user, who currently logs in, to create the connection to that database
    - In the database, I create a global role, that in turn, assigned to an enterprise role, already granted to the portal user.
    - When that user logins the database, depend on his available roles, the database will control his access on data
    My problem is: how can I get the identity (username/password) of that Portal user to establish the connection to my database?
    If anyone know, plz give me some help. I'm very thankful.

    Dear Steven,
    Can you elaborate on your query a bit further?
    If you are looking for some SQL statement that will validate against a table for a given portal user then you can use the API wwctx_api of Portal.
    For example,
    SELECT FIELD1, FIELD2, FIELD3.....
    FROM TABLE1
    WHERE PORTAL_USER = WWCTX_API.GET_USER;
    I hope this helps.
    Thanks.
    Saabir.

  • Telnet portlet not returning info to user, but receiving commands

    Hello,
    We are having some problems receiving data from the server in the telnet portlet. When a command is issued such as 'ls', nothing is returned to the user. The command is being received by the server because when you create a file and then check to see if the create file command was run, you will see a new file created. So the problem seems to be that the portlet is not able to read the info sent by the server.
    When you reload the portal page you get null errors returned in the portlet.
    In Mozilla the following browser error appears - document.cmdForm.userText has no properties.
    In IE the following browser error appears - document.cmdForm.userText is null or not an object.
    Has anyone had this same problem? Any insight on how to fix this???
    Thanks in advance,
    julia.

    I am experiencing exactly the same problem.
    Did anyone ever find a solution?
    The telnet portlet logs me in and I am able to run commands but cannot see any output from the portlet. For example if I create a directory via the telnet portlet and check on the server terminal I can see it has been created, but if I do an ls command via the portlet nothing is displayed on screen.
    The portlet was installed on 9ias v9.0.2.0.3, PDK v9.0.2.6.2 and Solaris 5.8

  • Portlet Preferences to no logged users

    Hi people,
    I created a JSR168 Portlet with view and edit mode. I put into my webcenter custom application. I go to edit mode to set some preferences from portlet, to do this I need be logged in.
    The problemn is that just logged users can view the preferences that I set. If I logged off I can't saw any preferences.
    I tried use edit_defaults mode, but don't work fine.
    Can someone help me please?

    Hey sorry for the delay but here it goes :)
    Think you should get enough information by this example to complete what you want, else just ask :)
    So first of all you will need to add a parameter definition to the oracle-portlet.xml
    THis is what you should add after the portlet-name in the oracle-portlet.xml:
    <navigation-parameters>
                <name>param1</name>
                <type xmlns:xsd="http://www.w3.org/2001/XMLSchema">xsd:string</type>
                <label xml:lang="en-US">First Parameter</label>
                <hint xml:lang="en-US"/>
            </navigation-parameters>Normaly you shouldn't do anything extra in order to show those parameters and store them. Everything from here is managed by your consuming application. Notice here that the consuming can only be of the webcenter kind so a custom webcenter application or webcenter spaces due to the oracle specific implementation of the parameters. This gets standardized by the JSR286 but webcenter doesn't support this yet...
    Also notice that when you change something to the oracle-portlet.xml or portlet.xml you should refresh the registration in your consuming application AND remove the old portlet from your page and replace it by a new one. Otherwhise you will not see the new parameter.
    So when you added this to the oracle-portlet.xml and refresh the registration you should see the parameter in the portlet parameter tab when you click the pencil on the portlet in edit mode. Note that you should have customize rights in order to do this.
    Parameters that you set their are not stored for the user, they are application wide stored so if for example admin1 sets a value and admin2 changes it to another value, the last value will overwrite the first one.
    The next thing you should need to know is how to get the parameter from your code.
    This is queiet easy... THe PortletRequest has the getParameter function that will return the value:
    in your backing bean you can write this:
            String param = "";
            PortletRequest request = (PortletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
            param = request.getParameter("param1");
           if(param.equals(""))
               param = "No value for the param has been set yet";
           return param;In fact that's all you need to know for implementing parameters.
    In case something is not clear or you have problems, just ask.

  • How do I purchase Adboe fonts for distribution across a 5000+ user University. Licenses required?

    My University is updating its 'Visual Identity Guidelines' and I am trying to find out the proper way to go about purchasing fonts for 'official' use and distribution to staff users across a large institution.
    I see Volume Licensing for programmes but not for fonts. Can anyone advise?
    Thanks in advance

    TerriTea-
    Our Volume Licening program provides for volume licensing of Font Folio 11.1 only.  You are correct that we don't license individual fonts via this program.
    However, we would be happy to quote you on a customized volume license for any specific fonts you want.  Please respond to me directly below, indicating the total number of users, information about your institution, as well as the specific typefaces and weights you have interest in.  I will see that the proper sales people respond to your query.
    Thanks for reaching out to us,
    Caleb
    Caleb Belohlavek
    Principal Product Manager • Type
    Adobe Systems Incorporated
    [email protected]

  • Portlet Problem for an individual user

    We are using the .NET implementation of Plumtree Corporate Portal 5.0.4. We have portlets running on a web farm that are built using .NET. The problem is we have two portlets that consistently work for the majority of our users, but there is one user in our NY office (we are located in Columbus, GA) that is now having a problem rendering the contents of the portlet. The error that comes back implies that the portal server is not able to make a request for the application. We are reasonably sure that the application functions. The user is able to click a gatewayed link of the application and it renders properly for him, but it simply will not show up in his portal window. Here is the error that we found in the source of the HTML from the user's machine:
    Error in CHttpGadgetProvider::raw_GetHTMLText, The Portal Server could not retrieve the content for this gadget because of a connection error with the host. If this problem persists, please alert a system administrator.-->
    This application worked for the user until about a week ago. The application has been running for several months. There are other applications that run on this same web farm that work fine for the user as a portlet. Again, a gatewayed link to this same application works fine for the user, just not in the portal as a portlet. This phenomenon has us stumped. We have checked portal settings even tried to point the remote server to one machine for this portlet. Nothing seems to work in the case of this particular user and these two portlets. Any insight you can give on this matter will be greatly appreciated.

    I am no expert from a code perspective but have seen some very odd behavior on portlets that are related to the browser version/components that the user has. I always test things out in Firefox if they are failing on IE. Also, check to see if the user has any non-native toolbars (have them send you a screen shot). Turn off all of these (Yahoo, Google, etc...) and see if things work.
    Best of luck.

  • Page Portlet Settings Not Propagating to User Pages

    Portal 9.0.2.6; Windows
    We upgraded to this version a few weeks ago, and we're still ironing out the kinks. We have quite a few pages that are exposed as portlets. I've edited (not customized) the page portlet settings, selecting specific regions of the page to display.
    When I spot check user's home pages, however, only the portlet headings show with no content. I've tried using the Reset to Defaults button in the customize form, but it doesn't work. Also, I imagine I'll have the same problems with any page-source portlets our users have added to their pages.
    Is there a sure-fire way to do the following:
    - Set the regions of a page to display when viewed in a portlet on a global level; and,
    - Propagate these regions throughout our entire user base
    Thank you for all the help!
    Mary

    I was able to figure out setting the global display on the default pages, but I'm still stymied at how to set the display for the page portlets for user customizations. In instances where users have added a page portlet, only the portlet header is displayed. I've done the following to try to fix the situation:
    - Deleted and regenerated the page portlets
    - Refreshed the repository
    - Refreshed the display for individual user pages
    Nothing seems to work. This is a major showstopper for us: we are scheduled to go "live" with the 9.0.2.6 version on Friday, and we do not want to ask users to recustomize their pages.
    Windows; 9.0.2.6
    Thanks for all the help!
    Mary

  • Scalability across browsers

    Hi guys,
    I want to publish swf projects with scalable content. When I do so, it works fine in Chrome, Safari and IE but not in Firefox.
    When I try to run it at a customer it doesn't seem to work in any browser. There are also differences between mine and my collegues browsers even when we use the same ones with the same version.
    I suspect it's a browser setting but I can't figure out wich one. It might also be an HTML or CSS issue but I also can't see what's wrong there.
    Any suggestions?
    Thanks!

    Came across my own thread again. This problem was caused by an older widget. Deleting this widget solved the problem.
    So, when you have a problem with scalability, check you widgets

Maybe you are looking for

  • Function to get differenece between sy-datum and any date entered in days

    Dear Friends;                 I have to find out the days difference between sy-datum and any valid date that come from table . Is there any function available in SAP that will give me the difference in  no. of  days between sy-datum and any date tha

  • Display won't go to sleep / screen saver won't turn on

    Since upgrading to Snow Leopard instead of the screen saver activating or the screen going to sleep when inactive, the screen goes dark for about a second and then flashes back on. It's resulted in images being burned into my screen a couple of times

  • Compatibility between Weblogic 8.1 and Broad Vision 7.0

    Can someone throw some lights on the issues and risks involved in Weblogic server 8.1 sp 4 running in Suse Linux 9.0 platform working with Broad Vision 7.0 running in Solaris platform. Would appreciate if you can post some links regarding this topic.

  • Web service - Passing along NTLM authenticated user

    APEX 4.0.2 All our apps set APP_USER to the CGI REMOTE_USER header which is set by the OHS mod_ntlm module to the logged in Windows user. Is there a way to invoke any (REST) web service references defined in the application to behave as if this user

  • Subtracting Datetime using timestampadd or timestampdiff in Obiee

    Hi, I am trying to subtract the current date to the date i need without using between in the filters but using TIMESTAMPADD OR TIMESTAMPDIFF For ex From: 12/01/2013 TO:    12/07/2013 so i want only those records to be shown (between those records as