关于C#实时推送

问题描述

VisualStudio2010IDEc#服务端程序Oracle10g32bit个推推送android客户端实时监测数据库中的一个表,要求变化就推送到C#程序中,C#程序收到返回值后用个推推送到android客户端。如何实现?

解决方案

本帖最后由 seansmith0426 于 2016-06-22 17:16:49 编辑
解决方案二:
程序轮询检测吧
解决方案三:
简单地随便说一下吧。这方面我并希望有太多的人能够动手去搞开发,但是希望有较多的热你能够识别那些骗人的东西。首先,有些完全不懂编程开发的人,对我说过许多遍“xxxx公司有个手机推送接口,问我们的即时通讯系统要不要买人家的平台账号”。且不管这些公司的平台生存期有多长、平台质量如何,单说最基本的事情,“推送”跟我们的即时通讯的push消息推送是两码事。手机接收到推送的消息是直接被那些流氓程序置顶到手机的待机界面、或者首界面顶部,它们还可能通过偷看你的手机的进程从而与之“通讯”。但是这种推送通常都有较大延迟,例如有些产品延时4个小时也算是正常,而且到达率可能只有80%不到。而我们任何人要做一个即时通讯系统,或者随便一个什么与自己公司的业务服务器联网的软件,那都需要基本是99.999999%成功率,而且在几百毫秒内推送到全世界各地的手机app。我们随便做一个tcp双向通讯程序就能做到且很简单做到的事情,其实其特点跟那些商业公司所说的“推送”完全是两码事儿!再说所谓的“监视数据库”。数据库有巨大的、海量的log信息,如洪水一般。你不可能想当然地去知道“监视”什么数据记录,否则就你直接把数据库系统给搞死了。即使是SQLServer支持.net以SqlCacheDependency方式感知数据修改,也是在页面级别的,而且可能有1秒钟延迟。更何况稍微“人性胡为”一点就会让数据库服务器被垃圾操作阻塞得价值下降100倍?!这方面从数据库出发来考虑问题,看似简单,实际上就相当于超市没有保安、没有感应报警器,完全是招小偷去的节奏。实际上任性地搞这方面的东西,就是拿用户练手。小用户觉得挺爽,等服务量刚刚成长为同行业领先水平的几十分之一,这样的系统就垮了,这样的软件创业公司或者app就倒闭了。(然后这帮开发人员又到别的公司去坑了)真正的推送要从业务系统出发。例如当一个大V上线时,可能他的5万个粉丝中凡是app在线的用户(不管登录到系统的哪一个区级接入服务器上)都会在app运行中收到一条提醒信息。这个功能安排的出发点,在于从这个业务出发。这里的精确性安排,可以让系统性能的损耗降(相比那些不太注重精细安排的设计方法)到千分之一以下。绝不是滥用数据库。滥用数据库的那种设计者,就好像是满大街贴性病小广告的那些人,因为不知道贴在哪里才最对地方,所以滥用浆糊。
解决方案四:
你所谓的“个推”,可以这样看,相当于在服务器端有每一个手机的“进程映射”,如果有1万手机那么数据库端就有1万个坑爹的额外进程在轮询它。其实在你只有几十个手机客户端时,这可以骗人。一些小的博客网站,平常并发客户端在线数量奇少,可以这样偏偏投资人。然后这样的产品,死的很快。
解决方案五:
android使用极光推送,net使用signalr
解决方案六:
引用1楼cuitang1031的回复:

程序轮询检测吧

我要做成变化就推得那种,轮询定时间间隔会有延迟,时间间隔定小了太耗费服务器资源了。
解决方案七:
引用2楼sp1234的回复:

