我正在评估Pusher和PubNub,以便在我的主要Web客户端和我的服务器之间实现双向实时通信.两者看起来都令人印象深刻,Pusher的文档看起来更好,而PubNub的可扩展性和可靠性显然是他们的强项.
但是,由于我正在管理预算,我担心Pusher和PubNub的成本可能会成为我们的问题,因此我正在考虑使用其中一个开源替代品 - 我主要关注的是Socket.io,Faye和jWebSocket.
尽管我自己运行服务,但我有自己的顾虑:
感谢您的建议.
我最近开始在我的iOS应用程序中使用PubNub,我很高兴.但是,我一直在寻找其他可用的选项,例如使用Websockets的Pusher和Realtime.co.另一方面,PubNub使用长轮询.我已经完成了自己的小速度比较,为了我的目的,我发现它们都足够快.
PubNub提供了一些很好的功能,如消息历史记录和频道中每个人的列表,所以除了我倾向于他们的其他一切.我的问题是,我应该关注电池寿命和使用像PubNub这样的长轮询解决方案的大量使用吗?Websockets解决方案是否会显着提高功效?
我们在S3中有数PB的数据.我们是https://www.pubnub.com/,我们将使用数据存储在我们网络的S3中以进行计费.我们在S3存储桶中存储了制表符分隔的日志文件.雅典娜给了我们一个HIVE_CURSOR_ERROR失败.
我们的S3存储桶设置为在6个月后自动推送到AWS Glacier.除了Glacier备份文件之外,我们的存储桶还具有热门的S3文件并且可以随时读取.由于这个原因,我们收到了Athena的访问错误.错误中引用的文件是Glacier备份.
我的猜测答案是:不要将冰川备份放在同一个桶中.由于我们的数据量大小,我们没有这个选项.我相信雅典娜不会在这个设置中工作,我们将无法使用Athena进行日志分析.
但是,如果我们有办法使用雅典娜,我们会很激动.是否有解决方案HIVE_CURSOR_ERROR和跳过Glacier文件的方法?我们的s3水桶是没有文件夹的扁平水桶.
屏幕截图中省略了上下屏幕截图中显示的S3文件对象名称.HIVE_CURSOR_ERROR实际上是Glacier对象中的文件引用.您可以在我们的S3 Bucket的屏幕截图中看到它.
注意我试图在https://forums.aws.amazon.com/发布,但这不是bueno.
基本上将Parse与Pubnub,Pusher或类似组合在一起,而不是从头开始构建自定义后端.
我将使用facebook登录和文件存储/共享来开发实时消息系统.从理论上讲,我可以使用Parse和Pubnub之类的组合来覆盖后端需求.分别为:
Parse负责:
而Pubnub负责:
要求:
我需要一个可以扩展到数百万用户的系统,如果需要,可以快速部署通常一个符合这个标准和规范的解决方案.
标准:
眼镜:
任何反馈,如果这作为第一阶段部署将运作良好,任何陷阱将非常感谢.
嘿,我正在使用pubnub服务为我的Titanium App添加聊天功能,但我想知道是否有办法获取未读消息的数量.
在api引用上没有关于此的信息
我试图在历史中保存消息的数量,然后重新加载新的历史记录并计算差异,但它是如此愚蠢和复杂的解决方案,任何人都知道如何实现这一目标?谢谢
我正在尝试使用PUBNUB EON图表库渲染样条图.我不明白这里出了什么问题.我可以在控制台中看到数据,但图表没有渲染,只有x和y轴线.我从python SDK获取数据并通过javascript SDK订阅.控制台中没有错误消息.
我的python代码是
def counterVolume(data):
for each in data:
y = each.counter_volume
data_clean = json.dumps(y, indent=4, separators=(',', ': '))
print pubnub.publish(channel='channel', message= data_clean)
counterVolume(data)
Run Code Online (Sandbox Code Playgroud)
我的订阅javascript函数是
var data;
var pubnub = PUBNUB.init({
publish_key: 'pub',
subscribe_key: 'subf'
});
var channel = "c3-spline";
eon.chart({
history: true,
channel: 'channel',
flow: true,
generate: {
bindto: '#chart',
data: {
x: 'x',
labels: false
},
axis : {
x : {
type : 'timeseries',
tick: {
format: '%m-%d %H:%M:%S'
}
}
} }}); …Run Code Online (Sandbox Code Playgroud)