标签: ibm-midrange

WebSphere 6.1中的CPU使用率峰值

首先,只是一些背景知识:

我们的一位客户正在经历运行我们的一个Web应用程序的WebSphere实例的CPU使用率峰值(其他应用程序的其他实例都很好).他们有一个测试环境和一个现场环境(两个iSeries)都遇到了问题 - 每个实例设置一个应用程序.我们已经在我们自己的测试环境中本地部署了此应用程序,也为iSeries上的许多其他客户部署了此应用程序,没有类似的问

实际发生了什么:

每隔一秒左右,用于WebSphere Process'的CPU使用率的CPU使用率从跳转到任何地方7%- 20%即使没有当时正在处理的请求.客户报告看到峰值高达30%.这些尖峰平均出是1.5%CPU的整体-其他WebSphere情况下通常使用0%- 0.1%在空闲时.

到目前为止我的调查

所以,我看了一下线程.测试环境中的一个线程是~350每秒使用CPU周期.它们的实时环境中的一个类似线程是~1500每秒使用CPU周期(表明它有更大的CPU).这些线程的调用堆栈看起来像

Type  Program                  Statement         Procedure                    
      QLESPI     QSYS          17                LE_Create_Thread2__FP12crtt >
      QJVALIBJVM QSYS          7                 startThread__FPv             
 J    com/ibm/ws/util/Threa >                    run                          
 J    com/ibm/ws/util/Threa >                    run                          
 J    com/ibm/ws/util/Threa >                    getTask                      
 J    com/ibm/ws/util/Bound >                    poll
Run Code Online (Sandbox Code Playgroud)

底线的整个班级名称是com/ibm/ws/util/BoundedBuffer.我让客户为我做了一个JVM转储 - 我从中得到的唯一补充信息是线程名称:

Thread:  00002F82 Deferrable Alarm : 11
Run Code Online (Sandbox Code Playgroud)

现在我的问题:

  • 鉴于这些症状,你们中任何人都可以找出问题吗?(也许这是一个很长的镜头!)
  • 什么是Deferrable Alarm?从JVM转储中,我可以看到4个具有此名称的线程.其他三个似乎做得很好.通过调试我的本地WebSphere(在Windows上)并在BoundedBuffer类中添加断点,我看到BoudedBuffers正在轮询并定期调用一些侦听器.
  • 我无法访问客户机器的WebSphere控制台,并且他们没有进行任何配置更改.我可以让他们为我检查一下控制台 - 我应该让他们看看什么?
  • 我有telnet访问客户端盒,还有什么我可以调查吗?查看WebSphere配置文件等?我应该看哪些文件?
  • 因为调用堆栈和JVM转储没有明确引用我们的代码,所以可以安全地假设这是一个配置问题吗? …

java websphere multithreading cpu-usage ibm-midrange

5
推荐指数
1
解决办法
7447
查看次数

将列添加到具有特定序号位置的DB2/400表

在AS400/iSeries/System-i /是否有一个SQL命令将列添加到特定序号位置的表,或将现有列移动到其他位置?

sql db2 db2-400 ibm-midrange

5
推荐指数
2
解决办法
2万
查看次数

如何从iSeries COBOL调用Web服务?

我们需要能够从在iSeries LPAR(V6R1)上运行的COBOL代码调用内部Web服务.我经历了一个完整的例子,我能在网上找到的工作在这里.因此,我的下一步是尝试重复此过程并调用我们现有的Web服务之一.

我使用QSH的WSDL2WS命令生成C客户端存根.我修改了示例COBOL客户端程序并尝试调用我的Web服务.我遇到的问题似乎与示例C客户端方法返回指针并且COBOL代码将它们分配给指针的事实有关.我怀疑我的COBOL代码中的错误是我的问题的根源,因为WSDL2WS为我的Web服务方法创建的C方法返回一个简单的xsdc_string而不是指向自定义结果类型的指针:

