Hotfix Application Best Practices

I have a twofer with regards to applying a hotfix. We deployed Config Manager 2012 RTM, upgraded to SP1, and then upgraded to R2. We have never applied a hotfix or CU before, so there is a bit of mysteriousness with regards to what the best practices are.
We are applying hotfix 2910552 to address slow imaging speeds. These questions are pretty basic but I wanted to get some informed opinions.
What is the best rollback procedure in the event of problems? I consider the hotifx a low risk but there is some concern from some others above me. We are planning on taking snapshots of the 3 site servers and the DB server in our hierarchy, but not the
DPs. Does this seem sound or is there a better technique?
How essential is it to update the clients in our environment in a timely fashion, or at all? I am going to have the packages created, but I did not know if I should deploy them immediately or not. Our server group has some concerns about applying the patch
to the config manager clients on our servers during our patching windows.
Any insight is appreciated. Thanks!
Bryan

There's more risk in taking snapshots as they are completely and explicitly unsupported and almost certainly would cause issues particularly since your DB is separate from your site server.
Rollback is simply uninstalling the hotfix. That hotfix addresses a very niche issue that only manifests itself during OSD, thus, it's only important roll it out to clients before you reimage them in a refresh scenario. An alternative rollback is simply
reinstalling the site and restoring your DB. This sounds painful and while it would take a bit of time, it's actually rather painless and works quite well.
This all begs the question though, you really should just do CU3. There are tons of other meaningful and impactful fixes in the CUs that will improve the overall stability and even functionality of the site and clients.
Concerns for applying hotfixes should be addressed by performing the update in a lab first. There is no other way to comfort risk averse folks except by showing them that it works. Additionally, you put forth evidence from the community that CU application
to ConfigMgr is almost always smooth and uneventful. Can something go wrong? Of course. I could get hit by lightning sitting in my chair but that doesn't mean I stay in bed all day.
Jason | http://blog.configmgrftw.com | @jasonsandys

