我有一个使用托管(免费)AzureDevops 管道的问题。我有一个小的 .NET Core 项目,我想创建一个 Azure Devops 管道,其中完成以下操作
我在 Azure Devops 中的项目中有以下提要设置
哪个有这个提要的连接信息
..../NugetProjects/_packaging/nugetprojectstestfeed/nuget/v3/index.json
它还应用了以下安全性(注意项目集合构建服务设置为“贡献者”)
这是从 Microsoft 官方文档的这一段中说的
若要发布到 Azure Artifacts 源,请将项目集合生成服务标识设置为源上的贡献者。
然后我有这个构建管道设置(Yaml)
# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
buildConfiguration: 'Release'
Major: '1'
Minor: '0'
Patch: '0'
steps:
- task: DotNetCoreCLI@2
displayName: 'Restore'
inputs:
command: …
Run Code Online (Sandbox Code Playgroud) 这基于此SO中提供的代码:编写Rx"RetryAfter"扩展方法
我正在使用Markus Olsson的代码(目前仅进行评估),之前有人要求我试图在Github上抓住Markus,但是在我工作的地方被阻止了,所以我觉得我唯一能做的就是问在这里.很抱歉,如果这与任何人都很糟糕.
所以我在一个小的演示中使用以下代码:
class Attempt1
{
private static bool shouldThrow = true;
static void Main(string[] args)
{
Generate().RetryWithBackoffStrategy(3,
MyRxExtensions.ExponentialBackoff,
ex =>
{
return ex is NullReferenceException;
}, Scheduler.TaskPool)
.Subscribe(
OnNext,
OnError
);
Console.ReadLine();
}
private static void OnNext(int val)
{
Console.WriteLine("subscriber value is {0} which was seen on threadId:{1}",
val, Thread.CurrentThread.ManagedThreadId);
}
private static void OnError(Exception ex)
{
Console.WriteLine("subscriber bad {0}, which was seen on threadId:{1}",
ex.GetType(),
Thread.CurrentThread.ManagedThreadId);
}
static IObservable<int> Generate()
{
return Observable.Create<int>(
o =>
{ …
Run Code Online (Sandbox Code Playgroud) 因此,我正在尝试使用Kafka流进行交互式查询.我有Zookeeper和Kafka在本地运行(在Windows上).我使用C:\ temp作为存储文件夹,对于Zookeeper和Kafka.
我已经设置了这样的主题
kafka-topics.bat --zookeeper localhost:2181 --create --replication-factor 1 --partitions 1 --topic rating-submit-topic
kafka-topics.bat --zookeeper localhost:2181 --create --replication-factor 1 --partitions 1 --topic rating-output-topic
Run Code Online (Sandbox Code Playgroud)
阅读我已经完成了这个问题
我已阅读此文档页面:http://docs.confluent.io/current/streams/developer-guide.html#querying-remote-state-stores-for-the-entire-application
我还在这里阅读了Java示例:https://github.com/confluentinc/examples/blob/3.3.0-post/kafka-streams/src/main/java/io/confluent/examples/streams/interactivequeries/kafkamusic /KafkaMusicExample.java
并且还阅读了这篇类似的帖子,它最初听起来像我一样的问题:无法从StateStore的其他应用程序访问KTable
这就是我的设置.那么问题是什么?
所以我说我正在尝试创建自己的应用程序,它允许使用自定义Akka Http REST Api(推荐的RPC调用)进行交互式查询,以允许我查询我的KTable
.实际的流处理似乎正在按预期发生,我能够打印出结果,KTable
并且它们与主题产生的内容相匹配.
所以存储方面的东西似乎正在发挥作用
尝试使用该Streams.allMetadata()
方法时,似乎会出现问题,它返回一个空列表.
我在用
制片人代码
这是我的制作人的代码
package Processing.Ratings {
import java.util.concurrent.TimeUnit
import Entities.Ranking
import Serialization.JSONSerde
import Topics.RatingsTopics
import scala.util.Random
import org.apache.kafka.clients.producer.ProducerRecord
import org.apache.kafka.clients.producer.KafkaProducer
import org.apache.kafka.common.serialization.Serdes …
Run Code Online (Sandbox Code Playgroud) apache-kafka kafka-consumer-api kafka-producer-api apache-kafka-streams
我对 Redis 很陌生,并且正在评估它。我从这里使用 Redis 服务器:https : //github.com/downloads/dmajkic/redis/redis-2.4.5-win32-win64.zip
我还在服务器上使用以下配置:
端口 6379 超时 300 保存 900 1 保存 300 10 保存 60 10000 日志级别调试日志文件标准输出数据库 1 maxclients 32 maxmemory 2147483648
我正在尝试使用 ServiceStack 客户端 (ServiceStack-ServiceStack.Redis-4add28a) 运行这样的代码
这是我的代码
public void InsertInsideTransaction(bool shouldTransactionRollback)
{
RedisClient transClient = new RedisClient("localhost");
ClearAll();
using (var trans = transClient.CreateTransaction())
{
trans.QueueCommand(r =>
{
var redisUsers = r.GetTypedClient<User>();
var sacha = new User { Id = redisUsers.GetNextSequence(), Name = "Sacha Barber" };
redisUsers.Store(sacha);
//redisUsers.Dispose();
});
//commit or rollback based on …
Run Code Online (Sandbox Code Playgroud) 我只是想React-Boostrap
和React-Router
并在一起运行。我使用Create React App创建了一个简单的 shell。
这是我的代码,它与实际工作很好 React Router
import React, { Component } from "react";
import { RouteComponentProps, useHistory } from 'react-router';
import {
BrowserRouter as Router,
Switch,
Route,
useParams,
BrowserRouter
} from "react-router-dom";
import 'bootstrap/dist/css/bootstrap.min.css';
import {
Nav,
Navbar
} from "react-bootstrap";
function Navigation() {
return (
<BrowserRouter >
<div>
<Navbar bg="light" expand="lg">
<Navbar.Brand href="#home">React-Bootstrap</Navbar.Brand>
<Navbar.Toggle aria-controls="basic-navbar-nav" />
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="mr-auto">
<Nav.Link href="/">Home</Nav.Link>
<Nav.Link href="/about">About</Nav.Link>
<Nav.Link href="/users/1">/users/1</Nav.Link>
<Nav.Link href="/users/2">/users/2</Nav.Link>
<Nav.Link href="/users2/1">/users2/1</Nav.Link>
</Nav>
</Navbar.Collapse> …
Run Code Online (Sandbox Code Playgroud) 当前设置
我们有一个UI(超过1个UI,但这不相关),我们有2个负载均衡的应用服务器.这样的UI将与别名对话,后面是2个负载均衡器应用服务器.应用服务器也是自托管NServiceBus端点.处理当前请求的应用服务器(可能是App Server 1或App Server 2)能够使用自托管的NServiceBus执行以下操作:
"App Server(s)"当前的App.Config
因此,每个应用服务器的App.Config都有这样的东西
<UnicastBusConfig ForwardReceivedMessagesTo="audit">
<MessageEndpointMappings>
<add Assembly="Messages" Type="PublisherCommand" Endpoint="Publisher" />
<add Assembly="Messages" Type=" Worker1Command" Endpoint="Worker1" />
<add Assembly="Messages" Type=" Worker2Command" Endpoint="Worker2" />
<!-- This one is sent locally only -->
<add Assembly=" Messages" Type="RunCalculationCommand" Endpoint="Dealing" />
</MessageEndpointMappings>
</UnicastBusConfig>
Run Code Online (Sandbox Code Playgroud)
"发布者"当前的App.Config
目前是"发布者"App.Config
<UnicastBusConfig ForwardReceivedMessagesTo="audit">
<MessageEndpointMappings>
</MessageEndpointMappings>
</UnicastBusConfig>
Run Code Online (Sandbox Code Playgroud)
"工人"当前的App.Config
目前工作者App.Configs目前只需要订阅另一个端点"Publisher",他们的配置文件如下所示:
<UnicastBusConfig ForwardReceivedMessagesTo="audit">
<MessageEndpointMappings>
<add Assembly="Messages" Type="SomeEvent" Endpoint="Publisher" />
</MessageEndpointMappings>
</UnicastBusConfig>
Run Code Online (Sandbox Code Playgroud)
现在,所有其他发送给工作人员的消息都直接来自其中一个应用服务器,如上面App.Config中针对应用服务器所示.
这一切都正常.
事情是我们有一个单点的失败,如果"辅助服务盒"死了,我们就塞满了.
所以我们想知道我们是否可以使用多个"辅助服务盒(每个都有一个Publishers/Worker1/Worker2)".理想情况下,它们将完全按照上述方式工作,如上图所示.如果"辅助服务箱1"可用,则使用,否则我们使用"辅助服务箱2"
我已经阅读了有关分销商(但没有使用它),如果我说的正确,我们可以在AppServer本身使用,我们将每个AppServer视为分销商和工人(对于案例)在哪里我们需要执行SendLocal命令(RunCalculationCommand)我们需要运行).
如果"辅助服务箱"必须为每个包含的端点使用分销商:
所以我们最终会得到这样的结论:
有人可以帮助我知道我是否正在考虑这种方式,或者我是否离开了.
基本上我想知道的是:
我正在尝试启动一个新的SBT Scala项目并在build.sbt
文件中包含以下内容:
name := "ScalaKafkaStreamsDemo"
version := "1.0"
scalaVersion := "2.12.1"
libraryDependencies += "javax.ws.rs" % "javax.ws.rs-api" % "2.1" artifacts(Artifact("javax.ws.rs-api", "jar", "jar"))
libraryDependencies += "org.apache.kafka" %% "kafka" % "2.0.0"
libraryDependencies += "org.apache.kafka" % "kafka-streams" % "2.0.0"
Run Code Online (Sandbox Code Playgroud)
所以根据GitHub repo,在2.0.0中我应该看到我想要使用的Scala类/函数等,但它们似乎似乎不可用.在IntelliJ中我可以打开kafka-streams-2.0.0.jar
,但我没有看到任何Scala类.
我需要包含另一个JAR吗?
就在我们讨论额外JAR的问题时,是否有人知道我需要包含哪些JAR才能使用EmbeddedKafkaCluster
?
在我开始之前,让我说我是RavenDB的新手.
我现在正在评估它,并且正在使用RavenDB-Build-616版本.我有服务器正在运行,即我已手动启动"Raven.Server.exe",并具有以下测试代码
public class RavenFullTextSearchDemo
{
private DocumentStore documentStore;
private List<string> firstNames = new List<string>() { "John", "Peter", "Paul", "Sam", "Brendon" };
private List<string> lastNames = new List<string>() { "Simons", "Black", "Benson", "Jones", "Breckwell" };
private Random rand = new Random();
public RavenFullTextSearchDemo(DocumentStore documentStore)
{
this.documentStore = documentStore;
}
public void Run()
{
IndexCreation.CreateIndexes(typeof(RavenFullTextSearchDemo).Assembly, this.documentStore);
using (IDocumentSession session = documentStore.OpenSession())
{
//add some random Users
for (int i = 0; i < 5; i++)
{
string name = string.Format("{0} {1},", …
Run Code Online (Sandbox Code Playgroud) apache-kafka ×2
azure-devops ×1
c# ×1
nservicebus ×1
nuget ×1
ravendb ×1
react-router ×1
reactjs ×1
redis ×1
scala ×1