简单地随便说一下吧。这方面我并希望有太多的人能够动手去搞开发,但是希望有较多的热你能够识别那些骗人的东西。首先,有些完全不懂编程开发的人,对我说过许多遍“xxxx公司有个手机推送接口,问我们的即时通讯系统要不要买人家的平台账号”。且不管这些公司的平台生存期有多长、平台质量如何,单说最基本的事情,“推送”跟我们的即时通讯的push消息推送是两码事。手机接收到推送的消息是直接被那些流氓程序置顶到手机的待机界面、或者首界面顶部,它们还可能通过偷看你的手机的进程从而与之“通讯”。但是这种推送通常都有较大延迟,例如有些产品延时4个小时也算是正常,而且到达率可能只有80%不到。而我们任何人要做一个即时通讯系统,或者随便一个什么与自己公司的业务服务器联网的软件,那都需要基本是99.999999%成功率,而且在几百毫秒内推送到全世界各地的手机app。我们随便做一个tcp双向通讯程序就能做到且很简单做到的事情,其实其特点跟那些商业公司所说的“推送”完全是两码事儿!再说所谓的“监视数据库”。数据库有巨大的、海量的log信息,如洪水一般。你不可能想当然地去知道“监视”什么数据记录,否则就你直接把数据库系统给搞死了。即使是SQLServer支持.net以SqlCacheDependency方式感知数据修改,也是在页面级别的,而且可能有1秒钟延迟。更何况稍微“人性胡为”一点就会让数据库服务器被垃圾操作阻塞得价值下降100倍?!这方面从数据库出发来考虑问题,看似简单,实际上就相当于超市没有保安、没有感应报警器,完全是招小偷去的节奏。实际上任性地搞这方面的东西,就是拿用户练手。小用户觉得挺爽,等服务量刚刚成长为同行业领先水平的几十分之一,这样的系统就垮了,这样的软件创业公司或者app就倒闭了。(然后这帮开发人员又到别的公司去坑了)真正的推送要从业务系统出发。例如当一个大V上线时,可能他的5万个粉丝中凡是app在线的用户(不管登录到系统的哪一个区级接入服务器上)都会在app运行中收到一条提醒信息。这个功能安排的出发点,在于从这个业务出发。这里的精确性安排,可以让系统性能的损耗降(相比那些不太注重精细安排的设计方法)到千分之一以下。绝不是滥用数据库。滥用数据库的那种设计者,就好像是满大街贴性病小广告的那些人,因为不知道贴在哪里才最对地方,所以滥用浆糊。

说的好,我刚接触这个,理解确实浅。
解决方案八:
引用3楼sp1234的回复:

你所谓的“个推”,可以这样看,相当于在服务器端有每一个手机的“进程映射”,如果有1万手机那么数据库端就有1万个坑爹的额外进程在轮询它。其实在你只有几十个手机客户端时,这可以骗人。一些小的博客网站,平常并发客户端在线数量奇少,可以这样偏偏投资人。然后这样的产品,死的很快。

我不是这个意思。我这是独立出来App的一个程序,并不是嵌套进App的。所以只有一个进程在访问。我得意思是,数据发生变化,推给我得程序,然后我的程序调用个推方法,个推推送再推给APP。
解决方案九:
如果你的数据量不是很大,可以用这种方式。在数据库建立消息表,数据有变化时,将推送内容写入消息表。C#写个独立线程,死循环每秒查询一次消息表,如果消息表有记录,就读取消息内容,利用个推发送,发送完成后删除消息表的记录。
解决方案十:
引用5楼seansmith0426的回复:

Quote: 引用1楼cuitang1031的回复:
程序轮询检测吧

我要做成变化就推得那种,轮询定时间间隔会有延迟,时间间隔定小了太耗费服务器资源了。

请教个小学问题:你三年级期末考试,交卷回家了。老师负责批改然后出成绩。问:你怎样可以第一时间知道你的期末成绩?要求:要立即、马上、不能间隔1分钟,老师出成绩你就要一分钟内马上知道。参考答案:1.你每隔半分钟就打电话问一次老师。2.让老师出成绩后半分钟内打电话通知你。
解决方案十一:
全校小学生都想立即、马上,一分钟内知道成绩,又该怎么办?如果这2个问题有答案了,那楼主的问题也有答案了~
解决方案十二:
引用3楼sp1234的回复:

你所谓的“个推”,可以这样看,相当于在服务器端有每一个手机的“进程映射”,如果有1万手机那么数据库端就有1万个坑爹的额外进程在轮询它。其实在你只有几十个手机客户端时,这可以骗人。一些小的博客网站,平常并发客户端在线数量奇少,可以这样偏偏投资人。然后这样的产品,死的很快。

你怎么知道楼主是要做产品呢?我看楼主的意思是做一个DBA的工具啊——只要特定的表有修改就通知相关人员吧
解决方案十三:
正常用户不会管数据库的东西吧

时间: 2024-07-30 08:54:34

关于C#实时推送的相关文章

signalR 实现数据库实时推送数据

问题描述 signalR 实现数据库实时推送数据 软件:VS2015/MSSQL2014问题:为什么下图的前端显示内容 传表就可以 而像我传num的一个数就不行了?? 解决方案 传一个数字也可以,但是你的js的json解析的代码需要修改,不能for循环. 解决方案二: socket实现数据库数据实时推送到服务器

Web 实时推送技术的总结