Similar Messages

  • Routing error in Application Best Practice App (TDG) ?

    Hi All,
    i try Application Best Practices ...
    but if i select always another product ...
    the category and the Vendor are always the same. But if we check the json files there
    are different.
    Or should it not work in mock modus?
    regards
    Bernard

    Hi,
    I'm not talking about the add. if you select a product ....
    the Vendoraddress is always the same ... but in the mockdata json file is different !
    cheers
    Bernard

  • Slow starup of Java application - best practices for fine tuning JVM?

    We are having problems with a java application, which takes a long time to startup.
    In order to understand our question we better start with some background info. You will find the question(s) after that.
    Background:
    The setup is as follows:
    In a client-server solution we have a win xp, fat client running java 1.6.0.18.
    (Sun JRE). The fat client containt a lot of GUI, and connects to a server for DB access. Client machines are typical 1 to 3 years old (there are problems even on brand new machines). They have the client version of JRE - standard edition installed (Java SE 6 update 10 or better) Pretty much usual stuff so far.
    We have done a lot of profiling on the client code, and yes we have found parts of our own Java code that needs improving. we are all over this. Server side seems ok with good response times. So far, we havent found anything about shaky net connections or endless loops in the java client code or similiar.
    Still, things are not good. Starting the application takes a long time. too long.
    There are many complicating factors, but here is what we think we have observed:
    There is a problem with cold vs. varm starts of the application. Apparently, after a reboot of the client PC - things are really, really bad - and it takes (sometimes) up to 30-40 secs to start the application (until we arrive at the start GUI in our app).
    If we run our application, close it down, and then restart
    without rebooting, things are a lot better. It then usually takes
    something like 15 - 20 sec. which is "acceptable". Not good, but acceptable,
    Any ideas why?
    I have googled it, and some links seems to suggest that the reason could be disk cache. Where vital jar are already in disk cache on th warm start? Does that make any sense? Virus scanners presumable runs in both cases.
    People still think that 15 - 20 sec in start up on the warm start is an awful long time, even though there is a lot, a lot, of functionality in the application.
    We got a suggestion to use IBMs JRE - as it can do some tricks (not sure what) our SUN JRE cant do concerning the warm and cold start problem. But thats is not an option for us. And noone has come up with any really good suggestions with the SUN JRE so far?
    On the Java Quick Starter (JQS) -
    improves initial startup time for most java applets and applications.
    Which might be helpful? People on the internet seem more interested
    in uninstalling the thing than actually installing it though?
    And it seems very proprietary, where we cant give our Jar files to it?
    We could obviously try to "hide" the problem in some way and make it "seem" quicker. Where perceived performance can be just as good as actual performance. But it does seem a bad solution. So for the cold start we will probably try reading the jar files and thereby have them in disk cache before startup of our application. And see if that helps us.
    Still, ok the cold start is the real killer, but warm start isn't exactly wonderfull either.
    People have suggested that we read more on the JVM and performance.
    java.sun.com.javase/technologies/performance.jsp
    java.sun.com.docs/hotspot/gc5.0/gc_tuning_5.html
    the use of JVM flags "-Xms" "-Xmx" etc etc.
    And here comes the question .. da da ...
    Concerning various suggested reading material.
    it is very much appreciated - but we will like to ask people here - if it is possibe to get more specific pointers. to where the gold might be buried.
    I.e. in a an ideal world we would have time to read and understand all of these documents in depth. However, in this less than ideal world we are also doing a lot of very timeconsuming profiling in our own java code.
    E.g. java garbage collection is is a huge subject - and JVm settings also. Sure, in the end we will probably have to do this all very thoroughly. But for now we are hoping for some heuristics on what other people are doing when facing a problem like ours..?
    Young generation, large memory pages, garbage collection threads ect. all sounds interesting - but what would you start with?
    If you don't have info to decide - what kind of profiling would you be running and then adjust what JVM setting in your trials?
    In this pressed for time scenario. Ignorance is not bliss. But makes it hard to pinpoint the or those JVM parameters to adjust. So some good pointers from experienced JVM "configurators" will be much appreciated!
    Actually, If we can establish that finetuning of these parameters is a good idea, it will certainly also be much easier to allocate the time for doing so. - reading, experimenting etc. in our project.
    So, All in all , what kinds of performance improvements can we hope for? 5 out of 20 secs on the warm start? Or is it 10 % nitpicking? Whats the ball park figure for what we can hope to achieve here given our setup? What do you think based on above?
    Maybe someone out there have done some finetuning of JVM parameters in a similiar PC environments like, with similiar fat clients...? Finetuning so and so - gave 5 secs. So start your work with these one-two parameters?
    Something like that - some best practices? Thats what we are hoping for.
    best wishes
    -Simon

    Thanks for helpful answer from both you and kajbj.
    The app doesn't use shared network drives.
    What are you doing between main starts to get executed and the UI is
    displayed?
    Basicly, Calculating what to show in the UI. Accessing server - not so much, there are some reads from a cache, but the profiling doesnt indicate that it should be a problem. Sure, I could shift the startup time to some other slot, but sofar I havent found a place where the end-user wouldnt be annoyed.> Caching of something would seem most obvious. Normal VM stuff >seems unlikely. With profiling i basicly find that ''everything'' takes a lot longer in the cold start scenario. Some of our local java methods are going to be rewritten following our review. But what else can be tuned?You guys dont think the Java Quick Start approach, with more jars in disk cache will give something? And how should that be done/ what does people do?I.e. For the class loader I read something about
    1.Bootstrap class loader
    2.Extensions class loader
    3.System class loader
    and is wondering if this has something to do with the cold start problem?
    The extensions class loader loads the code in the extensions directories (<JAVA_HOME>/lib/ext
    So, we should move app classes to ext? Put them in one jar file? (We have many). Best practice about that?
    Otherwise it seems to me that it must be about finetuning the JVM?
    I imagine that it is a question about:
    1. the right heap size
    2. the right garbage collection scheme
    Googling heap size for XP
    CHE22 writes:
    You are right; -Xms1600M works well, but -Xms1700M bombs
    Thats one best practice or what?
    On garbage collection, there are numerous posts, and much "masters of Java black art" IMHO, And according to profiling GC is not really that much of a problem anyway? Still,
    Based on my description I was hoping for a short reply like "try setting these two parameters on your xp box, it worked for me" ...or something like that. With no takers on that one, I fear people are saying that there is nothing to be gained there?
    we read:
    [ -Xmx3800m -Xms3800m
    Configures a large Java heap to take advantage of the large memory system.
    -Xmn2g
    Configures a large heap for the young generation (which can be collected in parallel), again taking advantage of the large memory system. It helps prevent short lived objects from being prematurely promoted to the old generation, where garbage collection is more expensive.
    Unless you have problems with pauses, try granting as much memory as possible to the virtual machine. The default size (64MB) is often too small.
    Setting -Xms and -Xmx to the same value increases predictability by removing the most important sizing decision from the virtual machine. On the other hand, the virtual machine can't compensate if you make a poor choice.
    The -XX:+AggressiveHeap+ option inspects the machine resources (size of memory and number of processors) and attempts to set various parameters to be optimal for long-running, memory allocation-intensive jobs]
    So is Setting -Xms and -Xmx and -XX:AggressiveHeap
    best practice? What kind of performance improvement should we expect?
    Concerning JIT:
    I read this one
    [the impact of the JIT compiler is obvious on the graph: at startup the time taken is around 500us for the first few values, then quickly drops to 130us, before falling again to 70us, where it stays for 30 minutes,
    for this specific issue, I greatly improved my performances by configuring another VM argument: I set -XX:CompileThreshold=50]
    The size of the cache can be changed with
    -Xmaxjitcodesize
    This sounds like you should do something with JIT args, but reading
    // We disable the JIT during toolkit initialization. This
    // tends to touch lots of classes that aren't needed again
    // later and therefore JITing is counter-productiive.
    java.lang.Compiler.disable();
    However, finding
    the sweet spots for compilation thresholds has been tricky, so we're
    still experimenting with the recompilation policy. Work on it
    continues.
    sounds like there is no such straigth forward path, it all depends...
    Ok, its good, when
    [Small methods that can be more easily analyzed, optimized, and inlined where necessary (and not inlined where not necessary). Clearly delineated uses of data so that usage patterns and lifetimes are apparent. ]
    but when I read this:
    [The virtual machine is responsible for byte code execution, storage allocation, thread synchronization, etc. Running with the virtual machine are native code libraries that handle input and output through the operating system, especially graphics operations through the window system. Programs that spend significant portions of their time in those native code libraries will not see their performance on HotSpot improved as much as programs that spend most of their time executing byte codes.]
    I have the feeling that we might not able to improve performance that way?
    Any comments?
    otherwise i was wondering about
    -XX:CompileThreshold=50 -Xmaxjitcodesize (large, how large?)
    Somehow, we still feel that someone out there should have experienced similiar problems? But obviously there is no guarantee that the someone should surf by here!
    In c++ we used to just write everything ourselves. Here it does seem to be a question about the right use of other peoples stuff?
    Where you are kind of hoping for a shortcut, so you dont have to read endless number of documents, but can find a short document that actually addresses your problem ... well.
    -Simon
    Edited by: simoncpm on Mar 15, 2010 3:43 PM
    Edited by: simoncpm on Mar 15, 2010 3:53 PM

  • SOA composite application best practice

    Hi All,
    We are running SOA Suite 11g. One of my colleagues said that we should always have a mediator in our composite applications instead of just exposing the BPEL Process as a SOAP service. Is this a correct statement? If so why is that good practice. Still trying to grasp the concepts and best practices for SOA so any information is greatly appreciated.
    Thanks,
    S

    if you place a mediator in between them, you can change the bpel interface without having to change your composite soap interface
    that's one thing which could be a best practice

  • Large ADF Applications - Best Practice

    Hi
    We have a single ADF project (one model, one view/controller) with the following model components:
    68 AMs
    387 VOs
    175 EOs
    This project is ever expanding, and we are suffering some well-known performance problems when open JDeveloper or open the view/controller project.
    Are there any best-practice guidelines on how to structure your ADF projects?
    e.g. what is the maximum recommended number of AMs/VOs/EOs in a single project?
    We have kept everything in a single project after some advice from Oracle to help us to re-use common modules easily.
    We use JDeveloper v10.1.3 and use JHeadstart v10.1.3 SU 1 to generate our view/controller layer, using multiple faces-config files.
    Thanks
    Denis

    Hi Denis,
    We have exactly the same problem in expanding our application but we have a single AM and less EOs, VOs than you right now. There are some threads discussing this issue but I haven't found a complete and standard solution yet. The only thing I know is that almost every thing can be segmented in ADF like projects, application module, faces-config.xml, ...
    Another thing which is very important is that segmenting an application is a tradeoff, it has some advantaes but problems in SCM, security, ...
    S/\EE|)

  • Hotfix Management | Best Practices | WCS | J2EE environment

    Hi All,
    Trying to exploit some best practices around hotfix management in a J2EE environment. After some struggle, we managed to handle the tracking of individual hotfixes using one of our home-grown tools. However, the issue remains on how to manage the 'automated' build of these hotfixes, rather than doing the same manually, as we are currently doing.
    Suppose we need to hotfix a particular jar file on a production environment, I would need to understand how to build 'just' that particular jar. I understand we can label the related code (which in this case could be just a few java files). Suppose this jar contains 10 files out of which 2 files need to be hotfixed. The challenge is to come up with a build script which builds -
    - ONLY this jar
    - the jar with 8 old files and 2 new files.
    - the jar using whatever dependent jars are required.
    - the hotfix build script needs to be generic enough to handle the hotfix build of any jar in the system.
    Pointers, more in line with a WCS environment would be very much appreciated!
    Regards,
    Mrinal Mukherjee

    Moderator Action:
    This post has been moved from the SysAdmin Build & Release Engineering forum
    To the Java EE SDK forum, hopefully for closer topic alignment.
    @)O.P.
    I don't think device driver build/release engineering is what you were intending.
    Additionally, your partial post that was accidentally created as a duplicate to this one
    has been removed before it confuses anyone.

  • Web application best practice...

    I'm creating a web site with heaps of Flash stuff on it. I'd
    like it to load plenty of information from a database server and
    save plenty of information back again. It's not a vast amount of
    information by the way - i don't need to load video clips and
    things, but there will be loads of different flash resources on the
    site and so plenty of different occasions when there'll need to be
    some loading and saving going on.
    So to the question - what's best to use?
    1) LoadVars? (or XML Object) - I'm pegging this option
    together as I can see that loading some of the info in XML format
    from say an ASP page could be a good idea
    2) Web services? I don't know much about webservices, but
    plenty of big companies seem to be offering them out - google,
    yahoo and flickr for example (- but dya reckon they use them
    themselves?) I realise i'd have to learn something a bit different
    like .net (so maybe VB.net or c# or something any opinions about
    which to go for there too??) or maybe perl or python or
    something...
    3) Flash Remoting? I have bad feelings about this one - i
    don't want to pay for extra stuff if it doesn't do much for me -
    and i understand that with this one i'll still need my server side
    application anyway - so it makes me wonder what the point is? And
    I've also heard that the latest flash version doesn't really
    support it very welll.....
    So does anyone have any thoughts? I'd love to hear some
    opinions... I DO care about performance and I DO care about how
    fussy and complicated the programming will be. My gut reaction is
    that web services are the way to go, because to my naive mind they
    seem like they'll be simpler to code and potentially have less bugs
    and therefore be more reliable. But then I'm not trusting my naive
    mind, I'm asking you clever forum types instead!
    Best Wishes,
    Neil

    I don't think I can offer any definitive advice. Partly
    because it should be based on what your requirements are longer
    term I guess, and (probably mostly) because I don't know that much
    about it myself. I'll share what little I know.
    For flash, in terms of my understanding remoting is the
    fastest/most efficient means of communicating with a service you
    expose on your server , and I'd assume its more scalable as an
    approach longer term. There's the Adobe versions with Coldfusion
    and, I think .net, but there are open source options e.g. AMFPHP as
    well. I think that CS3/as3 will ultimately have no problems with
    remoting - I read somewhere that although the remoting components
    are not there now, flash cs3 can use flex non-visual components and
    also somewhere else that the remoting components are not necessary
    for remoting to be possible (but I guess they make it easier). I
    have no idea whether either is true, but I'd be surprised if long
    term flash cs3 can't do remoting as well as previous versions. The
    amf encoding method that is used for remoting is more readily
    accessible in as3 I think, so I can't see it being a problem.
    There's another framework for a type of remoting based on
    what I assume is some form of XML serialisation called XMLPC , but
    I don't know much about it.
    Both flash remoting and XMLRPC give you the ability to not
    worry about how the data is translated and transferred between
    flash client and server. You just deal with it in the native data
    structures in a similar way to making function/method calls
    locally. LoadVars is great if you just want to transfer name value
    pairs...eg sets of variables, XML is great for transferring
    structured representation of data. I've become more accustomed to
    working with XML as it is and using it as a the basis for my data
    in flash when I need to use it, which saves having customer
    encoding/decoding functions to change the way its dealt with
    locally. This is not always possible or convenient... but with
    XPathAPI in as2 it is a little easier, and I'm looking forward to
    using the new CS3 xml representation.
    LoadVars and XML are also great and if you're starting out,
    and are probably essential in terms of having them as an option
    anyhow so may not be a bad option to begin with just so you're
    familiar with them. I would suggest that you always know how to
    work with these approaches and maybe they'll be enough for you for
    now anyway .
    I know nothing about SOAP or any other type of webservice.
    Don't know if that helps.

  • Schema Design for Worklist Application - best practice?

    Hello,
    we are designing the Schema for a workflow application now. I'm wondering what kind of XML Schema would be best suited for the JSP generation of the Workflow Wizard.
    So far I've found out with some tests (please correct me if I'm wrong):
    - Only elements will be mapped to JSP fields, not attributes
    - If elements have single-letter name, the field label will be eliminated totally in JSP (bug?!)
    - For EVERY parent node, an HTML table is generated in the JSP containing all the simple nodes in the parent. If a parent node contains another parent node, both tables will be generated on the same level.
    And I haven't found any way to create drop-down list or checkbox/radiobuttons out of the XSD definition (enumeration as element type).
    I would really appreciate it if someone could share some experience in this area, many thanks in advance!
    regards
    ZHU Jia

    Hello,
    we are designing the Schema for a workflow application now. I'm wondering what kind of XML Schema would be best suited for the JSP generation of the Workflow Wizard.
    So far I've found out with some tests (please correct me if I'm wrong):
    - Only elements will be mapped to JSP fields, not attributes
    - If elements have single-letter name, the field label will be eliminated totally in JSP (bug?!)
    - For EVERY parent node, an HTML table is generated in the JSP containing all the simple nodes in the parent. If a parent node contains another parent node, both tables will be generated on the same level.
    And I haven't found any way to create drop-down list or checkbox/radiobuttons out of the XSD definition (enumeration as element type).
    I would really appreciate it if someone could share some experience in this area, many thanks in advance!
    regards
    ZHU Jia

  • MCX to Configure Client Dock Applications best Practice?

    I want to use WGM preferences to manage which applications show up on a user's dock when they login. The server does not have the same applications installed as the client machines thus do not show up as an available option to add using WGM.
    _The Question:_ *Is is bizarre to install client applications on the server so it may be available to to add to a user's dock preference in WGM?*
    Currently I'm using changes I've made to the default user template as a work around to getting the dock configured to our needs. Not my favorite way to administer 6 labs, but functional right now. If it's okay, I was thinking about installing all the software we use on our client machines on the server.
    Is there a better way of managing the dock for clients in a multiple lab environment?

    Run the WGM application from a workstation that has the same applications installed in the same locations as on your client workstations. Do not make changes to the user templates on the server or the workstations. When setting the preferences for the user's dock, do not select the checkbox, 'Merge with User's Dock', as that combines the customized settings you create with the dock settings from the user template.

  • Best-practice on versioning a soa suite-application

    Hi everyone,
    I recently organised a seminar for customers concerning the Soa Suite Stack and one of the interesting questions asked that day was a versioning-question.
    Let's say we've build a bpel/esb application interacting with different external and internal webservices and we've deployed this application to our production environment and we need to change an internal web service.
    How can we add versioning to this heterogenous system in a consistent way? I know you can tell esb which version of the bpel process it needs to use, but what about the custom and external webservices that we've integrated with?
    My 2 cents: You need to add a versioning-tag to you custom web services that you need to manage yourself, and use this versioning tag in the services your integrating with.
    Could somebody point me out what best practice is, or what Oracle's development team is working out regarding versioning systems for SOA-applications?

    Marc,
    Are you saying versioning isn't supported in ESB now? I thought that ESB already uses the versioning tag from bpel when you're integrating bpel and esb?
    During the development of my demo I've seen that the version-tag was used when invoking the bpel process through a soa service.

  • Best Practice to Setup an application to work with both oracle and db2 db

    Hi,
    We have an application that currently supports both oracle and db2 databases . It is currently using JPA with eclipselink as backend mechanism and we want to move to ADFBc as our backend . So what is best practice to do this?
    I came across an old post in https://groups.google.com/forum/#!topic/adf-methodology/UlJZSTu14Io that states to create two different model projects to support oracle and db2 .
    Is this still the standard ? Is there a way that we could work around rather than creating multiple projects?
    How do i get the view controller to work with multiple model projects if this is the case?
    Thank you.

    Thanks for the response .
    The problem is i would have the same schema on both the databases (both in oracle and db2) .
    I don't see a scenario where i want both the application model projects at the same time . What i meant is , Application will either be deployed with Oracle DB or DB2 but not with both on a production environment .
    So is there a way where i just change the connection parameters alone rather having two different models ?
    If i have to use two model projects ,  would it be possible say i built the view controller for Oracle , and use it for DB2 if i make sure the BC objects names are similar between model projects and switch just the model jar based on the deployment environment ?
    -Sam

  • Best Practice - Bounded Task Flows, Regions and Nested Application Modules

    Using JDev 11.1.1.3; understand that it's generally considered good practice to just have 1 root application module servicing model content / services for each page. In our application, we've used a number of bounded task flows and page fragments deployed as af:region's into pages as either a) views targeted in page-flow navigation, b) tab panel content inside a regular jspx, or c) af:popup / af:dialog content. As it stands, we've not engaged nesting of the application modules for this embedded region content, so these regions are no doubt instantiating new AM's if/when invoked. Should the AM's servicing these embedded regions be deployed nested within the root AM's, and then if so, does this change the way that the jsff / fragment content is actually developed (currently as per any other jspx using the DataControl pallete). Or are the best-practice directives talking about a page as being the design-time / declarative composition of content rather than the run-time aggregation of page + fragments ... in which case the fact that our embedded fragments are not using nested AM's is unlikely to concern.
    Thanks,

    Probably a better question for the ADF EMG: http://groups.google.com/group/adf-methodology?hl=en
    CM.

  • Best Practice to use a single root Application Module?

    I was reading in another thread that it may be a good idea to have all application modules nested within a single root application module (AM) so that there is only 1 session maintained for the root AM, versus an individual session for each AM. Is this a best practice? If yes, should the root AM be a skeleton AM (minimal customer service methods), or, should you select the most heavily used AM and nest the other AM's underneath of it?
    In my case, I currenlty have 2 AM's (and will have 3 AM's in the future) each representing a different set of use cases withn the application (i.e., one supports users searches / shopping cart-like functionality, and the second supports an enrollment process.) It could be the case that a user only accesses pages on the web site to do searches (first AM), or only to do enrollment (2nd AM), or, they may access pages of the site that access both AM's. Right now I have 2 separate AM's that are not nested. Should I nest the AM's and define a root AM?
    thanks

    Hi javaX
    The main physical effect of having 2 separate AMs is that they have their own transactions with the database, and presumably sit in the application module pool as their own instances consuming connections from the connection pool. Alternatively a single root AM with 2 nested AMs share a single transaction through the root AM; only the root AM controls the transaction in this scenario.
    As such it's a question of do you need separate transactions or will one suffice?
    How you group your EOs/VOs etc within the AMs is up to you, but usually falls into logical groups such as you have done. If a single transaction is fine, instead of creating multiple AMs, you could instead just create logical package structures instead. Neither method is right or wrong, they're just different ways of structuring your application.
    When you create a nested AM structure, within your ViewController project in the Data Control Palette you'll actually see 3 data controls mapped to each AM. In addition expanding the root AM data control, you'll see the nested AMs again. Create a dummy project with a nested AM structure and you'll see what I mean.
    If you base your page definitions on anything from the root AM and it's children in the Data Control Palette, this will work on the root AM's transaction.
    If you base your page definitions on something from one of the other AM data controls that isn't inside the main root AM in the Data Control Palette, instead of using the root AM's transaction, the separate child AM will be treated as root AM and will have its own transaction.
    The thing to care of when developing web pages is to consistently use the AM and it's nested AMs, or the child AMs directly with their separate transactions, otherwise it might cause a bit of a nightmare debugging situation later on when the same application is locking and blocking on the same records from 2 separate AM transactions.
    Hope this helps.
    CM.

  • BC4J ApplicationModule - best practice in Stateful web application?

    When writing a stateful web application that uses BC4J framework as the model, what is considered best practice in using the Application Module. Is it okay to store an AM instance in a HttpSession, or should we opt for the features explained in the BC4J Pooling samples, which uses the SessionCookie interface?
    Tips/Tricks/Pitfalls information welcome
    Thx,

    When writing a stateful web application that uses BC4J framework as the model, what is considered best practice in
    using the Application Module. Is it okay to store an AM instance in a HttpSession, or should we opt for the features
    explained in the BC4J Pooling samples, which uses the SessionCookie interface? Best practice is to store the SessionCookie (an ApplicationModule handle) as demonstrated in the pooling sample.
    This will allow many advantages including scalable state management support, timeout support, and
    failover / clustering support.
    Caching the ApplicationModule directly can be dangerous because:
    1. The AM is not serializable which could result in serialization exceptions if the servlet container were distributable.
    2. The AM does not responsd to timeout which could result in memory leaks if the AM is not explicitly returned to the
    pool at the end of each request.
    3. For stateful applications the memory consumed by each AM could be significant. Even if the AM were correctly
    released to the pool upon session timeout it would still have consumed that memory up to that point. Using the
    SessionCookie along with state managed release allows for scalable state management.
    Tips/Tricks/Pitfalls information welcome
    Thx,

  • Best practice to Load FX rates to Rate Application in SAP BPC 7.5 NW

    Hi,
    What is the best practice/approach to load FX rates to Rate Application in SAP BPC 7.5 NW? Is it from ECC or BW?
    Thanks,
    Rushi

    I have seen both cases.
    1) Rates coming as a flat file from external system, treasury department, and ECC and BPC both loads in to respective systems in batch.
    2) ECC pushes rate info to BW and data in turn get pushed to BPC along with other scheduled process chains.
    How are rates entering your ECC?
    Shilpa

