kdb中服务器和网关用户管理的良好体系结构设计

kdb中服务器和网关用户管理的良好体系结构设计,kdb,Kdb,我有两个网关连接到记录用户详细信息的服务器。 我可以想出两种方法来记录用户通过网关访问服务器的情况 第一种方式: 日志记录在服务器端完成,即 Server(port 5001) Code: au:([user:`$()]; tim:`timestamp$()); /- Table to maintain logged users .z.pw:{`au upsert (x;.z.n); show y; 1b} Gateway 1: h:hopen `::5001:a:uts1 Gateway

我有两个网关连接到记录用户详细信息的服务器。
我可以想出两种方法来记录用户通过网关访问服务器的情况

第一种方式: 日志记录在服务器端完成,即

Server(port 5001) Code:
au:([user:`$()]; tim:`timestamp$()); /- Table to maintain logged users
.z.pw:{`au upsert (x;.z.n); show y; 1b}

Gateway 1:
h:hopen `::5001:a:uts1

Gateway 2:
h: hopen `::5001:b:uts2
第二种方式: 日志记录是从网关完成的,即

Server(port 5001) Code:
au:([user:`$()]; tim:`timestamp$()); /- Table to maintain logged users

Gateway 1:
q)h:hopen `::5001:a:uts1
q)h"`au upsert (`a;.z.p)"

Gateway 2:
q)h: hopen `::5001:b:uts2
q)h"`au upsert (`b;.z.p)"
因此,在服务器端(服务器)或客户端(在本例中为网关)编写用户日志代码是好的,还是有更好的/标准的方法来做到这一点


编辑-如果我们在多个网关和多个服务器之间添加一个中间件(用户管理器),那么在这种情况下,在中间件(用户管理器)或客户端(本例中为网关)上编写用户日志代码会更好吗?

如果用户通过网关连接到多个服务器,我将在GW级别实现用户日志记录和身份验证。这将进一步将敏感数据从潜在的未经授权的用户中提取出来,并简化主记录帐户活动的保存,因为所有用户都需要通过GW。然后,在服务器端执行帐户活动需要在多个服务器上进行聚合,以全面了解系统活动

如果我们添加一个中间件,比如说在多个网关和多个服务器之间添加一个单用户管理器,那么在用户管理器或用户管理器上从网关进行日志记录会更好吗?