我有一个依赖于非常"实时"数据的Web应用程序 - 所以如果有变化,它需要每1秒更新一次.
我想知道以下解决方案的优点和缺点是什么.
解决方案1 - 轮询很多
所以每1秒,我向服务器发送一个请求并获取一些数据.一旦我获得了数据,我会等待1秒再重复一遍.如果州改变并采取适当的行动,我会检测到客户端.
解决方案2 - 阻止很多
所以我向服务器发起一个请求,在30秒后会超时.服务器通过每秒检查一次来监视服务器上的数据.如果服务器注意到数据已更改,则会将数据发送回客户端,客户端会采取相应的操作.
脚本
实质上,数据的大小相当小,但是根据实时事件以随机间隔进行更改.问题是,Web UI将在2,000个实例的区域中运行,因此我每秒有2,000个来自UI的请求,或者我有2,000个长时间运行的请求,最多需要30秒?
非常感谢帮助和建议,特别是如果您在类似的卷下使用AJAX请求.
我试图根据部分匹配检索案例的所有者,我们选择与部分匹配匹配的最新案例.
这是我正在尝试的查询:
SELECT User.CustomField__c
FROM User
WHERE User.Id IN (
SELECT OwnerId
FROM Case
WHERE Case.CaseNumber LIKE '%1026'
ORDER BY Case.CreatedDate DESC LIMIT 1)
Run Code Online (Sandbox Code Playgroud)
以下查询单独工作,但作为子查询的一部分似乎不高兴:
SELECT OwnerId
FROM Case
WHERE Case.CaseNumber LIKE '%1026'
ORDER BY Case.CreatedDate DESC LIMIT 1
Run Code Online (Sandbox Code Playgroud)
同样,如果我放弃它ORDER BY,LIMIT它的工作原理:
SELECT User.NVMContactWorld__NVM_Agent_Id__c
FROM User
WHERE User.Id IN (
SELECT OwnerId FROM Case
WHERE Case.CaseNumber LIKE '%1026')
Run Code Online (Sandbox Code Playgroud)
SOQL子查询中是否不允许订单/限制查询?
为了澄清这个问题,我正在处理的场景看起来像这样......
Salesforce组织可以为案例编号配置"显示格式".如果他们选择"4"数字,您将获得如下情况编号:
可以重新配置您的案例编号,以获得以下案例编号以及上面的案例编号......
我不希望人们对这个LIKE陈述感到困惑,问题是001234和1234是不同的情况,所以如果一个客户提供1234并且我找到两个记录,我想开始假设它们是最近的情况.
所以要么考虑声明,要么考虑包含LIKE的 …
我希望将测试框架合并到我正在构建的项目中,并且遇到了我喜欢的增强PHP但我在线查找相关信息有些困难,因为"增强php"是一个常用的短语.
有没有人使用这个框架,可能会指向我一些有用的指南?您是否使用过您认为更好的单元测试框架?
提前致谢.
在回应Gotzofter时,这是要测试的类:
<?php
include_once('EnhanceTestFramework.php');
class ExampleClass
{
private $OtherClass;
function __construct($mock = null)
{
if ($mock == null)
$this->OtherClass = new OtherExampleClass();
else
$this->OtherClass = $mock;
}
public function doSomething()
{
return $this->OtherClass->getSomething(1, 'Arg2');
}
}
class OtherExampleClass
{
public function getSomething()
{
return "Something";
}
}
class ExampleClassTests extends \Enhance\TestFixture
{
public function setUp()
{
}
public function tearDown()
{
}
public function verifyWithAMock()
{
$mock = \Enhance\MockFactory::createMock('OtherExampleClass');
$mock->addExpectation(
\Enhance\Expect::method('getSomething')
->with(1, 'Arg2')
->returns('Something')
->times(1)
); …Run Code Online (Sandbox Code Playgroud) 我一直无法使用Visual Studio 2012的TypeScript工作.有谁知道它是否只会安装在VS2012的完整版上?(我有VS 2012 Express for Web和VS 2012 Express for Desktop).
我已经尝试了我在这个网站上找到的所有建议,但仍然没有运气.VS和TypeScript都安装正确,但我无法在VS 2012 Express for Web中的任何位置看到TypeScript项目或新项目.
使用tsc命令就像运行一样简单:
tsc --out all.js js/*.ts
Run Code Online (Sandbox Code Playgroud)
在构建项目时,如何配置Visual Studio来执行此操作?
我正在使用Visual Studio Online - Package Manager Preview以及新的构建系统.包管理器预览添加了许多构建步骤,包括"NuGet Publisher"步骤,该步骤应将包推送到由Visual Studio Online托管的私有源.
现在文档有点不合时宜了.与auth和个人访问令牌的文档一样.有一些迹象表明,只要您设置了权限(构建服务帐户具有服务端点和包管理器扩展的权限),您就不应该在VSO和程序包管理器之间进行身份验证.实际的构建步骤会要求您从服务端点列表中进行选择,这就是我尝试过的.
当我在服务端点上没有放置凭据时,我收到错误:
Server Key must be set, set the password on the generic service
Run Code Online (Sandbox Code Playgroud)
当我尝试将API密钥放在服务端点上时,它似乎在保存时被丢弃...并且错误更改为:
2015-11-18T08:35:24.5678951Z Invoking nuget with push C:\a\1\s\EventViewer\bin\Release\Project.Name.1.1.12.0.nupkg -s https://example.pkgs.visualstudio.com/DefaultCollection/_packaging/example/nuget/v3/index.json usfusmx4ez6mlfqwpp2abzc7e37denfcp7bxsep2hqij3tp4qwvq on C:\a\1\s\EventViewer\bin\Release\Project.Name.1.1.12.0.nupkg
2015-11-18T08:35:24.5688946Z C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\default\agent\worker\tools\NuGet.exe push C:\a\1\s\EventViewer\bin\Release\Project.Name.1.1.12.0.nupkg -s https://example.pkgs.visualstudio.com/DefaultCollection/_packaging/Example/nuget/v3/index.json usfusmx4ez6mlfqwpp2abzc7e37denfcp7bxsep2hqij3tp4qwvq
2015-11-18T08:35:25.3467312Z Please provide credentials for: https://example.pkgs.visualstudio.com/DefaultCollection/_packaging/Example/nuget/v3/index.json
2015-11-18T08:35:25.3667189Z ##[error]Object reference not set to an instance of an object.
2015-11-18T08:35:25.3677179Z UserName: Password:
2015-11-18T08:35:25.4647059Z ##[error]Unexpected exit code 1 returned from tool NuGet.exe …Run Code Online (Sandbox Code Playgroud) 这是我在网上的第一个问题.希望它有意义.
我在Web上看到了几个与此问题相关的博客,我尝试了一些没有成功的想法.这是我的情况:
我有一个Web应用程序调用WCF Web服务,然后调用Java Web服务.它们都在不同的服务器上.WCF Web服务与java Web服务之间的调用未通过https,因为证书足以识别调用者(因此消息安全性).
Java Web服务需要接收签名消息并按以下方式工作:
在处理每个请求之前,处理程序拦截所有传入消息并执行以下验证规则:
1.消息是否包含安全标头
2.消息是否包含正确的安全标头ID
3.邮件
是否已正确签名4.邮件是否包含KeyInfo x.509证书
5. 证书是否从受信任的CA颁发 - 基于配置
6.证书是否有效(未过期,已撤销)
7 .证书是否包含正确的策略OID
一旦确认了所有这些步骤,就可以处理该消息,如果任何步骤失败,则将返回soap消息异常.
SOAP安全标头应根据xxx ... w3.org/TR/SOAP-dsig/数字签名规范进行验证.
最完整的描述可以在这里找到xxx ... ibm.com/developerworks/webservices/library/ws-security.html这篇IBM文章列出了每个WS-Security标头的详细信息,另外还提供了一个示例签名的SOAP消息.
签署SOAP消息时,还必须将x.509证书添加到消息KeyInfo中,这是证书验证所必需的.
SOAP请求应该是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<ds:Signature xmlns:ds="xxx...w3.org/2000/09/xmldsig#" Id="Signature001">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="xxx...w3.org/TR/2001/REC-xml-c14n-20010315"/>
<ds:SignatureMethod Algorithm="xxx...w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference URI="">
<ds:Transforms>
<ds:Transform Algorithm="xxx...w3.org/2000/09/xmldsig#enveloped-signature"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="xxx...w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>soe1PnaGXVGrsauC61JSHD+uqGw=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#KeyInfo001">
<ds:DigestMethod Algorithm="xxx...w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>Y9SRPQ9TcDu+GazO3LFwodEdhaA=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>jBX/8XkY2aCte7qgXEp1sbNWmQcK/90iVL58sAvwYAEcBABGzOk2agxR0HvWrNa6ixkocAQ205lggwOxnxZJvoVozVYAAjcLtayPBOUYrnSEBFrwKWP/vxgvUDRIdXeIuw5GLY87NrTQMm1Ehf/HvMX9hTBJn4Nm8RdDiUmPcIo=</ds:SignatureValue>
<ds:KeyInfo Id="KeyInfo001">
<ds:X509Data>
<ds:X509Certificate>MIIEbZCCA1WgAwIBAgIES1XpMjANBgkqhkiG9w0BAQUFADBYMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxFzAVBgoJkiaJk/IsZAEZFgdlbnRydXN0MRIwEAYDVQQDEwllbnRydXN0U00xEjAQBgNVBAMTCWVudHJ1c3RDQTAeFw0xMDA0MjIxMDQ4MDBaFw0xMzA0MjIxMTE4MDBaMGoxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDEXMBUGCgmSJomT8ixkARkWB2VudHJ1c3QxEjAQBgNVBAMTCWVudHJ1c3RTTTESMBAGA1UEAxMJZW50cnVzdENBMRAwDgYDVQQDEwdSYnMgUmJzMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMf88L2JjLPG1hNmTA/KBiC53WVwS2WU9Jh3lC1Rob6RMzOojomZ/dNrvSRB6nzWeXJpZXwik4XFrsAq24By2SZpLTO4p8Vcq71mTAfDu33cnO49Au2pwNvcMn5qIKBk1Xx+oVb4fzK9ncTRu7bW46HsIYth+qkGhbI2JEHwr/zwIDAQABo4IBrzCCAaswCwYDVR0PBAQDAgeAMCsGA1UdEAQkMCKADzIwMTAwNDIyMTA0ODAwWoEPMjAxMjA1MjgxNTE4MDBaMCMGA1UdIAQcMBowCwYJYIZIAYb6awoEMAsGCSqGSIb2fQdLAzAbBgNVHQkEFDASMBAGCSqGSIb2fQdEHTEDAgEBMIHGBgNVHR8Egb4wgbswb6BtoGukaTBnMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxFzAVBgoJkiaJk/IsZAEZFgdlbnRydXN0MRIwEAYDVQQDEwllbnRydXN0U00xEjAQBgNVBAMTCWVudHJ1c3RDQTENMAsGA1UEAxMEQ1JMMTBIoEagRIZCZmlsZTovLy8vTVNJREhVLTQ0NUE0RkVFL0NSTC9lbnRydXN0Y2FfZW50cnVzdHNtX2xvY2FsX2NybGZpbGUuY3JsMB8GA1UdIwQYMBaAFBvSL6cPz8L5shubV58yf0pczKzuMB0GA1UdDgQWBBT1/j6OSS8FTjwqluvew16sv7h+VzAJBgNVHRMEAjAAMBkGCSqGSIb2fQdBAAQMMAobBFY4LjADAgSwMA0GCSqGSIb3DQEBBQUAA4IBAQBXxRIA4HUvGSw4L+4uaR51pY4ISjUQWo2Fh7FYBMt29NsKCTdur1OWVVdndt1yjXP4yWXxoAhHtvZL+XNALUFlR2HAWiXuL1nRcxHkB98N5gPqQzW/lJk9cLtL4hVp28EiEpgmKT3I3NP2Pdb2G5MMOdvQ/GFb2y6OwblR8ViPQ8B2aHWzXMrH+0qadPAuBhXyAohwb+mMuYT/ms6xpGi1NMYuYMf6XONz9GkZgnGnMwa+9CCQws1HNz8WYHtmFIxLsVuEWc/0a1vg4IYX1Ds/ttyhJGTVXOSJSkBz8kRyj1pNBDdc1KeG8M++O8m8VgRTJvYaPc7NMiclISukGpea</ds:X509Certificate> </ds:X509Data>
</ds:KeyInfo>
</ds:Signature>
</S:Header>
<S:Body Id="ABC">
<ns2:createUser xmlns:ns2="http://webservice.rbs.emea.ps.entrust.com/" xmlns:ns3="http://webservice.rbs.emea.ps.entrust.com/types/CertificateException" xmlns:ns4="http://webservice.rbs.emea.ps.entrust.com/types/UserException">
<userID>0061020051</userID> …Run Code Online (Sandbox Code Playgroud) 我创建了一个Silverlight应用程序.在我已经在服务器端采用了一个实体框架模型,我在客户端没有客户端列表,我想将该列表传递给服务器端,当我尝试传递大约15到20个客户端时它会给我正确的输出但当我试图传递超过它时,它会给我一个错误,如:
超过了最大URI长度2083
如何从源代码构建TypeScript编译器(位于typescript.codeplex.com)?当我从git克隆它时,我看到一个Makefile,但是在cygwin中make失败,*** missing separator (did you mean TAB instead of 8 spaces?)
我找不到任何清晰的文档,并且源中的自述文件也无济于事。
如何将WCF customBinding设置为仅使用传输级安全性?
如果它是一个wsHttpBinding,它将是:
<security mode="Transport" />
Run Code Online (Sandbox Code Playgroud)
场景是我正在调用一个使用仅传输安全性的Java SOAP服务.没有消息签名.
typescript ×3
tsc ×2
wcf ×2
ajax ×1
ajax-polling ×1
azure-devops ×1
c# ×1
php ×1
polling ×1
salesforce ×1
silverlight ×1
soql ×1
unit-testing ×1
wcf-binding ×1
wcf-security ×1
web-services ×1