通常,对Azure工作人员的访问是通过服务定义中定义的端点完成的.这些端点(必须是TCP或HTTP(S))通过负载平衡器传递,然后连接到Azure计算机的实际IP /端口.
我的应用程序将从UDP的使用中受益匪浅,因为我从蜂窝设备连接,其中字节计数用于计费,而SYN/ACK/FIN的开销使我发送的8字节数据包相形见绌.我甚至考虑将我的数据直接放入ICMP消息头.但是,负载均衡器不支持这一点.
我知道你可以在Azure虚拟机上启用ping然后ping它们 - http://weblogs.thinktecture.com/cweyer/2010/12/enabling-ping-aka-icmp-on-windows-azure-roles.html.
有什么阻止我使用基于TCP的服务(通过负载均衡器公开),只是分发Azure VM地址的IP地址和端口,然后让应用程序直接与该工作者通信?(我必须自己处理负载平衡.)如果工作人员关闭或移动,我的应用程序将足够聪明,可以重新连接到TCP端点并要求新的位置来发送数据.
这个概念是否有效,或者是否有某些东西可以阻止这种直接访问?
我只是在学习wcf并且无法理解一个非常基本的东西.
我正在创建一个WCF服务,我想在IIS中托管,就像Web应用程序一样,它有自己的路径http://myhost/myapp/和所有东西.
我正在VS中创建WCF服务项目,我有一个*.svc描述它的文件,然后我像这样定义一个简单的端点:
<endpoint address=""
binding="basicHttpBinding"
contract="wcf_service_auth.IPshService" />
Run Code Online (Sandbox Code Playgroud)
然后我将这个服务像IIS Web应用程序一样发布到虚拟目录,我们假设它的名称psh_pub,所以我可以通过url访问该服务http://localhost/psh_pub/pshservice.svc/.它向我展示了WCF问候页面并给了我一个WSDL链接,它给了我正确的wsdl描述.
没关系.
下一步 - 我想添加一个MEX端点.我添加到配置:
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"/>
Run Code Online (Sandbox Code Playgroud)
也没关系,端点可以在地址访问,http://localhost/psh_pub/pshservice.svc/mex并WcfTestClient.exe从该URL提供正确的配置.
问题来了.
我有一个在IIS下工作的WCF服务,我想再添加一个端点.例如,让它成为一个net.tcp端点.IIS默认配置为接受net.tcp端口808的连接,我正在net.tcp为我的Web应用程序的属性添加协议,我想将端点添加到我的服务中:
<endpoint address=""
binding="netTcpBinding"
contract="wcf_service_auth.IPshService" />
Run Code Online (Sandbox Code Playgroud)
现在我假设我的服务应该可以通过网址访问net.tcp://localhost:808/psh_pub/pshservice.svc.但事实并非如此.网上的每个"操作方法"和手册都告诉我应该在配置文件中指定完整地址,如下所示:
<endpoint address="net.tcp://localhost:808/psh_pub/pshservice.svc"
binding="netTcpBinding"
contract="wcf_service_auth.IPshService" />
Run Code Online (Sandbox Code Playgroud)
如果我这样做,它的确有效.但是如果将服务托管在另一个虚拟目录中,我将需要更改配置.如果我在另一台服务器上托管它,我需要更改配置.如果我在多台服务器上托管它,我将必须维护与我拥有的服务器一样多的配置.
所以主要问题是:
是否有任何方法在WCF中指定net.tcpIIS托管的WCF服务的(或https)端点而不指定它的绝对URL?
我有一个jsPlumb.connect函数的问题.我有一个应用程序,用户可以添加<div>元素,获取jsPlumb端点.用户可以将所有这些元素相互连接起来.该图表可以保存在MySQL数据库中(采用JSON格式).
当用户从数据库加载图表时,我可以使用我的addElement和addEndpoint函数重新创建元素和端点.但是当我调用jsPlumb Connect方法(只是从数据库创建图表时调用)时,为了绘制连接线,它为每个连接元素创建一个新的enpoint
所以我的问题是,每次调用connect方法时如何防止创建新的端点?
我在Azure上运行了一个FTP服务器.我不得不为"数据"连接手动添加20个端点.
这很痛苦.

