WebSocket webshop后台服务器的一些全局数据结构

简介: WebSocket webshop后台服务器的一些全局数据结构

这些数据结构都维护在内存中,目前无持久化。


位置:wsServerforWebShop.js


oTransactionID_SiteDetailMap

每次webshop的KOI login按钮点击之后,服务器会生成一个新的session,同时在这个数据结构(类似于hashmap)里插入一条记录:


key:transaction id


image.pngvalue:主要有data和dataFromWebShop两个对象。

data对象里只有一个字段QRCode,值和这条记录对应的key相同。image.pngdataFromWebShop对象包含了该webshop的名称,和支持的Consent字段,上图表明Nike webshop支持firstName,lastName和email三个字段。


clientAddress:该WebSocket服务器作为TCP客户端和Orchestra连接的IP地址。


clientSocketID:同该WebSocket服务器建立ws连接的webshop对应的套接字。


oKOIID_TransactionIDMap

每次KOI App点了confirm按钮后,会生成一个ConfirmRequest的请求,请求数据里包含了该user的KOIID,因此后台会把这个KOIID同ConfirmRequest里附带的Transaction ID做绑定。这样接下来user在KOI App上进行Global profile update的时候,后台就知道应该把这些update请求dispatch到哪些Web Shop实例上。


image.png逻辑就是通过KOIID找到所有的transaction ID,通过transaction ID和刚刚介绍的数据结构oTransactionID_SiteDetailMap即可找到每个关联的web shop实例。


oGlobalProfileValueUpdateNotificationTaskQueue

KOI App发送的Global profile update请求,即下图左边的简化示意图,被后台服务器处理后,成为下图中间的数据结构:


image.png在代码中的一个例子为:image.png这个数据结构会进一步被加工为可以直接发送给每一个相关的WebShop实例的数据,最终待发送的数据结构如下图:image.png

相关文章
|
4月前
|
移动开发 缓存 网络协议
Websocket协议原理及Ws服务器代码实现
Websocket协议原理及Ws服务器代码实现
|
4月前
|
网络协议 C++ 数据格式
websocket协议介绍与基于reactor模型的websocket服务器实现
websocket协议介绍与基于reactor模型的websocket服务器实现
61 0
|
16天前
|
JSON JavaScript 前端开发
服务器通信:使用WebSocket与后端实时交互
【4月更文挑战第24天】WebSocket为解决服务器与客户端实时双向通信问题而生,常用于聊天、游戏和实时通知等场景。本文通过4步教你实现WebSocket通信:1) 客户端使用JavaScript创建WebSocket连接;2) 监听`open`、`message`和`close`事件;3) 使用`send`方法发送数据;4) 使用`close`方法关闭连接。服务器端则需处理连接和数据发送,具体实现依后端技术而定。WebSocket为现代Web应用的实时交互提供了强大支持。
|
3月前
|
前端开发 网络协议 JavaScript
|
4月前
|
网络协议 Linux C++
Linux C/C++ websocket协议与服务器实现
Linux C/C++ websocket协议与服务器实现
76 0
|
6月前
逛街【 腾讯2020校园招聘-后台&综合-第一次笔试】(单调栈的应用)
逛街【 腾讯2020校园招聘-后台&综合-第一次笔试】(单调栈的应用)
31 0
|
7月前
|
JSON 网络协议 前端开发
关于 WebSocket 和 HTTP 区别的思考以及一个最简单的 WebSocket 的客户端和服务器实现
关于 WebSocket 和 HTTP 区别的思考以及一个最简单的 WebSocket 的客户端和服务器实现
85 0
关于 WebSocket 和 HTTP 区别的思考以及一个最简单的 WebSocket 的客户端和服务器实现
|
9月前
|
开发框架 JavaScript 前端开发
如何使用SpringBoot和Netty实现一个WebSocket服务器,并配合Vue前端实现聊天功能?
如何使用SpringBoot和Netty实现一个WebSocket服务器,并配合Vue前端实现聊天功能?
200 0
|
10月前
|
Java Shell Windows
Jmeter测试 Websocket服务器
使用Jmeter来对websocket服务进行测试
177 0
|
10月前
|
移动开发 缓存 安全
连接世界的纽带:掌握Linux网络设计中的WebSocket服务器
本文探索了在Linux环境下实现WebSocket服务器的网络设计,将WebSocket服务器作为连接世界的纽带,为读者介绍了如何掌握Linux网络设计中的关键技术。文章从实现WebSocket协议到优化服务器性能和稳定性等方面进行了深入讲解。通过学习本文,读者将能够全面了解WebSocket服务器的原理和工作机制,并获得构建高效、可靠的Linux WebSocket服务器的实用技巧和最佳实践。无论是初学者还是有经验的开发人员,都能从本文中获得宝贵的知识和启发,进一步提升在Linux网络设计中的能力。让我们一同打造连接世界的纽带,掌握Linux网络设计中WebSocket服务器的精髓。
142 0
连接世界的纽带:掌握Linux网络设计中的WebSocket服务器