Client variables storage in production environment?

Right now we are using Registry to store client variables in production environment, will changing it to Database increase the performance? or  what i heard from my colleague is that  In production environment , using Database for client storage is not advisable! how true is his statement.

His statement is completely wrong.  The docs talk about this here: http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec0c35c -7fd5.html
Specifically, read this paragraph from that reference:
Choosing a client variable storage method
By default, ColdFusion stores client variables in the Registry. In most cases, however, it is more appropriate to store the information as client cookies or in a SQL database.
The ColdFusion Administrator Client Variables page controls the default client variable location. You can override the default location by specifying a This.clientStorage value in Application.cfc or by setting the clientStorage attribute in thecfapplication tag.
You can specify the following values for the client storage method:
Registry (default). Client variables are stored under the key HKEY_LOCAL_MACHINE\ SOFTWARE\Macromedia\ColdFusion\CurrentVersion\Clients.
Name of a data source configured in ColdFusion Administrator
Cookie
Generally, it is most efficient to store client variables in a database. Although the Registry option is the default, the Registry has significant limitations for client data storage. The Registry cannot be used in clustered systems and its use for client variables on UNIX is not supported in ColdFusion.

Similar Messages

  • Client variable storage setting

    Here is a little question hope someone can shine some light
    on it.
    Right now I am using the database as the client variable
    storage in CF (with options of Purge data for 1 day and Disable
    global client variable updates ). But it gives the database server
    a really heavy load (50-90% CPU usage average) and I believe this
    is the bottleneck of the time it takes CF serving the pages. I was
    wondering that is this good idea to put the client variable storage
    back to the Registry or cookie (for a quick fix until we upgrade
    the servers in 4 weeks)? We have average of 46000 page view/day and
    9000 visits/day.
    CFMX 6.11 apply the Hot fix for client variables already
    Win2003
    P4 with 2gb ram
    Thanks

    It is a bottleneck. But on 46k pages views with that high of
    a CPU load, you must really have a very undersized db server. We're
    doing 3 million page views/day and about 65% of those use client
    variables and it doesn't even phase our db server.
    Putting them into a cookie shoudl work just fine. I wouldn't
    use the registry setting. It'll make a mess of your registry.
    You should consider session variables where possible. Those
    stay in server memory.

  • Client variable database repository exception handling

    We have recently had 2 incidents where client variable
    database storage appears to have failed in our clustered
    environment. We have 2 servers that share a sybase 12.5.2 client
    variable repository (CDATA/CGLOBAL). The problem seems to be
    occuring when a table that the application uses gets blocked by an
    unrelated application. When this happens, client variable storage
    seems to fail - the 2 servers apparently use whatever client
    variables they have in memory rather than getting the values from
    CDATA.
    There are no exceptions thrown, the application continues to
    function normally except that each server has it's own copy of the
    client variables. When we kill the process that has the table
    locked up, the servers start using CDATA normally again.
    The page that is getting blocked by the external process does
    not update any client variables, but it does read them. The
    inconsistent client variable problem occurs on other pages, not the
    one being blocked.
    I was able to sort of recreate the problem. I found that if I
    renamed CDATA, no error is reported to the user. The database
    exception (table not found) is logged, but not thrown on the page.
    To the user the application appears to function normally. So this
    demonstrates that updates to CDATA which result in database
    exceptions fail silently and are not thrown to the page.
    Has anyone else experienced silent exceptions in CDATA
    updates? Are there any workarounds for this behavior? Our
    application relies on client variables being consistent across
    servers and really need for exceptions to be thrown to the page so
    that the user is aware.
    Additional Info:
    CFMX 7.0.2
    Windows Server 2003 SP1
    database is sybase 12.5.2

    This is one of the "classic" design problems in this kind of architecture. And, unfortunately, the answer is "it depends on how you think you need to handle it." And I'm sure there are plenty of "gurus" that will tell you one way or another is the only way to do it.
    I'll be more honest: I'll give you a couple of personal suggestions, based on experience in this architecture. These are suggestions - you may do with them what you will. I will not say this is the best, most correct, or even remotely relevant to what you're doing.
    If it's simple data validation for "typing" (e.g. String, number, Date, etc.), that is taken care of when you attempt to stuff in the information into the appropriate DTO. If it's more "sophisticated" than that (must be in a certain range, etc.), that particular checking should probably be delegated from your Controller to a helper class. That not only saves the "expense" of transmitting the information back and forth across the wire, it's "faster" to the end user so say "Ooopsie" by redirecting back to the form right then. Basically the same thing if the types are wrong.
    That only leaves the "big" problems in the business layer (EJBs), where you have to deal with concurrency, database failures, etc. Generally these kinds of exceptions are thrown back to to the Controller in one of two forms:
    1) a sublass of RuntimeException, which signals that some Very Bad Things have happened in your container. EJBException is one like that and you can see where it's being thrown from.
    2) a subclass of Exception, also called "application exceptions." They are usually something like a "duplicate record" or a validation-like error (which you mentioned) like a missing field. They're used as a signal to a failure in the logic, not the container. That way you have to decide at what layer of your architecture they should be handled and/or passed on to the next.

  • How to use connection pools in production environment

    Hai
    We are using Statless Session beans which will call bean managed entity beans
    as a developer we completed the first phase of our project successful but when
    comming to the production environment they(Higher authoritites of the company)
    are asking abt the connection pools. Suppose if my wlserver5.1 has 100 hits per
    a second how many connection pools i need to put in the production envirornment
    and also is it the right way to increase the connectionpools depends upon the
    clients hits????. Can anybody help me regarding this It is very urgent for us.
    Cheers Kiran Nallam

    Hi Aravind,
    It can be used only for calculation kinda "minimum size".
    Nothing can prevent a developer from writing something
    like this:
    Connection con1 = ds.getConnection();
    Connection con2 = ds.getConnection();
    Connection con3 = ds.getConnection();
    Regards,
    Slava Imeshev
    "Aravind Krishnasamy" <[email protected]> wrote in message news:3bfa85f6
    You can fix the size of the weblogic connection pool depending on yourexecute
    thread count value. For example the default value of execute thread countvalue
    is 15. So at a given point of time you cannot use more then 15 databaseconnection.
    Database connection pool size should be equal to or less then the size ofexecute
    thread count
    "Slava Imeshev" <[email protected]> wrote:
    Hi Kiran,
    It's hard to provide exact dependence between number of hits
    and actual number of consumed connections because it's a highly
    variable distributed environment. But the general approach is
    simple - before rolling out your application, make sure you
    tested it under simulated peak load. Your connection pool should
    have enough connections to serve peak load. Without such a testing
    you will never know whether your app scales or not.
    Regards,
    Slava Imeshev
    "Kiran" <[email protected]> wrote in message
    news:3bf9d676$[email protected]..
    Hai
    We are using Statless Session beans which will call bean managed entitybeans
    as a developer we completed the first phase of our project successfulbut
    when
    comming to the production environment they(Higher authoritites of thecompany)
    are asking abt the connection pools. Suppose if my wlserver5.1 has100
    hits per
    a second how many connection pools i need to put in the productionenvirornment
    and also is it the right way to increase the connectionpools dependsupon
    the
    clients hits????. Can anybody help me regarding this It is very urgentfor
    us.
    Cheers Kiran Nallam

  • Best practice for a deplomyent (EAR containing WAR/EJB) in a productive environment

    Hi there,
    I'm looking for some hints regarding to the best practice deployment in a productive
    environment (currently we are not using a WLS-cluster);
    We are using ANT for buildung, packaging and (dynamic) deployment (via weblogic.Deployer)
    on the development environment and this works fine (in the meantime);
    For my point of view, I would like to prefere this kind of Deploment not only
    for the development, also for the productive system.
    But I found some hints in some books, and this guys prefere the static deployment
    for the p-system.
    My question now:
    Could anybody provide me with some links to some whitepapers regarding best practice
    for a deployment into a p-system ??
    What is your experiance with the new two-phase-deploment coming up with WLS 7.0
    Is it really a good idea to use the static deployment (what is the advantage of
    this kind of deployment ???
    THX in advanced
    -Martin

    Hi Siva,
    What best practise are you looking for ? If you can be specific on your question we could provide appropriate response.
    From my basis experience some of the best practices.
    1) Productive landscape should have high availability to business. For this you may setup DR or HA or both.
    2) It should have backup configured for which restore has been already tested
    3) It should have all the monitoring setup viz application, OS and DB
    4) Productive client should not be modifiable
    5) Users in Production landscape should have appropriate authorization based on SOD. There should not be any SOD conflicts
    6) Transport to Production should be highly controlled. Any transport to Production should be moved only with appropriate Change Board approvals.
    7) Relevant Database and OS security parameters should be tested before golive and enabled
    8) Pre-Golive , Post Golive should have been performed on Production system
    9) EWA should be configured atleast for Production system
    10) Production system availability using DR should have been tested
    Hope this helps.
    Regards,
    Deepak Kori

  • Best Practice for Production environment

    Hello everyone,
    can someone share the best practice for a production environment? or is there a SAP standard best practice to follow in a Production landscape?
    i understand there are Best practices available for Implementation , Migration and upgrade. But, i was unable to find one for productive landscape
    thanks.

    Hi Siva,
    What best practise are you looking for ? If you can be specific on your question we could provide appropriate response.
    From my basis experience some of the best practices.
    1) Productive landscape should have high availability to business. For this you may setup DR or HA or both.
    2) It should have backup configured for which restore has been already tested
    3) It should have all the monitoring setup viz application, OS and DB
    4) Productive client should not be modifiable
    5) Users in Production landscape should have appropriate authorization based on SOD. There should not be any SOD conflicts
    6) Transport to Production should be highly controlled. Any transport to Production should be moved only with appropriate Change Board approvals.
    7) Relevant Database and OS security parameters should be tested before golive and enabled
    8) Pre-Golive , Post Golive should have been performed on Production system
    9) EWA should be configured atleast for Production system
    10) Production system availability using DR should have been tested
    Hope this helps.
    Regards,
    Deepak Kori

  • Production environment, error in BPELConsole

    Hi there,
    I had installed, following step by step the installation guides, a production environment on three linux boxes RHE3; one for the DB v10g and in the others two an AS whit j2ee and web cache and obviously BpelPM. I do not installed WebCache AS component because an Oracle guy told me that bpel go crazy if webcache runs.
    I can connect BPELConsole, but after the login I get this error message:
    ==========================================================
    ORABPEL-04001
    Cannot find instances.
    An attempt to fetch the instances using the where condition " ( ci_state = 1 OR ci_state = 2 OR ci_state = 3 ) order by ci_modify_date desc " from the datastore has failed. The exception reported is: ORA-00942: table or view does not exist
    Please check that the machine hosting the datasource is physically connected to the network. Otherwise, check that the datasource connection parameters (user/password) is currently valid.
    sql statement: Select * from ( select a.*, ROWNUM rnum From ( SELECT * FROM admin_list_ci WHERE ci_domain_ref = 0 AND ( ci_state = 1 OR ci_state = 2 OR ci_state = 3 ) order by ci_modify_date desc ) a Where ROWNUM <= 20 ) Where rnum >= 0
    at com.collaxa.cube.engine.data.AdminFinder.getXInstanceCount(AdminFinder.java:583)
         at com.collaxa.cube.engine.data.AdminFinder.getOpenInstanceCount(AdminFinder.java:529)
         at com.collaxa.cube.ejb.impl.BPELProcessManagerBean.getOpenInstanceCount(BPELProcessManagerBean.java:117)
         at IBPELProcessManagerBean_StatelessSessionBeanWrapper46.getOpenInstanceCount(IBPELProcessManagerBean_StatelessSessionBeanWrapper46.java:955)
         at com.oracle.bpel.client.BPELProcessHandle.getOpenInstanceCount(BPELProcessHandle.java:519)
         at displayProcess.jspService(_displayProcess.java:508)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
         at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:220)
         at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:152)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:798)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:211)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:127)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
         at java.lang.Thread.run(Thread.java:534)
    ==========================================================
    Can Anyone help me?
    Thanks in advance
    Stefano
    null

    Hi,
    as you know, your help was very useful.
    Maybe is better to add the whole path of file that have to be changed
    (only for beginners like me)
    IRCA/integration/bpelpm/admin/sql/bpmuser.sql
    This is true for DB version 10g release 2 or upper. For the previous versions the original string is enough.
    Thanks again,
    Stefano.

  • Adf security misbehaving in production environment

    Hi all,
    I am using jdev 11.1.2.2 and weblogic 10.3.6
    I have implemented adf security from based authentication in my web application and i have used sql authenticator for authentication.
    In my integrated WLS everything works fine . but in the production WLS what is happening is when the user access a Protected Page without login it navigates to the protected page instead of navigating him to the login page. In the integrated WLS this happens normally .
    Has anyone faced this issue before ? What can be wrong ?
    I have added my web.xml
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
             version="2.5">
      <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
        <param-value>false</param-value>
      </context-param>
    <session-config>
        <session-timeout>5</session-timeout>
      </session-config>
      <context-param>
        <description>If this parameter is true, there will be an automatic check of the modification date of your JSPs, and saved state will be discarded when JSP's change. It will also automatically check if your skinning css files have changed without you having to restart the server. This makes development easier, but adds overhead. For this reason this parameter should be set to false when your application is deployed.</description>
        <param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
        <param-value>false</param-value>
      </context-param>
      <context-param>
        <param-name>oracle.adf.view.rich.SUPPRESS_IDS</param-name>
        <param-value>auto</param-value>
      </context-param>
      <context-param>
        <description>Whether the 'Generated by...' comment at the bottom of ADF Faces HTML pages should contain version number information.</description>
        <param-name>oracle.adf.view.rich.versionString.HIDDEN</param-name>
        <param-value>false</param-value>
      </context-param>
      <context-param>
        <description>Security precaution to prevent clickjacking: bust frames if the ancestor window domain(protocol, host, and port) and the frame domain are different. Another options for this parameter are always and never.</description>
        <param-name>org.apache.myfaces.trinidad.security.FRAME_BUSTING</param-name>
        <param-value>differentOrigin</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.FACELETS_VIEW_MAPPINGS</param-name>
        <param-value>*.jsf;*.xhtml</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.FACELETS_SKIP_XML_INSTRUCTIONS</param-name>
        <param-value>true</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
        <param-value>true</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.FACELETS_DECORATORS</param-name>
        <param-value>oracle.adfinternal.view.faces.facelets.rich.AdfTagDecorator</param-value>
      </context-param>
      <context-param>
        <param-name>javax.faces.FACELETS_RESOURCE_RESOLVER</param-name>
        <param-value>oracle.adfinternal.view.faces.facelets.rich.AdfFaceletsResourceResolver</param-value>
      </context-param>
      <filter>
        <filter-name>JpsFilter</filter-name>
        <filter-class>oracle.security.jps.ee.http.JpsFilter</filter-class>
        <init-param>
          <param-name>enable.anonymous</param-name>
          <param-value>true</param-value>
        </init-param>
        <init-param>
          <param-name>remove.anonymous.role</param-name>
          <param-value>false</param-value>
        </init-param>
      </filter>
      <filter>
        <filter-name>trinidad</filter-name>
        <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
      </filter>
      <filter>
        <filter-name>ADFLibraryFilter</filter-name>
        <filter-class>oracle.adf.library.webapp.LibraryFilter</filter-class>
      </filter>
      <filter>
        <filter-name>adfBindings</filter-name>
        <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
      </filter>
      <filter-mapping>
        <filter-name>JpsFilter</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>INCLUDE</dispatcher>
      </filter-mapping>
      <filter-mapping>
        <filter-name>trinidad</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>ERROR</dispatcher>
      </filter-mapping>
      <filter-mapping>
        <filter-name>ADFLibraryFilter</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
      </filter-mapping>
      <filter-mapping>
        <filter-name>adfBindings</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
      </filter-mapping>
      <filter-mapping>
        <filter-name>adfBindings</filter-name>
        <servlet-name>adfAuthentication</servlet-name>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
      </filter-mapping>
      <listener>
        <listener-class>oracle.adf.mbean.share.connection.ADFConnectionLifeCycleCallBack</listener-class>
      </listener>
      <listener>
        <listener-class>oracle.adf.mbean.share.config.ADFConfigLifeCycleCallBack</listener-class>
      </listener>
      <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet>
        <servlet-name>resources</servlet-name>
        <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>BIGRAPHSERVLET</servlet-name>
        <servlet-class>oracle.adf.view.faces.bi.webapp.GraphServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>BIGAUGESERVLET</servlet-name>
        <servlet-class>oracle.adf.view.faces.bi.webapp.GaugeServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>MapProxyServlet</servlet-name>
        <servlet-class>oracle.adf.view.faces.bi.webapp.MapProxyServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>adflibResources</servlet-name>
        <servlet-class>oracle.adf.library.webapp.ResourceServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>adfAuthentication</servlet-name>
        <servlet-class>oracle.adf.share.security.authentication.AuthenticationServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>resources</servlet-name>
        <url-pattern>/adf/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>resources</servlet-name>
        <url-pattern>/afr/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>BIGRAPHSERVLET</servlet-name>
        <url-pattern>/servlet/GraphServlet/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>BIGAUGESERVLET</servlet-name>
        <url-pattern>/servlet/GaugeServlet/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>MapProxyServlet</servlet-name>
        <url-pattern>/mapproxy/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>resources</servlet-name>
        <url-pattern>/bi/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>adflibResources</servlet-name>
        <url-pattern>/adflib/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>adfAuthentication</servlet-name>
        <url-pattern>/adfAuthentication</url-pattern>
      </servlet-mapping>
      <mime-mapping>
        <extension>swf</extension>
        <mime-type>application/x-shockwave-flash</mime-type>
      </mime-mapping>
      <mime-mapping>
        <extension>amf</extension>
        <mime-type>application/x-amf</mime-type>
      </mime-mapping>
      <security-constraint>
      <web-resource-collection>
        <web-resource-name>Allowed ADF Resources</web-resource-name>
        <url-pattern>/adf/*</url-pattern>
        <url-pattern>/afr/*</url-pattern>
        <url-pattern>/bi/*</url-pattern>
      </web-resource-collection>
    </security-constraint>
      <security-constraint>
        <web-resource-collection>
          <web-resource-name>adfAuthentication</web-resource-name>
          <url-pattern>/adfAuthentication</url-pattern>
        </web-resource-collection>
        <auth-constraint>
          <role-name>valid-users</role-name>
        </auth-constraint>
      </security-constraint>
      <login-config>
        <auth-method>FORM</auth-method>
        <form-login-config>
          <form-login-page>/faces/login</form-login-page>
          <form-error-page>/faces/login</form-error-page>
        </form-login-config>
      </login-config>
      <security-role>
        <role-name>valid-users</role-name>
      </security-role>
    </web-app>Thanks,
    Rakesh

    Hi Rakesh,
    Make sure you have migrated the policy store to the production server. When Weblogic Server is running in production mode, automatic credential overwrite is not allowed. From the developer's guide:
    When the target server is configured for production mode, you typically handle the migration task outside of JDeveloper using tools like Oracle Enterprise Manager. For details about using tools outside of JDeveloper to migrate the policy store to the domain-level in a production environment, see the Oracle Containers for J2EE Security Guide. Note that Oracle WebLogic Server running in production mode does not support the overwriting of system credentials under any circumstances.http://docs.oracle.com/cd/E26098_01/web.1112/e16182/adding_security.htm#CDDGFDFH
    HTH,
    Joonas

  • MSDN and Production Environment (again)

    I started this on another forum before I found this one, but this seems a more suitable place.
    The definition of "production environment" seems rather odd. In some responses on this forum it appears to refer to "soft" systems whereas the latest MSDN licence refers to environment and physical kit.
    Below is a conversation I had over email with someone from MSDN and I find the whole thing utterly bizarre. I cannot for the life of me see how this helps anyone apart from MS being able to charge for non-production software. It renders having a powerful desktop
    for local lab experimentation pointless as you're not allowed to install anything and effectively doubles the hardware cost to small companies if they have to buy a separate server for any testing work (yes, best practice and all that, but budgets...) or pay
    out for a Windows Datacenter licence.
    Question:
    “If a physical machine running one or more virtual machines is used entirely for development and test, then the operating system used on the physical host system can be MSDN software. However, if the physical machine or any of the VMs hosted on that physical
    system are used for other purposes, then both the operating system within the VM and the operating system for the physical host must be licensed separately.”
    Is this actually saying that if I have a physical server licenced with a purchased (not MSDN) Server 2012 R2, running Hyper-V with, say, a production file server VM on it,  that ALL Windows VMs on that machine must have purchased licences even if they
    are only for development & testing purposes?
    Is this saying that all production and development Windows VMs must be only completely separate hardware, cluster, SAN, etc otherwise you must pay for full licences for the VMs?
    Or does it just mean that the bare metal licence (plus any additional ones required for running further production VMs) must be purchased if the VMs are a mix of production and development?
    Answer:
    We kindly inform that any products licensed under the developer tools model (e.g. SQL/BizTalk developer and/or MSDN) must be installed on their own separate physical hardware.
    You are not allowed to run test or development products on a server where production workloads are running at the same time.  Kindly run your developer software on a device/host that is dedicated to testing and development.
    Explanation:
    The Product Use Rights (PUR) say that the developer software is not licensed for use in a production environment. Even if the PUR does not have a separate definition of production environment, a production environment is a set of resources for network, physically
    dedicated hardware and software to provide "live" service.  If the intent was to say that the same physical server could be used for both development and production - it would say "not licensed for use in a production OSE," instead
    it says environment.
    See current PUR, page  51:
    Developer Tools (User License)
    You have the rights below for each license you acquire.
    #      You must assign each license to a single user.
    #      Each Licensed User may run an unlimited number of copies of the Developer Tools software and any prior version on any device.
    #      The Licensed User may use the software for evaluation and to design, develop, test, and demonstrate your programs. These rights include the use of the software to simulate an end user environment to diagnose issues related to your programs.
    #      The software is not licensed for use in a production environment. #      Additional rights provided in license terms included with the software are additive to these product use rights, provided that there is no conflict
    with these product use rights, except for superseding use terms outlined below.
    Question:
    Classifying an entire physical infrastructure as "production" in these days of virtualisation and shared storage really does not make any sense at all. Not using the software for production purposes makes perfect sense, but not being able to locate
    it alongside production OS installs is mad. Does this only apply to the server running the VM (CPU and RAM)? If the VHDX is hosted on shared SAN storage does the SAN have to be dedicated to non-production storage?
    Answer:
    We kindly inform that after double-checking the case we would like to confirm the development software cannot be run on the same hardware with production software.
    We have also received a feedback from the responsible team regarding your request about a dedicated SAN (Storage Area Network) for MSDN software.
    They have confirmed that the SAN has to be dedicated to the development and testing environment if it is used to run the software acquired through MSDN.
    Question:
    OK, so if I have my desktop (which is a production environment as I use it for email and other day to day office tasks), can I turn on Hyper-V and install an MSDN Windows Server 2012 instance for development purposes?
    Answer:
    We kindly inform it is not allowed to install and run software from MSDN subscriptions in production environments. Please do not install MSDN software on a desktop in a production environment:
    "[.] The customer will need to run the developer software on a device/host that is dedicated to testing and development.
    Explanation:
    The Product Use Rights (PUR) say that the developer software is not licensed for use in a production environment. Even if the PUR does not have a separate definition of production environment, a production environment is a set of resources for network, physically
    dedicated hardware and software to provide "live" service.  If the intent was to say that the same physical server could be used for both development and production - it would say "not licensed for use in a production OSE," instead
    it says environment.
    See current PUR, page  51:
    Developer Tools (User License)
    You have the rights below for each license you acquire.
    -      You must assign each license to a single user.
    -      Each Licensed User may run an unlimited number of copies of the Developer Tools software and any prior version on any device.
    -      The Licensed User may use the software for evaluation and to design, develop, test, and demonstrate your programs. These rights include the use of the software to simulate an end user environment to diagnose issues related to your programs.
    -  The software is not licensed for use in a production environment.
    -      Additional rights provided in license terms included with the software are additive to these product use rights, provided that there is no conflict with these product use rights, except for superseding use terms outlined below.

    Hi Mike,
    It sucks that MSDN software can't be run in a production environment, that means you have to have two entirely separate hardware environments, which are costly, and it seems unnecessary.  
    That's essentially it. I'm not saying for one second that it should be used for production purposes, just that it's physical location shouldn't be relevant. Also, the word "environment" is a very bad choice in the documentation simply because it's very open
    to interpretation.
    A production environment is defined as an environment that is accessed by end users of an application (such as an Internet Web site) and that is used for more than
    Acceptance Testing of that application
    or Feedback. Some scenarios that constitute production
    environments include:
    Environments that connect to a production database.
    Environments that support disaster-recovery or backup for a production environment.
    Environments that are used for production at least some of the time, such a server that is rotated into production during peak periods of activity.
    So I dont think (here's that inconclusive language) but am not sure that your desktop machines count as production environments, based on that, unless end users are connecting to them. (I dearly hope they are not!)
    My reading is based on the "Other Guidance" section:
    "If a physical machine running one or more virtual machines is used entirely for development and test, then the operating system used on the physical host system can be MSDN software. However, if the physical machine or any of the VMs
    hosted on that physical system are used for other purposes, then both the operating system within the VM and the operating system for the physical host must be licensed separately."
    <o:p>This is the crux of the matter and the interpretation of "licensed separately". A (to my mind) sensible reading of that would be "if you're running any production purpose VMs on a server then the physical host OS must be a full licence
    [presuming it's Server 2012 and not, say, VMWare or Hyper-V 2012] as must all production purpose VMs on that server". This has been getting interpreted by others (I'm not the first) and backed up by MS as meaning that if you want to run any dev/test VMs on
    a server that also runs production VMs then you can't use MSDN for those dev/test VMs.</o:p>
    Also, there is a section
    here, on the MSDN Licensing help page that says (with my added emphasis):
    Many
    MSDN subscribers use a computer for mixed use—both design, development, testing, and demonstration of your programs (the use allowed under the MSDN subscription license) and some other use.  Using the software in any other way, such as for doing email,
    playing games, or editing a document is another use and is not covered by the MSDN subscription license. 
    When this happens, the underlying operating system must also be licensed normally by purchasing a regular copy of Windows such as the one that came with a new OEM PC.
    Now to me, it seems this might be saying that the underlying operating system on a work
    machine cannot be licensed using MSDN if that work machine is going to be doing non-msdn things in addition to MSDN things.  It doesn't say "This can't happen" it just says "When this happens, the underlying
    OS must be licensed normally..." 
    So, based on what I'm reading it seems that this quote from you might not be true:
    "We can't install a local MSDN instance of Server 2012 or 8.1 for dev and test under Hyper-V on desktops
    because desktops used for email, writing documents, etc are production. "
    I wouldn't have expected this to be true either, but this is the response I was given. It may well be
    that my question was misunderstood. I hope this is the case otherwise one of the big reasons for turning on Hyper-V on  expensive, powerful desktops enabling the running of personal test environments goes out the window!
    Thanks for your time on this.

  • Migration from development to production environment for SAP Netweaver BI

    All,
    When I created a SAP Netweaver BI connection using BeX query in BW development environment, the system is defaulted to the BW development environment. Since the system textbox can't be modified to use a variable to point to production environment, can you share how you migrate your SWF file to production environment and ensure that it points to the BeX production query?
    Thanks for sharing ....

    After some more searching, I found this link: http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f005a4ca-d4fd-2c10-adb8-8ec24383cb97

  • RE: Production Environment Definition

    Brad,
    We use connected environments so that we do not have a single point of
    failure.
    We use multiple environments and connect them together in a star topology
    for reliability of service. Our servers (23 in total) sit out at branches
    in the back of beyond and the WAN connections between the servers are
    unreliable. One needs a reliable connection to the Name Service which sits
    on each Environment Manager. We have thus created 23 connected
    environments with an Environment Manager on each LAN. Connected
    environments are still a bit buggy but Tech Support is currently working on
    fixing the last of the problems. We are still on ver 2H15 for this reason.
    Disadvantages of this topology are that making distributions take a long
    time because referenced partitioning cannot be scripted in fscript and
    econsole only connects to one environment at a time.
    There is a Fort&eacute; consultant in Denver called Pieter Pretorius who has had a
    lot of experience with our connected environments. It may be worth
    chatting to him.
    Regards,
    Richard Stobart
    Technical Consultant for Fort&eacute;
    E-mail [email protected]
    Quick-mail: [email protected]
    Voice: (+ 27 83) 269 1942
    (+27 11) 456 2238
    Fax: (+ 27 83) 8269 1942
    -----Original Message-----
    From: Brad Wells [SMTP:[email protected]]
    Sent: Tuesday, February 10, 1998 11:52 PM
    To: 'Forte Users - Sage'
    Subject: Production Environment Definition
    Hello again,
    We are just starting to look at what it will take to setup a production
    Forte environment. I have some general questions regarding
    considerations that may affect the environment definition and thought
    maybe some of the more experienced users could share some thoughts on the
    following:
    1) What factors lead to the creation of multiple production environments?
    a. How many environments should you use in a production situation?
    b. Do people create separate environments for separate business units?
    c. Are there performance improvements to be had by restricting the
    number of server and client nodes included in a single environment?
    d. How do the performance benefits of multiple environments compare to
    the additional complexity of managing and maintaining multiple connected
    environments?
    The initial need is for an environment that will service approximately 50
    clients and contain a couple of server nodes (database and service
    related). However, as the environment grows, it could easily grow to a
    size of 600 clients encompassing approximately 15-20 server nodes.
    At this point in time, there is no need for the failover support of
    connected environments, but this is something we will need to add as the
    environment absorbs applications with high reliability needs. Should the
    environments be setup and connected right away or can this be easily
    added on an "as needed" basis? What other recommendations would you
    make?
    Has anyone taken advantage of Forte consulting services in defining the
    production environment? Where you satisfied with the results of the
    service?
    Thanks.
    Bradley Wells
    [email protected]
    Strong Capital Management, Inc
    http://www.strong-funds.com

    On Tue, 10 Feb 98 13:52:00 PST Brad Wells <[email protected]>
    writes:
    At this point in time, there is no need for the failover support of
    connected environments, but this is something we will need to add as
    the
    environment absorbs applications with high reliability needs. Should
    the
    environments be setup and connected right away or can this be easily
    added on an "as needed" basis? What other recommendations would you
    make?
    From the Forte Systems Management point of view, you can add them "asneeded"
    fairly easily.
    Now from the application source code point of view, implementing
    Fail/Over support
    is a different story... You will need to check your SO's dialog
    durations, handle
    DistributedAccessExceptions, "warm-up" your distributed references for
    F/O,
    design a solution for restoring global transient data, do lots of
    testings etc...
    So implementing Fail/Over is not only related to systems-management
    issues, it can
    have some influence on your application(s) source code.
    Hope this helps,
    Vincent Figari
    You don't need to buy Internet access to use free Internet e-mail.
    Get completely free e-mail from Juno at http://www.juno.com
    Or call Juno at (800) 654-JUNO [654-5866]

  • How to manage connections in production environment

    Hai
    We are using Statless Session beans which will call bean managed entity beans
    as a developer we completed the first phase of our project successful but when
    comming to the production environment they(Higher authoritites of the company)
    are asking abt the connection pools. Suppose if my wlserver5.1 has 100 hits per
    a second how many connection pools i need to put in the production envirornment
    and also is it the right way to increase the connectionpools depends upon the
    clients hits????. Can anybody help me regarding this It is very urgent for us.
    Thanks in advance
    Cheers Kiran Nallam

    Hi,
    It all depends on your infrastructure and what products you are using.
    In most cases dev/prod are on different servers and are separate installs, this is the route I would promote.
    Some clients do share an environment for dev/test but not all, not everybody is the same.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Setting client role in non-production systems

    In our QA test systems of R/3 and BW, the client role  in SCC4 was set to 'Production'. The reason I was given is that  by setting the client role to 'Production', will enable some settings in FI such as period closing,and customizing settings remain open  without transportable requests. I totally disagree with this. I worked on numerous projects, but this is first time I am hearing this. I always set client role to Test in non-production systems, without any problems. Do any one have  any idea about this?
    Thanks
    Santosh

    SAP have a concept of "current settings".  These include things like exchange rates and other items which really appear to be configuration settings.  In a non-modifiable system these cannot be changed because the transport management system tries to get involved.  If the client is set to productive, this restriction is overridden.
    I would always suggest that the QA system should be set to productive and non-modifiable to ensure that the behaviour of the transactions affecting such objects can be tested in a production-like environment.  If you need to have your QA system open for any sort of changes you are exposed to having changes introduced in QA to leading to the impression that new/modified functionality or config works but when the transport takes the unmodified version to production you'll be in trouble.

  • Container classes generation for production environment

    You can run the WebLogic EJB compiler on the JAR file before you deploy the beans,
    or you can let WebLogic Server run the compiler for you at deployment time.
    I have to release :
    - an ear, containing 1 ejb and other stuff
    - a client-jar (delegate, remote, home), that will be included in another ear (client
    application of our ejb).
    Both the ear will be deployed on the same wl instance (6.1sp2) (production environment).
    For a production environment, which are the pros and contras ?
    (not considering deploy time differences on wlserver, of course).
    Which is the best practice ? Is it suggested to release the ear with the container
    classes already generated (run ejbc before) or delegate the generation to weblogic
    server ?
    Thanks in advance
    Sergi

    You can run the WebLogic EJB compiler on the JAR file before you deploy the beans,
    or you can let WebLogic Server run the compiler for you at deployment time.
    I have to release :
    - an ear, containing 1 ejb and other stuff
    - a client-jar (delegate, remote, home), that will be included in another ear (client
    application of our ejb).
    Both the ear will be deployed on the same wl instance (6.1sp2) (production environment).
    For a production environment, which are the pros and contras ?
    (not considering deploy time differences on wlserver, of course).
    Which is the best practice ? Is it suggested to release the ear with the container
    classes already generated (run ejbc before) or delegate the generation to weblogic
    server ?
    Thanks in advance
    Sergi

  • Production Environment Definition

    Hello again,
    We are just starting to look at what it will take to setup a production
    Forte environment. I have some general questions regarding
    considerations that may affect the environment definition and thought
    maybe some of the more experienced users could share some thoughts on the
    following:
    1) What factors lead to the creation of multiple production environments?
    a. How many environments should you use in a production situation?
    b. Do people create separate environments for separate business units?
    c. Are there performance improvements to be had by restricting the
    number of server and client nodes included in a single environment?
    d. How do the performance benefits of multiple environments compare to
    the additional complexity of managing and maintaining multiple connected
    environments?
    The initial need is for an environment that will service approximately 50
    clients and contain a couple of server nodes (database and service
    related). However, as the environment grows, it could easily grow to a
    size of 600 clients encompassing approximately 15-20 server nodes.
    At this point in time, there is no need for the failover support of
    connected environments, but this is something we will need to add as the
    environment absorbs applications with high reliability needs. Should the
    environments be setup and connected right away or can this be easily
    added on an "as needed" basis? What other recommendations would you
    make?
    Has anyone taken advantage of Forte consulting services in defining the
    production environment? Where you satisfied with the results of the
    service?
    Thanks.
    Bradley Wells
    [email protected]
    Strong Capital Management, Inc
    http://www.strong-funds.com

    On Tue, 10 Feb 98 13:52:00 PST Brad Wells <[email protected]>
    writes:
    At this point in time, there is no need for the failover support of
    connected environments, but this is something we will need to add as
    the
    environment absorbs applications with high reliability needs. Should
    the
    environments be setup and connected right away or can this be easily
    added on an "as needed" basis? What other recommendations would you
    make?
    From the Forte Systems Management point of view, you can add them "asneeded"
    fairly easily.
    Now from the application source code point of view, implementing
    Fail/Over support
    is a different story... You will need to check your SO's dialog
    durations, handle
    DistributedAccessExceptions, "warm-up" your distributed references for
    F/O,
    design a solution for restoring global transient data, do lots of
    testings etc...
    So implementing Fail/Over is not only related to systems-management
    issues, it can
    have some influence on your application(s) source code.
    Hope this helps,
    Vincent Figari
    You don't need to buy Internet access to use free Internet e-mail.
    Get completely free e-mail from Juno at http://www.juno.com
    Or call Juno at (800) 654-JUNO [654-5866]

Maybe you are looking for