xsdc__string TestUnsuccessfulMessage(AXISCHANDLE stub)
{
    AXISCHANDLE call = axiscStubGetCall(stub);
    xsdc__string Ret = NULL;

    axiscCallSetSoapFaultNamespace(call, "http://myserver/PSItemMaintenance/ItemMaintenanceService.svc");


    // ======================================================================
    // Initialize client engine, set SOAP version, SOAPAction, operation, etc.
    // ======================================================================

    if (AXISC_SUCCESS != axiscCallInitialize(call, C_DOC_PROVIDER ))
        return Ret;

    if (NULL==axiscCallGetTransportProperty(call,"SOAPAction",0))
        axiscCallSetTransportProperty(call,AXISC_SOAPACTION_HEADER , "http://tempuri.org/IItemMaintenanceService/TestUnsuccessfulMessage");

    axiscCallSetSOAPVersion(call, SOAP_VER_1_1);
    axiscCallSetOperation(call, "TestUnsuccessfulMessage", "http://tempuri.org/");

    // ======================================================================
    // Apply SSL configuration properties and user-set SOAP headers.
    // ======================================================================

    axiscStubIncludeSecure(stub);
    axiscStubApplyUserPreferences(stub);


    // ======================================================================
    // Invoke web service, send/receive operation. Handle output parameters, if any.
    // …
Run Code Online (Sandbox Code Playgroud)

c cobol web-services ibm-midrange

5
推荐指数
1
解决办法
2438
查看次数

.Net框架需要在服务器2008中安装MDAC

我公司最近使用tivoli工作负载调度程序(TWS)远程触发从z/OS到窗口服务器的作业.我们测试过tivoli可以成功触发mssql服务.

现在的问题是我们有一个.NET CL程序,我们每天使用它来将AS400中的一些数据提取到mssql服务器,它在使用Windows调度程序之前工作得很好,并且在特定时间范围内每天触发.现在我们尝试集中调度程序,以便TWS远程触发准备好的批处理文件(它将触发CL程序).

但尝试连接到AS400 DB时,CL程序的执行显示以下错误.

.Net Framework数据提供程序需要Microsoft数据访问组件(MDAC).请安装Microsoft数据访问组件(MDAC)版本2.6或更高版本.

编辑:在正常情况下,我们假设程序可以成功触发,它应该就像使用Windows调度程序,设置计划并执行它.唯一的区别是调度程序现在不是Windows调度程序,而是切换到TWS并远程触发CL程序.但执行程序在执行CL程序时显示上述错误.我们不知道为什么会出现这个错误.我们试图重新运行CL程序并在Windows调度程序中安排它,工作正常.但远程安排TWS,错误.

对于我们迄今为止所做的测试和观察:

  1. 我们的服务器是Windows server 2008 SP2 x64,我已经对旧版Windows中使用的MDAC进行了一些研究,而server 2008应该提供更新版本的MDAC(WDAC 6.0)并且无法重新安装,所以我假设MDAC/WDAC必须是正确安装.

  2. CL程序是用.NET 2.0/3.0/3.5编译的,并且测试了所有这些程序都会产生相同的错误.

  3. 他们的错误日志能够生成到sql server DB,所以我假设在CL程序中使用的连接驱动程序没有问题.但它可能是由IBMDA400驱动程序引起的.

  4. TWS使用我们服务器中的管理员帐户来触发批处理文件,我们的服务器中安装了一个TWS客户端(监听器)用于我们服务器中的触发程序,但是我们不知道他们如何连接到我们的服务器(SSH?telnet?)和他们似乎没有实际登录到我们的服务器进行远程触发(在静默模式下触发我们的工作).

我们迫切希望寻求任何解决方案,如果有人能提供任何线索或想法,那将是非常有帮助的,并为将来有同样问题的人们提供大帮助.

非常感谢你!.

c# mdac sql-server-2008 tivoli ibm-midrange

5
推荐指数
3
解决办法
6277
查看次数

Java:将String转换为压缩十进制

新来的!

情况:我正在开发一个需要与AS/400服务器通信的项目.我的任务是基本上处理将发送到AS/400服务器的请求.为此,所有用户输入应为EDCDIC字节.

问题:
我已设法将压缩小数转换为String,其代码如下,在此论坛中找到:

public class PackedDecimal {
    public static long parse(byte[] pdIn) throws Exception {
        // Convert packed decimal to long
        final int PlusSign = 0x0C; // Plus sign
        final int MinusSign = 0x0D; // Minus
        final int NoSign = 0x0F; // Unsigned
        final int DropHO = 0xFF; // AND mask to drop HO sign bits
        final int GetLO = 0x0F; // Get only LO digit
        long val = 0; // Value to return

        for (int i …
Run Code Online (Sandbox Code Playgroud)

java byte ascii ebcdic ibm-midrange

5
推荐指数
1
解决办法
1万
查看次数

AS400.validateSignon()不会将失败的登录尝试重置为0

当我使用com.ibm.as400.access.AS400.validateSignon()来验证用户的凭据并且他们通过验证并且已成功连接时,它不会将"失败的登录尝试"重置为0.

输入错误密码时,"登录尝试失败"字段会递增; 成功签署"失败的登录尝试"仍然保持有无效的登录.奇怪的是,"之前的登录"会使用正确的日期和时间进行更新.

这是as400上的DSPUSRPRF转储:

User profile . . . . . . . . . . . . . . . : BOB
Previous sign-on . . . . . . . . . . . . . : 12/12/05 21:34:08
Password verifications not valid . . . . . : 4
Status . . . . . . . . . . . . . . . . . . : *ENABLED
Run Code Online (Sandbox Code Playgroud)

我唯一能够通过使用工具箱禁用和重新启用用户来重置"失败登录尝试".这不是一个可行的解决方案,因为它会更新用户配置文件的更改日期和时间.

这种行为与处理我们的绿屏telnet会话的方式相矛盾,当用户登录as400时,"失败的登录尝试"被归零.

感谢任何建议和/或决议.

jt400 ibm-midrange

5
推荐指数
1
解决办法
1507
查看次数

Spring组件扫描在osgi容器中被破坏

我正在尝试将spring DI集成到现有的jaxws项目中.我已经在tomcat本地工作,但是当我部署到远程容器时,它似乎没有进行类路径扫描.我可以在日志中看到,在tomcat上它将我的@Components注册为bean,但是在远程服务器上它们根本没有被提及.

我看到的是下面的堆栈跟踪.它看起来像是我必须使用的古怪的Web容器.它是"IBM i的集成应用程序服务器".http://www-03.ibm.com/systems/i/software/ias/我相信这是建立在eclipse架构上的,当你安装war文件时,它会将每个应用程序转换为一个包.这很棒,但它打破了我的类路径扫描.:(

有人有解决方案吗?谢谢

673 [Thread-6] WARN  org.springframework.core.io.support.PathMatchingResourcePatternResolver  - Cannot search for matching files underneath URL [bundleresource://32/com/company/application/] because it does not correspond to a directory in the file system
java.io.FileNotFoundException: URL [bundleresource://32/com/company/application/] cannot be resolved to absolute file path because it does not reside in the file system: bundleresource://32/com/company/application/
    at org.springframework.util.ResourceUtils.getFile(ResourceUtils.java:205)
    at org.springframework.core.io.AbstractFileResolvingResource.getFile(AbstractFileResolvingResource.java:52)
    at org.springframework.core.io.UrlResource.getFile(UrlResource.java:169)
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.doFindPathMatchingFileResources(PathMatchingResourcePatternResolver.java:526)
    at org.springframework.web.context.support.ServletContextResourcePatternResolver.doFindPathMatchingFileResources(ServletContextResourcePatternResolver.java:92)
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findPathMatchingResources(PathMatchingResourcePatternResolver.java:347)
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:266)
    at org.springframework.context.support.AbstractApplicationContext.getResources(AbstractApplicationContext.java:1269)
    at org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.findCandidateComponents(ClassPathScanningCandidateComponentProvider.java:248)
    at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:242)
    at org.springframework.context.annotation.ComponentScanBeanDefinitionParser.parse(ComponentScanBeanDefinitionParser.java:84)
    at org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:73)
    at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1438)
    at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1428) …
Run Code Online (Sandbox Code Playgroud)

java spring osgi ibm-midrange osgi-bundle

5
推荐指数
1
解决办法
5144
查看次数

在两个表上使用相交?

我试图找到所有四个表共有的行.我试过用这个:

SELECT * 
FROM TABLE1 
INTERSECT
SELECT *
FROM TABLE2
INTERSECT
SELECT *
FROM TABLE3
 INTERSECT
SELECT *
FROM TABLE4;    
Run Code Online (Sandbox Code Playgroud)

但是没有结果,我知道有些行符合这个要求.因为使用union而不是添加"order by",我会看到来自不同表的四行具有相同的描述.

mysql sql database sql-server ibm-midrange

5
推荐指数
1
解决办法
127
查看次数

在IBM i 7.1上,是否可以从PHP cURL扩展访问*SYSTEM证书库?

我们运行Zend Server 7PHPV7R1 IBM i.我们使用cURL PHP扩展来调用SSL加密的Web服务.我们需要指定CA证书捆绑包,以便cURL可以验证Web服务证书.

理想情况下,我们想要一些方法来使用SYSTEM证书存储,因此我们只需要在一个地方管理证书,因为我们也从RPG进行SSL加密的Web服务调用.

系统细节:

IBM i:V7R1

PHP:5.4.29

cURL:7.21.0,OpenSSL/0.9.8y

php ssl curl zend-server ibm-midrange

5
推荐指数
1
解决办法
242
查看次数

在RPGILE中为AS/400编程的最佳IDE是什么?你可以使用Visual Studios IDE连接到400吗?

在RPGILE中为AS/400编程的最佳IDE是什么?你可以使用Visual Studios IDE连接到400吗?

我是一名C#程序员,他爱上了Visual Studios,并且比使用pdm编辑器多年来一直使用rpg编程的人更年轻.

我的问题是,有没有办法在RPGILE /连接到Visual Studio中的AS/400?

我的后续问题 - 我应该使用另一个IDE吗?亲爱的上帝,我所需要的只是智能感知!

在此先感谢,并且非常尊重RPG程序员.

rpgle visual-studio ibm-midrange

5
推荐指数
1
解决办法
2431
查看次数