小编Dzi*_*ars的帖子

Kafka 消息头是否是放置事件类型名称的正确位置?

在为单个主题生成多个单域事件类型并且消费者仅使用事件类型子集的情况下,我需要一种在采取操作之前读取事件类型的好方法。我看到两个选项:

  1. 将事件类型(例如“ORDER_PUBLISHED”)放入消息正文(有效负载)本身,这类似于与代理无关的方法,并且具有其他优点。但需要解析每条消息以了解事件类型。
  2. 利用 Kafka 消息标头,无需额外的负载解析即可使用消息。

上下文是事件溯源。小命令,小有效负载。没有巨大的机构需要解析。戈朗。所有消息都是 protobuf。gRPC。

这种情况下的典型工作流程是什么?

我尝试用谷歌搜索这个主题,但没有找到太多关于 headers 用例和良好实践的信息。很高兴听到何时以及如何使用 Kafka 消息头以及何时不使用。

apache-kafka

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

ag-Grid-community 是否可以有自己的自定义上下文菜单

找不到确切的答案。如果我决定选择普通 JavaScript(非 Angular & Co)ag-Grid-community 版本,我可以轻松添加自己的自定义上下文菜单和其他自定义扩展吗?正如我所看到的,上下文菜单只是企业级功能。我看到一些步骤有一些警告,但我个人并没有深入挖掘。总的来说,在ag-Grid-community中实现自建功能是多么容易。或者自己写网格更好?

ag-grid

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

如何在相同包的2个单独文件中拆分GO Gorilla Mux路由

我有单独的文件routes.go(包路由),我存储我的所有路由和处理程序.但我想将此文件拆分为2个文件.我想将我的routes.go重命名为main.go并创建新的附加文件moduleX.go(包路由).我怎样才能做到这一点?我想将所有路由存储在相同"包路由"的多个文件中.

package routes

import (
	"github.com/gorilla/mux"
	"net/http"
	"github.com/---/001/models"
	"github.com/---/001/sessions"
	"github.com/---/001/utils"
	"github.com/---/001/middleware"
)

func NewRouter() *mux.Router {
	r := mux.NewRouter()
	r.HandleFunc("/", middleware.AuthRequired(indexGetHandler)).Methods("GET")
	r.HandleFunc("/", middleware.AuthRequired(indexPostHandler)).Methods("POST")
	r.HandleFunc("/signup", signupGetHandler).Methods("GET")
	r.HandleFunc("/signup", signupPostHandler).Methods("POST")
	r.HandleFunc("/signin", signinGetHandler).Methods("GET")
	r.HandleFunc("/signin", signinPostHandler).Methods("POST")
	r.HandleFunc("/signout", signoutGetHandler).Methods("GET")
	r.HandleFunc("/services", middleware.AuthRequired(servicesHandler)).Methods("GET")
	fs := http.FileServer(http.Dir("./static/"))
	r.PathPrefix("/static/").Handler(http.StripPrefix("/static/", fs))
	return r
}
Run Code Online (Sandbox Code Playgroud)

我想在此主文件之外移动所有"/ signup"和"/ signin"路由和处理程序.然后以某种方式将它们传递回NewRouter函数.你可以给我一本书或一些在线的例子.

routes go mux gorilla

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

如果不存在则切换 appendChild,如果存在则切换为 removeChild

我想要一个按钮来切换文档中的元素。我不想使用 class display: none if/else 语句。相反,如果它不存在,我想 appendChild,如果它存在,那么我想 removeChild。有一个我想要实现的想法,但我在那里遇到了一些问题。该元素已显示,但在下次单击时,它不会被删除,而是会得到它的多个副本。(我想是这样)。请不要使用jQuery。仅限普通 JavaScript。不知道它是否重要,但是my-elementHTML <template>

<body>
    <button id="my-button">Toggle</button>
    <template id="my-element">
        <div>
            Some content
        </div>
    </template>
<script>
    let element = document.getElementById('my-element');
    let content = element.content;

    function toggle () {
        if (document.body.contains(content)) {
            document.body.removeChild(content);
        } else {
            document.body.appendChild(content);
        }
    }

    let button = document.getElementById('my-button');
    button.addEventListener('click', toggle, false);
</script>
</body>
Run Code Online (Sandbox Code Playgroud)

javascript

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

标签 统计

ag-grid ×1

apache-kafka ×1

go ×1

gorilla ×1

javascript ×1

mux ×1

routes ×1