小编Ric*_*oli的帖子

Spring Cloud Zuul 回退服务

是否可以设置到主服务器/服务器/服务的代理,但是当这不可用时,将请求重定向到辅助服务器/服务器/服务?

次要服务不是与主要服务相同类型的实例。它们的 API 兼容但不相同。当主要资源不可用时,次要资源是性能较差的最后一个资源。

我们还没有使用 Eureka,只使用固定 IP。

zuul:
  routes:
    whatever:
      path: /whatever/**
      sensitiveHeaders: Cookie,Set-Cookie
      url: http://server1:8080/whatever
Run Code Online (Sandbox Code Playgroud)

我看了一下ZuulFallbackProvider,但是这个接口是为了在错误的情况下提供一个固定的响应。我想,当http://server1:8080/whatever没有响应时,重定向到http://server2:8080/whateverApi2

谢谢。

spring spring-cloud netflix-zuul

4
推荐指数
1
解决办法
2537
查看次数

Spring Cloud AWS SQS删除策略

我们有一个SQS侦听器,例如:

@MessageMapping("queueName")
void listen(String message) { ... }
Run Code Online (Sandbox Code Playgroud)

此队列具有配置有关联的死信队列的重新驱动策略。

问题是默认的Spring Cloud AWS实施是在轮询消息时删除消息,并在内部进行3次重试以进行处理,然后失败。

我可以看到有一个带有ALWAYS和ON_SUCCESS值的SqsMessageDeletionPolicy枚举。我在任何文档中都找不到如何更改该队列的QueueAttributes以更改此行为。

有谁知道吗

amazon-sqs aws-sdk spring-cloud

1
推荐指数
2
解决办法
1366
查看次数

如何展平案例类中的序列

在Scala中,对于包含要分解的数组的case类,是否可以更有效地使用平面地图?

这是一个有效的代码,但看起来不正确:

object stuff {
    def main(args: Array[String]): Unit = {
        case class Stuff(name: String, stuff: Seq[String])
        case class FlatStuff(name: String, stuff: String)

        val someStuff = Array(Stuff("a", Seq("1", "2", "3")), Stuff("b", Seq("4", "5")))

        val stuffs = someStuff.flatMap(item => {
            val flatten = new Array[FlatStuff](item.stuff.length)
            for (i <- 0 until item.stuff.length) {
                flatten(i) = FlatStuff(item.name, item.stuff(i))
            }
            flatten
        })

        stuffs.foreach(stuff => println(stuff))
    }
}
Run Code Online (Sandbox Code Playgroud)

scala flatten scala-collections flatmap

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