在网络浏览器中实现一个好的 redis 客户端需要什么?

2024-02-21

之前已经有人问过这个问题我可以从浏览器中运行的 JavaScript 直接连接到 Redis 服务器吗? https://stackoverflow.com/questions/5759120/can-i-connect-directly-to-a-redis-server-from-javascript-running-in-a-browser#comment54283198_5759120(注意我的评论) 和使用(客户端)javascript 直接连接到 Redis? https://stackoverflow.com/questions/6311984/connecting-directly-to-redis-with-client-side-javascript但我想知道有什么东西可以实现完美的实时连接。读取(node-redis 客户端)https://github.com/luin/ioredis https://github.com/luin/ioredis来源我注意到net节点库的一部分可能包含我们需要在浏览器中重现才能执行此操作的功能。

猜猜也许用一些 webrtc 函数拼凑起来的东西可以做到这一点?

预期收益与构建大型分布式应用程序系统基础设施有关——例如社交媒体(来自对上面链接的第一个问题的评论):

我再次问这个问题,但规定我们想要一个“真实”的实时 redis 客户端——而不是 HTTP 任何东西——在浏览器中运行。只需 CDN 即可构建一个出色的实时“基础设施”,为构成与 Redis 直接通信的客户端 Web 应用程序的资产提供服务。我想删除系统中不必要的 WebSocket 服务器方面。所有的控制逻辑都可以内化到Lua中的redis集群中。


要在Web浏览器中实现直接的redis客户端,您需要更改Redis本身,因此它将公开WebSocket接口。这样您将获得浏览器允许使用的最简单的协议。

其他方法将涉及中间层。我认为应该可以通过代理命令ws-tcp-中继 https://github.com/isobit/ws-tcp-relay这相当快。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在网络浏览器中实现一个好的 redis 客户端需要什么? 的相关文章

  • TypeError:req.checkBody 不是包含 bodyparser 和expressvalidator 模块的函数

    我收到错误 req checkBody 不是一个函数 我认为我已经包含了express validator和body parser 这是我的代码 var express require express var bodyParser requ
  • 我怎样才能向下滚动到多行文本框的底线,Javascript的scrollIntoView对此不起作用

    我正在尝试创建一个基本的视频和文本聊天网站 在房间页面中 我有 Flash 视频和一个文本框 多行 其中显示发送到房间的所有消息和一个文本框 供用户通过单击输入和发送旁边的按钮 tr td td tr
  • JavaScript 为什么操作 __proto__ 很慢? [复制]

    这个问题在这里已经有答案了 与此线程相关 JavaScript 修改函数原型的更好方法 https stackoverflow com questions 21788187 javascript better way to modify f
  • 如何从模板脚本访问 AngularJS 变量

    我的控制器 scope totals totals 我的模板 按 html 注入的预期工作 totals 但我需要的是访问变量totals在模板的脚本中 如下所示 我试过了 scope totals totals totals 等 均无济于
  • AJAX 与 Facebook 身份验证

    我已经构建了一个完全基于 AJAX 的应用程序 它没有页面刷新并使用 AJAX 加载所有内容 现在我想以一种不会重定向用户进行页面刷新的方式嵌入 Facebook 身份验证 目前 Facebook 的工作方式如下 用户通过单击 Facebo
  • 尝试旋转和变换 SVG 路径 - 我需要三角学计算吗?

    我正在尝试使用鼠标 SVG 路径进行操作 该路径代表电子电阻器的符号 该符号需要使用 引线 末端进行操作 如果您可以想象真实的电阻器 因此 我试图实现拖动第一个点周围 第二个点仍然存在 并且当在新坐标上拖动第一个点时 路径的所有点都按比例表
  • 我在 firebase.auth.ApplicationVerifier 中遇到问题

    错误发生在signInWithPhoneNumber 的第二个参数中 我无法解决这个问题 我使用了三种方法来发送 otp 验证 otp 和最后用于验证码 methods sendOTP e e preventDefault if this
  • IIFE 和 call 的区别

    之间有区别吗 function call this and function or var MODULE function this hello world call MODULE and var MODULE function m m h
  • 将 javascript 变量作为 onsubmit href 链接传递到表单/输入字段

    id 喜欢有一个输入框 用户可以在其中输入搜索词 该搜索词可能会传递给一个 javascript 函数 然后该函数将一些 url 段与搜索词组合起来 创建一个完整的 url 到目前为止 它在没有表单的情况下工作正常 但我想向其中添加一个表单
  • 如何在 jQuery 中使用其中心作为参考点来缩小 div?

    我有以下 div div style margin left 0px height 100px width 100px background color red div 我想使用 jQueryanimate 将 div 缩小到其大小的一半
  • 在模型对象上设置属性?

    Hi 我正在构建 ASP NET MVC 站点并遇到了问题 在我的项目中 我得到了一个 modelview 类 其中包含几个属性 例如 public class myModelView public int MyProperty1 get
  • Html页面在底部加载

    我需要一个 HTML 页面在页面加载时自动向下滚动 所以基本上加载在底部 可以使用JavaScipt吗 请您帮助我或引导我走向正确的方向 感谢所有帮助 谢谢 尝试这个 window scroll 0 document documentEle
  • 如何将java数组列表转换为javascript数组? [复制]

    这个问题在这里已经有答案了 我们如何将 String 对象的 java arraylist 转换为 javascript 数组 这就是我正在做的事情 但我正在寻找更好的方法来做到这一点 我不想迭代数组列表 var myArray
  • 为什么 JavaScript 在不同浏览器中不一致?

    在花了无数个小时修复 JS 以使其跨浏览器兼容 主要是 IE 之后 我一直在思考以下问题 Why不是 JavaScript持续的跨浏览器 我的意思是 为什么 JS 不能像 Java 和 Flash 那样好呢 相反 我们必须求助于 jQuer
  • 定位分离的 DOM 树内存泄漏

    我在诊断主要使用 Knockout 构建的非常大的单页 Web 应用程序中的分离 DOM 树内存泄漏时遇到问题 我已经调整了应用程序以附加一个假人FooBar对象特定的 HTML 按钮元素 当用户移动到应用程序的不同 页面 时 该元素应该被
  • 不透明的回复有哪些限制?

    不透明的回应 https fetch spec whatwg org concept filtered response opaque被定义为一部分获取API https fetch spec whatwg org 并表示向远程源发出请求的
  • ES6 - 有没有一种优雅的方法来导入所有命名导出而不是默认导出?

    我正在寻找一种优雅的方法来导入所有命名导出 而不必导入默认导出 在一个文件中 我导出许多命名常量以及默认值 myModule js const myDefault my default export const named1 named1
  • 如何禁用 AngularJS 中输入的修剪?

    我发现了一些奇怪的行为 默认情况下角度修剪模型值 快速谷歌搜索并不能帮助我解决这个问题 我发现了ng no trim指导性建议 ng trim等等 但没有任何作用 我在下面提供了一个代表这个问题的小片段 function Ctrl scop
  • Firebug 分析问题:“没有要分析的活动”

    我想用一些 javascript jQuery 尝试一些不同的选项 看看哪个是最快的 但是我无法让分析正常工作 这是我要测试的代码 this keypress function e console profile test retrieve
  • JS 中的展开/休息运算符如何工作? [复制]

    这个问题在这里已经有答案了 我正在努力完全理解扩展 休息运算符在 JS 中的工作原理 我已经阅读了 MDN 文档 但我仍然不完全清楚 我在下面提供了一个示例 我在其中使用了它并且它按预期工作 const users name Samir a