当然,以某种方式将端点批量添加到Azure VM有更好的方法吗?如果是这样,有人可以列出一些指示吗?我对任何事都持开放态度.
例如.我很想创造
TCP public port 61020 - private port 61020
至
TCP public port 61100 - private port 61100
嗯....
如何使用正在发送的令牌测试文件上传?我返回“0”而不是确认上传。
这是一个失败的测试:
var chai = require('chai');
var expect = chai.expect;
var config = require("../config"); // contains call to supertest and token info
describe('Upload Endpoint', function (){
it('Attach photos - should return 200 response & accepted text', function (done){
this.timeout(15000);
setTimeout(done, 15000);
config.api.post('/customer/upload')
.set('Accept', 'application.json')
.send({"token": config.token})
.field('vehicle_vin', "randomVIN")
.attach('file', '/Users/moi/Desktop/unit_test_extravaganza/hardwork.jpg')
.end(function(err, res) {
expect(res.body.ok).to.equal(true);
expect(res.body.result[0].web_link).to.exist;
done();
});
});
});
Run Code Online (Sandbox Code Playgroud)
这是一个工作测试:
describe('Upload Endpoint - FL token ', function (){
this.timeout(15000);
it('Press Send w/out attaching photos returns error message', function (done){
config.api.post('/customer/upload') …Run Code Online (Sandbox Code Playgroud) 当我使用专用终结点运行 Azure 应用程序服务的发布管道时,发生以下错误错误:无法获取 Kudu 应用程序设置。错误:IP 被禁止(代码:403)
有什么建议吗?
我正在开发一个由多个后端服务和前端客户端组成的应用程序.整个应用程序是用Java编写的,我们使用Apache TomEE webserver来运行它.
后端服务公开了几个API,并包含多个控制器.其中一些API可供前端客户端访问,一些API用于后端服务之间的内部通信.
记录对于此应用程序非常重要.要求在开始正常操作之前始终初始化日志记录系统(以确保完全可追溯性).该应用程序使用安全日志记录系统,该系统需要密钥来初始化日志记录(使用此密钥对日志进行签名以防止篡改日志).还需要将日志记录密钥上载到每个服务.每个后端服务都有一个端点,用于接收日志密钥.
存在"鸡或蛋"类型的问题.应用程序需要运行才能接收密钥,但在收到密钥之前,应用程序也不应完全正常运行.
为了满足这些要求,我们正在考虑以下启动程序:
是否有一种激活端点的标准方法来促进此启动过程?或者无论如何控制对端点的访问.
一些额外的信息:应用程序中的控制器类不扩展任何其他类,并且仅使用@Path和@Stateless注释进行修饰.
我按照使用过滤器的方法(如下面的Bogdan所建议的).我创建了一个捕获所有请求的过滤器.应用程序正确启动.init()调用过滤器类中的方法.但是当我访问/installkey端点时会发生错误.
似乎发生的是doFilter(ServletRequest, ServletResponse, FilterChain)调用该方法,并且我的代码检测到请求是针对/installkey端点的.但是电话错误来自:filterChain.doFilter(request, response);.
我已经检查过,而且我知道变量filterChain不是null,但是在方法中doFilter(ServletRequest, ServletResponse, FilterChain)出了问题,我无法调试它.
可能,我没有初始化需要初始化的东西.
我添加了下面的输出.
现在我有以下内容web.xml:
<filter>
<filter-name>myFilter</filter-name>
<filter-class>com.company.filter.LoggingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>myFilter</filter-name>
<url-pattern>*</url-pattern>
</filter-mapping>
Run Code Online (Sandbox Code Playgroud)
以下课程:
public class LoggingFilter implements Filter {
@Override
public void init(final FilterConfig filterConfig) throws ServletException {
}
public void doFilter(final ServletRequest request,
final ServletResponse response,
final FilterChain …Run Code Online (Sandbox Code Playgroud) 我有一个有两个端点的 ASP.NET Core 应用程序。一个是MVC,另一个是Grpc。我需要 kestrel 在不同的套接字上发布每个端点。示例:localhost:8888 (MVC) 和 localhost:8889 (Grpc)。
我知道如何在 Kestrel 上发布两个端点。但问题是它在两个端点上都发布了 MVC 和 gRPC,我不想要那样。这是因为我需要 Grpc 请求使用 Http2。另一方面,我需要 MVC 请求使用 Http1
在我的 Statup.cs 上我有
public void Configure(IApplicationBuilder app)
{
// ....
app.UseEndpoints(endpoints =>
{
endpoints.MapGrpcService<ComunicacaoService>();
endpoints.MapControllerRoute("default",
"{controller}/{action=Index}/{id?}");
});
// ...
Run Code Online (Sandbox Code Playgroud)
我需要一种方法来endpoints.MapGrpcService<ComunicacaoService>();在一个套接字上和endpoints.MapControllerRoute("default","{controller}/{action=Index}/{id?}");另一个套接字上发布。
我花了一些时间来调查Endpoint.publish可以做什么和不能做什么,看起来你很快就进入了无证领域.
如果您构建一个简单的独立应用程序,它使用Endpoint.publish公开一个或多个@WebService注释类,然后您遇到无法再使用Endpoint.publish的情况(出于任何原因)什么是最简单的迁移路径?
我知道您可以使用sun-jaxws.xml和可选的Metro jar创建一个WAR,然后可以将其部署到嵌入式Web服务器(如Jetty或Winstone),但我喜欢简单的"拿这个类并在这个URL上公开它" Endpoint.publish()的API,没有任何XML或完整容器.
有没有办法做到这一点?
我无法连接到使用 cli 本地运行的 DynamoDB。
aws dynamodb list-tables --endpoint-url http://localhost:8000
无法连接到端点 URL:“http://localhost:8000/”
这也不起作用:
aws dynamodb list-tables --region local
无法连接到端点 URL:“http://localhost:8000/”
我尝试使用不同的端口,但没有帮助。我也禁用了所有代理。我可以使用这样的应用程序连接到 DynamoDB,所以我知道这不是 dynamodb 问题:
aws dynamodb list-tables --endpoint-url http://dynamodb.us-west-2.amazonaws.com --region us-west-2
{“表名”:[“音乐”]}
java endpoint amazon-web-services amazon-dynamodb amazon-dynamodb-local