随着 Web 的发展,用户对于 Web 的实时的要求也越来越高 ,比如,工业运行监控.Web 在线通讯.即时报价系统.在线游戏等,都需要将后台发生的变化主动地.实时地传送到浏览器端,而不需要用户手动地刷新页面.本文对过去和现在流行的 Web 实时推送技术进行了全面的总结. 在标准的 HTTP 请求-响应的情况下,客户端打开一个连接,发送一个 HTTP请求(例如 HTTP GET 请求)到服务端,然后接收到 HTTP 回来的响应,一旦这个响应完全被发送或者接收,服务端就关闭连接.当客户端需要请求所

百度实时推送api接口应用示例_php实例

网站质量不错的网站可以在百度站长平台/数据提交/sitemap栏目下看到实时推送的功能, 目前这个工具是邀请开放, 百度的实时推送的api接口可以实时推送我们新发布的文章, 保证百度在第一时间收录.   百度站长平台 http://zhanzhang.baidu.com/ 打开百度站长平台, 点开实时推送的添加新数据接口获得带token的api推送地址:     http://ping.baidu.com/sitemap?site=www.yourdomain.com&resource_name

seo-请教,asp.net如何实现百度sitemap实时推送

问题描述 请教,asp.net如何实现百度sitemap实时推送 比如我后台发了一条咨询,能在发布后马上调用sitemap让百度收录新发布的页面内容 解决方案 百度什么时候收录,这个百度说了算,百度可不会按照你的愿望随时收录.

百度实时推送POST推送怎么用啊

问题描述 百度实时推送POST推送怎么用啊要写方法吗?怎么执行啊? 解决方案 本帖最后由 u014709884 于 2015-04-25 12:02:27 编辑解决方案二:捉鸡啊来个大神回答下吧解决方案三:人家说的是主动推送不是实时推送你若要实时就是有新页面了调用下他这页面填下参数解决方案四:同问,我也着急想知道解决方案五:同问实时提交的用法啊,哪位大神知道啊!解决方案六:私聊我我可以给源码解决方案七:http://pan.baidu.com/s/1dDMknst下载即可

wordpress更新文章实时推送到百度教程

百度最近在站长平台里发布了公告,决定停用现在的百度sitemap1.0,使用了新的推送方式,也就是今天的主角:主动推送(实时). 文章实时推送到百度教程-wordpress 实时推送"> 那么先前安装的wordpress插件也可以卸载了,申请了百度实时推送的接口. 首先给出申请地址:http://zhanzhang.baidu.com/linksubmit/ 大家前去了解下百度新的主动推送机制! 然后,结合本站团队成员维维大神的研究测试,且免去安装WP BaiDu Submit插件的实现了

第一时间实时推送新片 电驴大全登陆iPhone客户端

国内知名资源分享类网站VeryCD最新发布影视类在线观看客户端--电驴影视大全iPhone版,汇集了国内 主流视频网站的高清优秀资源,囊括电影.剧集.综艺.动漫等当下最热门的渠道,并结合VeryCD社区内百万用户交流汇集的影视资料与影评,为用户提供不同凡响的娱乐体验.电驴推出iPhone版影视大全知名P2P资源分享类网站VeryCD自从 版权问题所引发的争议开始,转而改向影视资源在线观看.乐园.在线网页游戏等 多维度发展,特别是在线高清正版影视做的风生水起,其资源汇集了优酷.土豆.搜狐.奇艺.酷

利用socket.io实现消息实时推送

项目背景介绍 最近在写的项目中存在着社交模块,需要实现这样的一个功能:当发生了用户被点赞.评论.关注等操作时,需要由服务器向用户实时地推送一条消息.最终完成的项目地址为:socket-message-push,这里将介绍一下实现的思路及部分代码. 项目的流程中存在着这样的几个对象: 用 Java 实现的后端服务器 用 Node.js 实现的消息推送服务器 用户进行操作的客户端 事件处理的流程如下: 用户进行点赞操作时,后端服务器会进行处理,并向 Node.js 消息推送服务器发送一条消息 Nod

WordPress实时推送新链接到百度实现快速收录的方法

细心的朋友可能已经发现百度站长平台上有个链接提交的选项.百度提供3个方法推送网址收录,分别是主动推送,自动推送和sitemap .已WordPress为例,主动推送可以在文章发布的同时通知百度,缩短百度爬虫发现站点新链接的时间,使新发布的页面可以在第一时间被百度收录,而且官方说法有效保护原创(看样子百度还是根据收录时间来判断文章是否原创).自动推送是指只能在页面被访问的时候才会推送给百度,通过javascript脚本实现,优点是部署简单.sitemap是之前常规的网站地图模式,百度定时来抓. 经