我们确实在我们的应用程序中使用了 Spring Boot Health Checks。在其中一个已检查的应用程序中,数据库似乎无法及时回答。我们正在使用 DataSourceHealthIndicator,这会在几秒钟后回答,但有一个例外,这很好,但需要不同的时间范围才能返回。
我们能否在这个 HealthIndicator 上设置一个超时(很可能也在其他人),以便 HealthIndicator 在最近的 2 秒后报告错误,如果无法建立到数据库的连接?
或者我们可以询问数据源是否还有可用的开放连接?
我知道,我们应该解决这些连接的问题,我们已经在处理这个问题,但是对于这样的事情进行 HealthCheck 也会很好。
我有一个小的 kubernetes (1.3) 集群(基本上是一个节点)并且想在那里安装 gogs。Gogs 是使用 Helm 来“安装”的。我的掌舵图中确实有以下模板:
http-stuff 配置正确,我可以通过 http 访问容器以及包含的 git-repositories,没有任何问题。现在我也想将 ssh 用于 git 连接。我尝试了 nginx-ingress 的 --tcp-services-configmap 配置,但无济于事。Ingress Controller 的日志指出,配置的服务没有任何活动端点,我觉得这很奇怪,因为 http 东西正在工作。
更新
我刚刚在 DNS 上做了一个 nmap 并且端口 2222 没有打开。这看起来像一个配置问题。端口在容器上是打开的(通过从 ndoe 连接到集群 ip 进行测试)。
猜测问题出在 Ingress Controller 的日志中,配置的服务没有任何活动的端点。
我的服务配置是:
apiVersion: v1
kind: Service
metadata:
name: {{ template "fullname" . }}
labels:
app: {{ template "fullname" . }}
spec:
ports:
- name: …Run Code Online (Sandbox Code Playgroud) 我在 Clojure 中有以下数据结构:
(def test-data [{:year 2023
:quarter 1
:month 1
:week 1
:date (jt/local-date 2023 1 2)
:name "Name1"
:value 5}
{:year 2023
:quarter 1
:month 1
:week 1
:date (jt/local-date 2023 1 2)
:name "Name2"
:value 3}])
Run Code Online (Sandbox Code Playgroud)
现在我想按不同的关键字动态地对该数据集进行分组(例如:按年、周和名称或按年、月和名称或仅按名称)。
我尝试使用一些结构来实现这一点,例如:
(defn group-year-week-name [group-keys rows]
(let [group-keys-set (set group-keys)]
(map (fn [[grp-key values]] {(keyword (first grp-key)) (first grp-key)
...
:value-sums (reduce (+ :value values))
:values values
})
(group-by (juxt :week :year) rows))))
Run Code Online (Sandbox Code Playgroud)
但这不起作用,也不是真正动态的(首先参见......)。
关于这个有什么提示吗?
更新(提供更多输入):
使用调用“动态”分组函数的不同参数预计会得到以下结果。
group-year-week
{:year 2023 :month …Run Code Online (Sandbox Code Playgroud)