Quantcast
Channel: PTC Community : All Content - Windchill
Viewing all 6049 articles
Browse latest View live

Performance Tuning Windchill servers that manage CAD Documents

$
0
0

Are you experiencing poor server performance managing Pro/E, Creo or Windchill Workgroup Manager (CAD) data in Windchill?

 

Are users complaining that when working with CAD data, interaction with Windchill or the Workspace is slow?

 

Do you wonder what you should do to setup or tune a Windchill server for interaction with clients working with CAD data?

 

Initial performance tuning of a Windchill server doesn't have to be overly complicated and time consuming process.  Time spent tuning the Windchill server will improve performance and ensure users have the best possible interaction with the Windchill.  Let's walk through the following:

 

  • Resources that are available to guide you during tuning
  • Server properties and preferences to set
    • Database tuning
    • Other considerations


    Resources

     

    Server Properties and Preferences

    Some settings and preferences are general in nature while others are specific to a particular Windchill version.  Although the steps to tune a 9.1, 10.0, 10.1 and 10.2 server vary (typically more to do with older releases), I'll cover the typical steps you'll do with most installations (eg. 10.x releases).  Refer to CS24192 for full detail for each Windchill release from 9.1 to 10.2 and MOR releases in between.

     

    • Configure common Windchill properties using the Windchill Configuration Assistant (WCA)

    The WCA will inspect the server (identify available resources like CPUs, RAM, etc.) and suggest changes to wt.properties and other property files.  Note that WCA execution is done automatically when installing using the 10.0 and later PTC Solution Installer.  If you've upgraded/changed hardware since initial installation or it didn't run on initial installation, you'll want to run it again.  See CS40846 and CS153338 for additional detail.


    • Set optimal collection preferences for common operations via Preference Management

    Set defaults for operations like Add to Workspace, Check Out, Check In, Revise, Save As, etc. to collect minimal dependencies (None or Required):

    collection.gif

    If users need different default values, they can make changes in personal preferences or in the Basic/Advanced collectors when performing the operation.


    • Create or edit the default Workspace table Views so that they display a minimal amount of information

    workspace prefs.gif

    For releases prior to 10.2 M030, avoid default table displays with additional status columns (eg. Compare Status, Out of Date, etc.) as when those columns are included, the client must make additional and expensive requests to the server when refreshing the Workspace.  See CS150977 for additional information.


    • If Save As performance is poor, set preference save.as.trace.circular.dependents=false

    For some datasets, circular dependency processing when performing Save As can sometimes be an issue (take a long time).  Configure to not trace circular dependents if performance issues have been observed performing Save As.  See CS51570 and CS3348 for additional information.


    • Set wt.properties com.ptc.core.collectionsrv.engine.isIntralinkTracingEnabled=true if using later 10.x releases

    Out of the box, Windchill can in some case trace dependencies for objects not explicitly requested by the user (eg. perform full dependency tracing for drawing dependents when the drawing is included in collection via Include Drawings).  This can in some cases result in long time waiting for the server to process collection requests (eg. when performing an Add to Workspace).  Making this change will disable the additional dependency tracing and should improve performance .  See CS57721& CS127319 for additional detail.

     

    • Consider custom values for wt.properties com.ptc.core.collectionsrv.engine.limitDependencyTracing and com.ptc.core.collectionsrv.engine.collected_result_limit if using later 10.x releases

    Dependency tracing for large or complex datasets can in some cases cause server performance issues.  If you observe performance issues with collection of dependents, see CS99609 and CS16012 for additional information.


    • Set wvs.properties publish.retrievallfiles=false, publish.retrieveallfiles.PROE=false or publish.retrieveallfiles.CATIAV5=false if publishing with filesync CAD workers

    The out of the box WVS dependency tracing publish.retrievallfiles=all setting is only needed for non-filesync CAD workers and can result in longer than necessary publishing times and put unnecessary load on the server and database.  If you're using filesync workers (most customers are or should be!), make this setting for improved performance.  See CS76293 and CS34783 for additional information.


    • Configure the webserver with a 60 second KeepAliveTimeout

    This setting keeps the network port between a client and server open longer than the 5 or 15 second default and allows the client to reuse an open network connection for up to 60 seconds.  As a result, response times for SSL and HTTP connections is improved.  As a side benifit, Internet Explorer doesn't work well with KeepAliveTimeout values ≠ 60.  Setting this value to 60 will reduce the number of offline client sessions as well.  See CS19706 and CS65884 for additional detail.


    The Methodserver and database will in most cases try to process all requests that are made regardless of whether or not the request may overload the Methodserver and database.  Making a couple changes to db.properties can improve performance as it prevents high load, long running transactions from consuming all resources.


    Database Tuning

    The Windchill database is a primary component in any Windchill installation as requests made to the Windchill Methodserver invariably have to be processed by the database.  Having a properly sized (enough memory) and functioning database (proper database indexes) is key to good overall performance.


    • Create database indexes to improve database performance

    The database frequently is a performance bottleneck when Windchill is processing information for CAD objects.  Start with CS75632 and CS151400 for Windchill 9.1 installations and CS98135 for Windchill 10.0, 10.1 and 10.2 installations as they contain indexes that are known to improve database performance for not only CAD object processing but other operations.

     

    • Periodically review and monitorSite > Utilities > Server Status for high percentage of Method Context Time is spent in JDBC Callsor PTC System Monitor (PSM)to determine if a high percentage of time is reported as being spent in the database (if there is a suggestion that the database is performing poorly):

     

    Here's an example of Server Status showing a large amount of time in JDBC (database) calls:

    status.gif

     

    Here's an example of PSM showing a much smaller amount of time spent in the database for a user transaction:

    10201037_fgB0.gif

     


    Other Considerations

    There are many other things that can be done to improve, diagnose and monitor performance.  Depending on your environment, some may have a large impact while others may not.  Take a look and let me know if you have any questions or comments:


    • Client tuning

    See the following blog post: Configuring Creo Parametric and Windchill Workgroup Manager Clients for CAD Data Management Performance

     

    • Vaulting and Replication to WAN File Servers

    Staging and maintaining File Servers can be a bit more involved from an administration perspective but for WAN users, being able to upload and download content from a local File Server is a big benefit.  See Windchill Vaulting and Replication Planning - Technical Brief for additional information.


    • Implement a clustered environment for high load installations

    Customers with many users can easily generate enough activity that a clustered Windchill environment (configuring multiple machines with multiple Method servers) to service client requests is necessary.  See Windchill Architecture Overview for additional information.


    • For WAN clients with high latency and low bandwidth, implement caching proxy and/or WAN accelerator

    Even if you have WAN File Servers that are local to WAN users, WAN clients still interact with the master Methodserver over the WAN for all information and requests other than content.  If you latency is high (eg. 250+ ms) and bandwidth low, consider implementing caching proxies and WAN accelerators to improve interaction with the Windchill server.  Refer to WAN Accelerators and Windchill Performance - Technical Brief for additional information.


    • Monitor and diagnose server performance with PTC System Monitor (PSM)

    PSM is free and powerful tool available that can be used to easily monitor activity and performance of Windchill servers.  Refer to the following for more detail:

     

    • Benchmark the system before and after tuning and/or compare to PTC Performance QA results

    Last but not least, collecting a benchmark of system performance before and after tuning is important as it allows you to gauge the impact of your tuning activity.  Collect detail and/or test with a standard Creo dataset available from PTC and review posted results from PTC QA.  See the following for additional detail:

    If benchmark results with the Windchill Creo Data Management Performance Benchmark Test Dataset are not close to or better than PTC QA results reported in the Windchill Creo Data Management Performance Benchmark Test - Data Sheet or performance with other datasets does not meet expectations, collect Performance task detail from System Configuration Collector (Windchill System Configuration Collector (SCC) FAQ) along with test results and contact Technical Support.

     

    That's it!  I hope you find this information interesting and of use.  As always, comments and feedback are very welcome.


    Windchill PDMLink 10 open in a new tab

    $
    0
    0

    I realize I am very late to the party but we are just now upgrading to PDMLink 10. Am I missing something or is it not possible to open the links from a search result into multiple tabs?

     

    IE if I search on a part number and I want to open the CAD object and the WT object that the search results returned in separate tabs is that possible?

    Windchill PDMlink Visualization option open all files removed?

    $
    0
    0

    Again, very late to the PDMLink 10 party here ... In PDMLink 9 there was an option to open all files when ProductView was launched. This meant that components for assemblies opened upon launch rather than having to manually click a radio box to load them.

     

    Does anyone know if there is a way to achieve the same thing in PDMLink 10 / Creo View? Seems a little silly to me not to auto load the files. If I clicked on an assembly visualization then chances are really good I wanted to actually load it and see it.

     

    Capture.PNG

    "CAD part is not unique"

    $
    0
    0

    Hi

     

    We have more than 20,000 library parts, out of that 15,000 part successfully moved into windchill library folder .

    The remaining 5000 parts when I am moving to windchill from local drive, it is showing "CAD Part is not unique".

    Because of this issue , we were not able to upload the assembly .

     

    Windchill implementation team working on this issue last one month but still not able to find the root cause.

     

    Note:Those 5000 parts are not present anywhere inside windchill.

    Moving parts within the MBOM structure ?

    $
    0
    0

    After generating an MBOM in MPM link I wish to move parts within the lower levels and not have them in part number order.

     

    Does anybody know if this is possible and how it is done, is it just a configuration/set up issue?

     

    Many thanks, Dale.

    CAD Structure to Part Structure

    $
    0
    0

    I have recently been doing a lot of testing and learning in Windchill. Having no real training, and being tasked to solve a number of problems for our business units has led to me making some mistakes and having to fix them. Of course all of this is happening on our production server as well, because we don't have a test server. I've now caused one issue that I cannot figure out how to fix.

    I believe that by using Set for Build, I have pushed the WTPart structure to the CAD Structure. This results in all of my models being removed from my assemblies when I open them. I need to reverse this and force the CAD Structure to populate the WTPart structure. How do I do this? I find myself getting confused about which way information is being pushed in the Compare CAD to WTPart and Compare WTPart to CAD windows, and I'm truly just fumbling around trying to learn (which I have learned a ton) since I cannot find good training information.

     

    Thank you.

    NC Category Tree / NC Trending Categories - Windchill API help

    $
    0
    0

    Hello,

     

    We are trying to pull the tree structure of two of the Nonconformance attributes "NC Category" & "NC Trending Categories", into Thingworx.

    At Thingworx side, we can parse xml or json input; preferably with the tree (parent-child) details, and feed it to tree widget.

     

    At Windchill side we need some help to develop the webject (xml or java code) to pass the attribute details.

    Please let us know the right approach or API to get the above attributes along with parent-child (tree) details

     

    Other details

    Object - WCTYPE|com.ptc.qualitymanagement.nc.Nonconformance

    Attribute Name - Nonconformance Category

    Internal name - ncCategoryCode / ncCategoryPath

     

    Object - com.ptc.qualitymanagement.nc.NCTrendingCode

    Attribute Name - Nonconformance Trending Categories

    Internal name - ncTrendingCode & ncTrendingPath

     

    Please refer attached screenshots.

     

    Thanks

    Avinash

    Advanced Replica/Vaulting Requirement with Multiple File Servers in USA and INDIA

    $
    0
    0

    We would like to configure Windchill server with 7 File Servers to achieve the following requirement.

     

    There is a Product container X and user A is from US and user B is from India.Both are members of this Product Container.

    Both members are required to design two separate product lines using Creo.

     

    If user A checks in Creo data it should be deposited in US FCS Master vault and if user B checks in data then it should be deposited in India FCS master vault.

     

    Is there any good bractice to configure Replica Vaulting Rules according to this requirement? How can we make sure that data is not stored centrally?


    Extract all Groups, user and its profile related information by java code

    $
    0
    0

    Hi All,

     

    i need to extarct all Groups, Group Member and user related information in tabular manner by using java code.

    Please any one give me some idea how i can achive this requirement.

     

     

    Thanks,

    Vivek

    table is not displayed with proper table UI

    $
    0
    0

    I am trying to create a table UI on click on actions command on a popup page. Table is coming a plain page without table borders

     

    Below are the steps followed,

     

    Step 1: Added custom-actionmodels.xml

    <model name="agileActions" resourceBundle="jp.co.lixil.individualbom.actions.ui.resource.NavigationRB">

      <action name="pushParts" type="object"/> <!-- Send Part -->

      <action name="pushBOM" type="object"/> <!-- Send BOM -->

      <action name="pushDrawing" type="object"/> <!-- Send Drawing --> 

      <action name="AgilePartsList" type="navigation"/>

    </model>


    Step 2: Added actions in custom-actions.xml

    <objecttype name="navigation" class="" resourceBundle="com.co.ui.resource.NavigationRB">

      <action name="AgilePartsList">

                  <component name="com.co.agile.parts" windowType="popup"/>

              </action> 

    </objecttype>


    Step 3: RB File Entry for this action in NavigationRB.java

    @RBEntry("Parts List To Agile")

    public static final String PRIVATE_CONSTANT_24 = "navigation.AgilePartsList.title";

     

    @RBEntry("Parts List To Agile")

    public static final String PRIVATE_CONSTANT_25 = "navigation.AgilePartsList.tooltip";

     

    @RBEntry("Parts List To Agile")

      public static final String PRIVATE_CONSTANT_26 = "navigation.AgilePartsList.description";

     

     

    Step 4: Added Entry in MVSDispatcherServlet.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <!-- - Application context definition for "MVC" DispatcherServlet. -->

    <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=“http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

    <import resource="classpath:config/mvc/mvc.xml" />

      <import resource="classpath:config/mvc/jca-mvc.xml" />

      <import resource="classpath:config/mvc/*-configs.xml" />

      <import resource="classpath:config/mvc/custom.xml" />

      <import resource="classpath:config/mvc/pac-custom.xml" />

      <bean id="defaultHandlerMappings“ class="org.springframework.beans.factory.config.PropertiesFactoryBean">

        <property name="locations">

        <list>

        <value> classpath:/config/mvc/*-urlMappings.properties</value>

      <value>classpath:/config/mvc/custom.properties</value>

      </list>

      </property>

      </bean>

      </beans>



     

    Step 5: pac-custom.xml file created under codebase/config/mvc/pac-custom.xml

    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beansxmlns:xsi="http://www.w3.org/2001/XMLSchema-instancexmlns:context="http://www.springframework.org/schema/contextxmlns:mvc="http://www.ptc.com/schema/mvcxsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-2.5.xsdhttp://www.ptc.com/schema/mvchttp://www.ptc.com/schema/mvc/mvc-10.0.xsd">  <!-- Configurations in this file override all other configurations --> 

    <mvc:builder-scan base-package="com.co.agile.action.table.part" /></beans>


    Step 6: Created a Folder under <WEB-INF>/jspcalled pac/pacPartsListTable.jsp

    <%@tagliburi="http://java.sun.com/jsp/jstl/core" prefix="c"%>

    <%@ taglibtagdir="/WEB-INF/tags" prefix="tags"%>

    <%@ tagliburi="http://www.ptc.com/windchill/taglib/jcaMvc" prefix="mvc"%>

    <%@ include file="/netmarkets/jsp/util/begin_comp.jspf" %>

    <mvc:tablecompId="com.pac.agile.parts"/>

    <%@ include file="/netmarkets/jsp/util/end_comp.jspf"%>


    Step 7: This is the table component code


    package com.co.agile.action.table.part;

     

    import com.ptc.mvc.components.AbstractComponentBuilder;

    import com.ptc.mvc.components.ColumnConfig;

    import com.ptc.mvc.components.ComponentBuilder;

    import com.ptc.mvc.components.ComponentConfig;

    import com.ptc.mvc.components.ComponentConfigFactory;

    import com.ptc.mvc.components.ComponentParams;

    import com.ptc.mvc.components.TableConfig;

    import com.ptc.mvc.util.ClientMessageSource;

     

    import wt.fc.PersistenceHelper;

    import wt.part.WTPart;

    import wt.pds.StatementSpec;

    import wt.query.QuerySpec;

    import wt.query.SearchCondition;

    import wt.util.WTException;

    import wt.vc.VersionIdentifier;

     

    //This annotation is VERY important.

    @ComponentBuilder("com.co.agile.parts")

    public class AgilePublishPartsTableBuilder extends AbstractComponentBuilder {

        private static final String RESOURCE = "jp.co.ui.resource.NavigationRB";

        private final ClientMessageSource messageSource = getMessageSource(RESOURCE);

     

        @Override

        public ComponentConfig buildComponentConfig(ComponentParams paramComponentParams) throws WTException {

            //get the ComponentConfigFactory

            ComponentConfigFactory factory = getComponentConfigFactory();

            //get an instance of TableConfig

            TableConfig table = factory.newTableConfig();

            // General table properties

            table.setId("com.pac.agile.parts");

            table.setSelectable(true);

            table.setLabel(messageSource.getMessage("RELATED_PARTS"));

            table.setShowCount(true);

            //table.setActionModel("agilePushTableActions");

           

            //add columns

            //name

            ColumnConfig col1 = factory.newColumnConfig("name", true);

            col1.setSortable(true);

              table.addComponent(col1);

              //number

              ColumnConfig col2 = factory.newColumnConfig("number", false);

              col2.setInfoPageLink(true);

              col2.setSortable(true);

              table.addComponent(col2);

              //type

              ColumnConfig col3 = factory.newColumnConfig("type", true);

              table.addComponent(col3);

              // Last Modified

              ColumnConfig col4 = factory.newColumnConfig("thePersistInfo.modifyStamp", true);

              table.addComponent(col4);

             

              table.setShowCustomViewLink(false);

              // If you want different column name as Display name, use setLabel("New Name") function on column

              // If you data as link use setInfoPageLink(true) function on column

              table.setView("/pac/pacPartsListTable.jsp");

            return table;

        }

     

        @Override

        public Object buildComponentData(ComponentConfig paramComponentConfig, ComponentParams paramComponentParams) throws Exception {

            QuerySpec qs = new QuerySpec(WTPart.class);

            qs.appendWhere(new SearchCondition(wt.part.WTPart.class,WTPart.NUMBER,SearchCondition.LIKE,"%RD%"), null);

            return PersistenceHelper.manager.find(qs);

           

        }

    }

     

    Result is like this when I click on actions command,

     

    Can someone help me to figure how to get the proper table here?

    How are your Windchill Administrators Organized?

    $
    0
    0

    Many companies put Windchill Administrators (specifically "Business Administrators") in different organizational categories and departments.

     

    Are they IT because they work in a software tool? Are they Engineering because it deals with engineering processes? Are they in Mechanical Engineering because "it's just a model storage tool" (by the way, it's not)? Are they CM because the tool maintains released data? Are they beyond definition?...

    My own team has bounced around through various organizational groups, so I'm posting mostly out of curiosity.

     

    So where are yours located?

    Making a Replica Vault to a non-Windchill computer

    $
    0
    0

    I am relatively sure this is not possible, but has anyone had any success with creating a Windchill Replica Vault on a computer that does not run Windchill, for example, a laptop?

    My company is working with replicating vaults for convenient transfer of data without passing it through a WAN, much like in this thread. Windchill Content Replication

    Issue During Windchill Upgrade

    $
    0
    0

    Hi Everyone,

     

    I've started Upgrade Windchill PDMLink from 10.1 to 11. I'm facing issue during Upgrade at Execute Standalone Migrators activity. I'm getting below error...

     

    (wt.org.orgResource/54) wt.org.OrganizationServicesException: Cannot process participant xyz because a related disconnected participant wt.org.WTOrganization:374 exists in the database


    Here Source system is rehosted one for which domain name has been changed.


    Any suggestions will be really helpful to me.

     

     

    Regards,

    Krishna



    How to configure multiple Release states in Change Management ?

    $
    0
    0

    My part lifecycle state includes Open - Under Review - Alpha Release - Beta Release - Production Release - Cancelled.

    On revise from Alpha, Beta or Production Release states, the part comes in Open State.

     

    I have 3 subtypes of Change Notice (CN_1,CN_2,CN_3).
    If CN_1 is raised on the parts, resulting objects should be released to Alpha release, for CN_2 - Beta release, for CN_3 - Production Release.

     

    Since change transition allows only one target state, How can i achieve this ?
    I don't want user to select the release target. Instead release target should automatically change depending on the change notice type.

    Failed to build part error - HELP please

    $
    0
    0

    When I do a RIGHT CLICK to Build Associated Part, I will sometimes get this error.  Any suggestions?

     

    The image attached, I'm basically Right Click, Build Associated Part, then I get that error.  The 12600453-6314.prt is RELEASED now, so not sure if the state change caused some issues.  I've had this happen before, and the only fix was to modify a part at released (basically do any random change to generate a new iteration), but that cannot be the soltution.

     

    FYI, the 12600453-6314.prt is related as a IMAGE.  (We basically have a bunch of different tie wraps that are modeled and used to build the BOM).


    Hide "Define Impact" on Variance

    $
    0
    0

    Anyone know how to not display the "Define Impact" on a Varaince (step 2)?

     

    I am using a sub-type of Variance for users to request Test Builds for validations and I don't need this section.

    How to download query builder report automatically or sent to specific email ?

    $
    0
    0

    We are trying to automate the process of CR/CN daily reports to download to a network folder. Is there any way – Windchill can automatically download as an excel report of a custom report from query builder  ?

    Windchill 11.0 M020/30, Windows Server 2012 NTLMv2 issues

    $
    0
    0

    So I've been racking my brain since march, and literally no valuable help from PTC on this issue, but I need some input from the community at this point.  We've had a case open with PTC for 68 days and still no fix...

     

    Environment:

    Windows Server 2012R2

    Windchill 11.0 M020 (also tried with M030) OOTB

    -Apache 2.4 (bundled version)

    Server (& AD Domain Controller) has policies that require contact to AD/DC to be NTLMv2 only.

    Certificates are properly imported into Keystore & to the TRCA on the machine

    Followed CS62326.

     

    This configuration works perfectly with our production environment Windows Server 2008R2 / WC 10.2 M030 / Apache 2.2.

     

    I am racking my brain here....

    Any of you using Server 2012R2 & WC 11.0 yet?

     

    Jim

    Oracle Security Alert for CVE-2017-3629

    $
    0
    0

    We just received this yesterday.  Is anyone aware of this?  Or have you already updated your system?

     

    ACL: What is the diffrent beween DynamicRole and RoleGroups?

    $
    0
    0

    Hi,

     

    What is the different between a DynamicRole and RoleGroups in Windchill 11.0? Where can I find a documentation about the different group types?

     

    Both are used in the Context Template xml (see snipped below). The ACLs are created with the UI.

     

    ... <AccessControlRule>    <domainName>/Default</domainName>    <externalTypeId>WCTYPE|wt.doc.WTDocument|priv.Domain.MyDocument</externalTypeId>    <lifecycleState>RELEASED</lifecycleState>    <WTPrincipalReference isInternal="true">      <groupName>DOCUMENT_MANAGEMENT</groupName>      <groupType>DynamicRole</groupType>    </WTPrincipalReference>    <grantPermissionSet><AccessPermissionSet>        <permissionField name="READ"></permissionField>        <permissionField name="REVISE"></permissionField>        <permissionField name="CHANGE_PERMISSIONS"></permissionField>        <permissionField name="DOWNLOAD"></permissionField>        <permissionField name="SET_STATE"></permissionField>      </AccessPermissionSet></grantPermissionSet>  </AccessControlRule>  <AccessControlRule>    <domainName>/Default</domainName>    <externalTypeId>WCTYPE|wt.doc.WTDocument|priv.Domain.MyDocument</externalTypeId>    <lifecycleState>RELEASED</lifecycleState>    <WTPrincipalReference isInternal="true">      <groupName>DOCUMENT_MANAGEMENT</groupName>      <groupType>roleGroups</groupType>    </WTPrincipalReference>    <grantPermissionSet><AccessPermissionSet>        <permissionField name="READ"></permissionField>        <permissionField name="CREATE"></permissionField>        <permissionField name="DOWNLOAD"></permissionField>        <permissionField name="SET_STATE"></permissionField>      </AccessPermissionSet></grantPermissionSet>  </AccessControlRule>
    ...

     

    Thank you,

     

    Tom

    Viewing all 6049 articles
    Browse latest View live


    <script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>