WebSocket与免费RDBMS(PostgreSQL、SQLite等)的使用,无需JavaScript生态系统。

7
我正在寻找一种简单的实现方式,可以通过 WebSocketWebPush 将来自免费关系型数据库(PostgreSQL、MySQL、SQLite 等)的更改推送到客户端浏览器。
我想避免使用所有服务器端 JavaScript 生态系统(Node.js、npm 和其他工具)和 NoSQL 数据库。
所有内容都必须托管在我公司的服务器上,不能使用第三方服务。

我发现了这些有趣的解决方案:

您知道其他实现此操作的方式吗?
PostgreSQL是否是更适合的免费关系型数据库管理系统来完成此操作?
能否使用SQLite数据库来完成此操作?
Apache或NGinx的功能是否可以用于实现此操作?


我更新了我的回答;我创建了一个名为postgrest2websocket的项目,可能对你很有趣。 - Francesco Frassinelli
1个回答

3

更新于01/23/17:我编写了一个名为postgresql2websocket的应用程序,使用Python 3和asyncio + aiohttp + asyncpg发送PostgreSQL通知,https://github.com/frafra/postgresql2websocket;您可以与PostgREST结合使用,以便同时具备标准REST API和实时更新的WebSockets。

据我所知,没有HTTP服务器扩展程序可在没有任何中间件的情况下使用SQL数据库与Websockets。

您可以在服务器端使用Python,例如:仅使用Python和Postgres进行实时Web应用程序。我认为它可以通过aiopg进行改进。如果您不需要Websockets,则可以使用ngx_postgres

如果您喜欢Django,则Django Channels将会被可能包含在Django 1.10中(用于通道和SQL后端的Redis/内存/...层)。

您可以使用SQLite,但请记住,您必须实现单独的服务器端发布/订阅机制(例如Django channel所做的),因为SQLite没有这个功能。

如果您只对Websockets上的发布/订阅感兴趣,则可以使用Webdis(基于Redis的解决方案):它可能比完整的SQL数据库轻量级。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接