随机推荐

  • 如何在 Heroku.com 上托管的 Redmine 上安装插件

    刚刚把redmine推送到heroku平台 虽然我无法让积压插件工作 但它在本地工作得很好 我已将本地数据库推送到heroku aswwell Heroku 的公共目录不可写 但默认的 Redmine 假设 要求如此 因为在应用程序服务器启
  • 在 apache Spark 中替换 groupByKey 的方法

    我想知道更换的最佳方法按键分组与另一个操作 基本上我想获得一个RDD int 列表 测量 我的情况 consider measures like RDD of objects measures keyBy getId groupByKey
  • 为什么在自定义 WinRT C++/CX 控件中默认添加 [Windows::Foundation::Metadata::WebHostHidden]?

    当我在 WinRT C CX 项目中创建新控件时 类属性 Windows Foundation Metadata WebHostHidden Visual Studio 2012 默认添加 Example namespace Windows
  • Java:使用 Swing 进行游戏编程

    我对游戏开发比较陌生 我现在已经开发游戏并学习游戏开发2 3个月了 我使用Java 我一直使用 Swing 来制作图形 也就是说 整个游戏都显示在JPanel 用一个Graphics2D目的 到目前为止我没有遇到任何问题 最近 我在最近的项
  • 如何使用 gradle 'api' 依赖项

    我尝试在项目中使用 api 依赖关键字 但收到此错误 指出找不到方法 api 我在一个新项目上尝试过 这是 build gradle 文件 plugins id java group com test version 1 0 SNAPSHO
  • 如何在 wordpress ul 容器周围添加 div

    WordPress 在这个 ul 标签内输出我的子菜单 ul class sub menu 我怎样才能在它周围包裹一个简单的div 最好是通过functions php 来完成此操作 但jquery 也可以工作 虽然使用 jQuery 之类
  • 如何缝合重叠很少的图像?

    我正在尝试使用重叠很少的图像创建全景图 但我知道相机的角度 因此我确切地知道有多少重叠 并且我知道图像的顺序 因此我知道每个图像在全景图中的位置 作为第一步 我只是将图像连接在一起 但结果不够好 有没有办法将位图裁剪为梯形以消除 大部分 重
  • Python 变量的字符串编码

    我知道对于Python u Plants vs Zombies 2 encode utf 8 如果我有一个变量 比如 appName 而不是字符串 我可以这样做吗 appName Plants vs Zombies 2 u appName
  • WiX:补丁安装程序取代以前的版本(1.0.0 -> 1.0.1、1.0.0 -> 1.0.2、1.0.1 -> 1.0.2 等)

    我正在尝试提供一个简单的安装程序包 MSI 我希望通过取代所有以前的补丁的更新 补丁 来支持它 所以我有一个MSI V1 0 0和2个补丁V1 0 1和V1 0 2 用户应该能够只安装最新的补丁 无论系统上已经应用了哪些先前的补丁 我的项目
  • 使用 oAuth2orize 传递“资源所有者密码流”的可信客户端信息

    我在理解如何使用 oAuth2rize 和 Passport js 实现资源所有者密码流程时遇到一些问题 特别是在 client id 和 client secret 的传输方面 以便我可以对客户端进行一些检查 以确保任何内容进入此端点 使
  • 点击情节提要中的按钮时出现不同的图像

    我有一个按钮 我想在突出显示状态下使用不同的背景图像 通常我会使用类似的东西 buttonObject setBackgroundImage UIImage imageNamed buttonDown png forState UICont
  • Dojo 1.7 如何在 require() 之外使用 dojo 组件

    我在 Dojo 1 7 2 中使用 AMD 加载程序创建了如下所示的 Dojo 小部件 var myCpane require dijit layout ContentPane function ContentPane myCpane ne
  • 单击浏览器后退按钮时如何警告用户

    我想在用户单击浏览器 后退按钮 时警告用户 然后在确认后重定向他们 下面是我的 JS 代码 但仅适用于 Firefox 我想让它也适用于 Chrome 和其他浏览器 注意 为了在 Chrome 中触发该事件 我需要首先单击页面主体 然后单击
  • 如何让机器人 DM 列出人员列表? (Discord.py)(重写)

    所以这会向我 提及的任何人发送一条私信 bot command pass context True async def pm ctx user discord User await user send hello 我如何更改它以向文本文件中
  • 使用 PyQt5,如何使 QComboBox 可搜索?

    我正在使用 PyQt5 制作 GUI 在它上面 我有一个 QComboBox 其中有一个包含 400 多个项目的下拉列表 我想知道是否有什么方法可以在 QComboBox 中输入来搜索匹配的案例 你可以使用QCompleter为了这 对于可
  • 在 Java 中旋转 NxN 矩阵

    这是破解编码面试中的一个问题 该解决方案表示 程序先旋转外边缘 然后旋转内边缘 但是 我在遵循两个 for 循环的逻辑时遇到了困难 有人可以解释代码的逻辑吗 例如为什么他们执行 layer top 和 bottom gt left 等四个步
  • 转义sql插入字符串的最佳方法?

    转义 sql 插入 更新字符串的最佳方法是什么 我想允许使用特殊字符 包括 和 在插入语句中使用每个字符串之前 搜索和替换每个字符串的最佳方法是吗 Thanks 重复 防御sql注入和跨站脚本的最佳方法 https stackoverflo
  • 如何在本地机器和minikube之间传输文件?

    我使用的是 Ubuntu 16 0 4 操作系统 并在其上安装了 minikube 我需要将一些文件复制到 minikube 那么我该怎么做呢 我尝试了下一个命令 但它询问我密码 但我不知道 scp media myuser sourceF
  • 如何安装特定版本的 H2O

    我需要安装旧版本的 H2O 因为即使版本只有一个 3 26 0 2 与 3 26 0 3 模型加载也不起作用 我正在努力寻找可以找到下载链接的页面 为什么它不存在 所有软件都有一个存档或旧版本页面 我还尝试使用当前版本的链接 但没有运气 因
  • 在网络浏览器中实现一个好的 redis 客户端需要什么?

    之前已经有人问过这个问题我可以从浏览器中运行的 JavaScript 直接连接到 Redis 服务器吗 https stackoverflow com questions 5759120 can i connect directly to