Maybe you are looking for

  • ICal hides appointments on a given month

    Although all my appointments show correctly for all 12 months of the year on my iPod, in iCal (MacBook Pro) the month of October for every year, past and future, is blank (and sometimes doesn't even show--I go from September directly to November on a

  • Windows 7 Ultimate Build 7600 This copy of Windows is not genuine

    Hello, I have a Lenovo desktop that I installed Windows 7 Ultimate on last fall. I obtained my legal copy of Windows 7 from Tiger Direct as a promotion that was giving away copies of Windows 7. I still have the envelope and installation cd, the insta

  • E mail not retained on server

    My partner has Iphone 4 and e mails received on her phone are not being received on her PC in MS Outlook.  I checked her settings (mail & contacts, account, advanced, incoming settings) and she does not have the 'delete messages from server' option. 

  • 9.0.3 - setting font for printing?

    (9.0.3 Preview) In the prefences for printing, the only option for font name is "DialogInput" and the only options for font size are 10,12. I hope this is bug. I'd like to be able to print with a different font, esp. 8pt.

  • CS 2, speziell InDesign

    Hallo. InDesign zeigte plötzlich einen Fehler beim Start: "The installer seems to have written the wrong AUM application ID" Danach habe ich InDesign einzeln neu installiert, Fehlermeldung blieb. Seltsamer Weise war InDesign in Englisch trotz Deutsch