当前位置: 首页 > news >正文

山西网站建设 哪家好关键词排名优化易下拉霸屏

山西网站建设 哪家好,关键词排名优化易下拉霸屏,40万用户自助建站,wordpress调用代码怎么用转载于http://www.oschina.net/translate/websocket-libraries-comparison-2 编者按 本文出现在第三方产品评论部分中。在这一部分的文章只提供给会员#xff0c;不允许工具供应商用来以任何方式和形式来促销或宣传产品。请会员报告任何垃圾信息或广告。 Web项目常常需要将数…转载于http://www.oschina.net/translate/websocket-libraries-comparison-2 编者按 本文出现在第三方产品评论部分中。在这一部分的文章只提供给会员不允许工具供应商用来以任何方式和形式来促销或宣传产品。请会员报告任何垃圾信息或广告。 Web项目常常需要将数据尽可能快地推送给客户必要时无需等待客户端请求。对于与用户之间进行实时通信的网站例如在线交流或文档协作工具或者在长期运行的计算/执行任务的服务器上更新系统状态等等这些时候采用双向沟通机制是理想的。 以前,这类问题一般使用下面的解决方案: 使用 Flash 中的 Socket 连接(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/Socket.html) Ajax 长轮询(https://gist.github.com/jasdeepkhalsa/4353139) 服务器发送事件... (http://en.wikipedia.org/wiki/Server-sent_events) ...或者就用 IE 中经典的 Frame 技术 (http://cometdaily.com/2007/11/05/the-forever-frame-technique/) 赵亮-碧海情天 翻译于 3年前 2人顶 顶 翻译得不错哦 但现在我们有了更好的选择WebSocket。它的标准在2011年发布在现代浏览器上已实施了一段时间。它更好的原因是使用更安全和更成熟的协议带来了改进和升级。 略注: 这份比较是几个月前做的可能不够及时但如果有人要找好的WebSocket库我认为这对他仍然是有用的。 本比较只针对以 NuGet 包形式发布的库 SuperWebSocket 虽然使用 NuGet 的 repository但需要从网页中下载。 也许等我抽出空来我会使用新的库或已测试的库的新版本进行比较然后更新这篇文章。 赵亮-碧海情天 翻译于 3年前 1人顶 顶 翻译得不错哦 Fleck https://github.com/statianzo/Fleck 我发现这个库真的是简单易用对于库、文档、例子等都是只要添加库复制几行例子里的代码然后运行——就这么简单。 但是简单是有代价的其功能并不强大且可配置的地方太少。 private static void Main(string[] args) {      var server  new WebSocketServer(ws://localhost:8181);      server.Start(socket       {           socket.OnOpen  ()  OnOpen(socket);           socket.OnClose  ()  OnClose(socket);           socket.OnMessage  m  OnMessage(socket, m);      }); } 对于简单快速的项目我会用它如果你不需要用WebSocket发送太复杂的数据结构、命令一样的消息、或在客户端无WebSocket支持时的备选方式这就是你要的了。 优点: 简单 无依赖项 缺点: 可配置项少 客户端浏览器不支持WebSocket时就没戏了 ayeah 翻译于 3年前 1人顶 顶 翻译得不错哦 SignalR http://www.asp.net/signalr 微软出品是我认为这个库最大的优点了。它已经和现有的ASP.NET框架做了集成对服务器端和客户端代码都做了很好的抽象类 这意味着你不需要太深入了解协议的东西。然后它还可以很聪明地在客户端浏览器不支持WebSocket时自动使用别的通信机制。它还可以完成一些叫远程过程调用RPC的东西从服务器到客户端。  它能广播消息到所有客户端也能单独发给指定用户。对大量并发连接的处理也很优秀。还有——它是开源的 ayeah 翻译于 3年前 1人顶 顶 翻译得不错哦 听起来很棒是不但是...它需要IIS8或者说Windows Server 2012Windows8也行不过相信你不会在win8上面跑大项目的。对我来说这就是“微软新一代值得买的操作系统”的超酷特性。如果开发企业项目的话是不错的但对小项目来说为了这个开源的库买操作系统——太贵了。 当然这些环境是WebSocket必须要求的. 这篇文章就是讲WebSocket通讯的所以我把这个算成大缺点。 public class MyHub1 : Hub {public void Send(string name, string message){// Call the broadcastMessage method to update clients.Clients.All.broadcastMessage(name, message);} } $(function () {     var chat  $.connection.myHub1;     chat.client.broadcastMessage  function (name, message) {         //...     };     $.connection.hub.start().done(function () {         $(#sendmessage).click(function () {             chat.server.send(message);         });     }); }); 优点: 非常好的抽象 与IIS和ASP.NET紧密集成 很多候选方式 开源 微软官方库 可扩展性好 缺点: 需要IIS8… … 也就是Windows Server 2012太贵了 ayeah 翻译于 3年前 1人顶 顶 翻译得不错哦 AlchemyWebSocket http://alchemywebsockets.net/ 当我想到websocket库时这个让人不可思议。没错这是真的。它可以排在Fleck后面它非常容易使用容易安装Nuget包可用文档中含有很好的例子。 它包含服务端和客户端两部分同时也具有可伸缩性 static void Main(string[] args) {// 创建一个新的server - 接受端口和ip范围,// 设置方法var aServer  new WebSocketServer(81, IPAddress.Any){OnReceive  OnReceive,OnSend  OnSend,OnConnect  OnConnect,OnConnected  OnConnected,OnDisconnect  OnDisconnect,TimeOut  new TimeSpan(0, 5, 0)};aServer.Start();string consoleReadLine;do{consoleReadLine  Console.ReadLine();sockets.ForEach(s  s.Send(consoleReadLine));} while (consoleReadLine ! exit); } 但是它有一些别扭我不能避开。例如那里没有简单的事件方法OnReceive仅仅只有string事实上消息在客户端被发送了。你必须你自己完成。是的你必须调用而且只能调用 .ToString()来得到真实的消息但使用库的目的是为了不要强迫自己实现通信协议。 private static void OnReceive(UserContext context) {     Console.WriteLine(Client   context.ClientAddress.ToString()   sended:   context.DataFrame.ToString()); } MeiKai 翻译于 3年前 1人顶 顶 翻译得不错哦 WebSocket服务器初始化方法首先接收端口然后是IP设置。我一直认为地址的表达应该是先IP然后是端口而且只有当有必要指明端口的时候。还有超时设置为什么必须有超时呢我可以理解这有时可能是有用的但它作为一个特性不应作为主要设置之一。当然这只是一些细节问题。 对我来说这迫使你一开始就得通过这个库用另一层代码把它抽象出来。 总之你可以试试和Fleck比较一下性能然后决定哪个更适合你的简单项目。 优势 简单 无依赖性 文档完备 缺点 有点笨拙比Fleck结构更复杂 没有 fallback 赵亮-碧海情天 翻译于 3年前 1人顶 顶 翻译得不错哦 XSockets http://xsockets.net/ 这个库看上去很有前途。我尝试过它并且还花了很多时间用它工作超过其它的库甚至用来执行测试工作等等。但是很不幸我没有运气任何我考虑到的错误在这个库中都是错误的与代码不一致的糟糕文档。难道是因为代码或者文档过期了它不容易安装和运行事实上这个库的使用样例我很难组建和运行。Xsocket更多向我们展示了MVC框架的样子。我尝试把它运行在ASP.NET项目里面MVC和WinService遗憾的是没有一个能够工作。 我真的很想用这个库但最后我放弃了以便支持更好的库阅读其他。认真地说为什么使用这个库是困难的甚至一个简单的项目。你可以预测更多的问题当把它使用在项目里我强烈建议避开这个项目。 public static class XSocketsBootstrap {     private static IXBaseServerContainer wss;     public static void Start()     {                     wss  XSockets.Plugin.Framework.Composable.GetExport();         wss.StartServers();     } } pAdvantages:/p ul liSeems powerful/li liShould have good JavaScript integration/li /ul pDisadvantages:/p ul liComplicated and hard/li liComplicated to configure and run inside of WebForms, MVC and WinService/li liDifferences between code and documentation/li liOutdated documentation and examples/li /ul /li li h2Microsoft.WebSocket/h2 pa hrefhttp://msdn.microsoft.com/en-us/hh969243.aspxhttp://msdn.microsoft.com/en-us/hh969243.aspx/a/p pAnother library from Microsoft. And it requires IIS 8 too, so I did not have means to test it. Examples are really low level, so it force you to deal with buffers and streams instead of strings. In some cases this can be good, but mostly there is no point. If you have IIS 8 on server why bother with this library if you can use SignalR, which will take care most of the stuff for you./p pI think this is more of proof-of-concept then usable library./p preint count  receiveResult.Count;   while (receiveResult.EndOfMessage  false) {     if (count  maxMessageSize)     {         string closeMessage  string.Format(Maximum message size: {0} bytes., maxMessageSize);         await socket.CloseAsync(WebSocketCloseStatus.MessageTooBig, closeMessage, CancellationToken.None);         return;     } receiveResult  await socket.ReceiveAsync(new ArraySegment(receiveBuffer, count, maxMessageSize - count), CancellationToken.None);     count  receiveResult.Count; } var receivedString  Encoding.UTF8.GetString(receiveBuffer, 0, count); var echoString  You said   receivedString; ArraySegment outputBuffer  new ArraySegment(Encoding.UTF8.GetBytes(echoString)); await socket.SendAsync(outputBuffer, WebSocketMessageType.Text, true, CancellationToken.None); MeiKai 翻译于 3年前 1人顶 顶 翻译得不错哦 SuperWebsocket http://superwebsocket.codeplex.com/ 最后但并不是最不重要的是SuperWebsocket。我对这个有一点怀疑如果我没记错的话这仅仅是一个我通过NuGet网站发现的包但又不是一个可用的包。它似乎有一点复杂但实际上它是非常简单的。有文献支持的例子帮助你一步步的从最简单的WebSocket服务器到有命令请求JSON多服务器实例.config文件配置或者更多的复杂Websocket服务器。 这个库也许没有包含所有其他库有的那些很酷的特性但是这没关系因为它是高度可配置的你可以很容易的让它实现你想要的。它可以作为控制台应用程序或者windows服务运行于ASP.NET中。文献上则建议以系统服务的形式来运行服务器。从我的经验来看建议不要在一个web应用程序里面运行它因为这种解决方案很慢非常糟糕的表现比控制台应用程序大约慢50倍。从另一方面独立的服务器应用程序需要运行.exe结尾的文件这个文件并不是库的一部分但是是SuperSocket项目的一部分SuperWebSocket就是基于这个项目的。这使得你需要一点技巧在调试会话中开启服务器或者完全启用调试。当你作为应用程序运行服务器的时候虽然这不是解决方案的一部分也需要确保服务器采用来自其他项目的最新版的组件。 独步寒风 翻译于 3年前 1人顶 顶 翻译得不错哦 作为回报你得到了关于灵活的WebSocket的众所周知的解决方案。 它仍然是开源的所以你可以根据需要改变它。 从另一方面你可能把这个服务器缺乏JavaScript客户端看做是它的缺点但是它有C#客户端。这个服务器也有第三方的依赖关系。 在使用这个库工作了几个月之后我没发现什么主要的问题。 缺点和优点: 无备用通信 依赖 优雅的特性和高度可配置性 很棒的例子 例子的都有推荐设置的文档 可以作为windows服务和ASP.NET模块和控制台应用程序运行 好的性能表现 总结 对于复杂的解决方案/项目我建议用SuperWebSocket因为它是一个稳定而且高度可配置的库。对于简单和需要快速开发的项目我会选择Fleck但是如果有办法使用最新的windows服务器来作为测试和生产机器的话我会放弃使用这两个而选择SignalR。
http://wiki.neutronadmin.com/news/93613/

相关文章:

  • 网站建设实战案例范县网站建设公司
  • 做一个能注册用户的网站微信免费开发平台
  • 单位网站开发合同福田建网站费用
  • 为了找工作做的前端网站承德专业做网站的公司
  • 岳溥庥网站建设我的网站怎么不能搜索
  • 营销型网站公司排名做网站好赚钱
  • 网站策划书我与音乐万网发布网站
  • 科技网站设计欣赏网络设计规划师
  • 重庆相册制作工厂漳州网站建设优化推广
  • 基于php的电子商城网站建设俄罗斯搜索引擎yandex推广入口
  • 如何建论坛网站网站的功能模块
  • 网站建设w亿玛酷1流量订制怎么设计个人logo
  • 昆明网站seo技术厂家微信小程序wordpress
  • 网站如何做微信支付宝支付宝支付宝海口建设网站的公司哪家好
  • 网络营销的主要内容有哪些seo网站建设公司
  • 企业网站源码aspnet网站开发作业
  • 哪家网站建设公司好谷歌浏览器下载视频
  • 衡水市网站建设搭建网站平台有前途吗
  • 网站备案流程图片七牛云配置wordpress
  • 合肥网站制作哪家有名怎样网站不用备案
  • 设计师兼职网站安阳企业网站建设
  • 霞山手机网站建设公司怎么做企业网站排名
  • 小说下载网站哪个好网站空间永久免费
  • 手机可以做3d动漫视频网站建设环评备案登记网站
  • 手机如何制作网站源码wordpress v4.1教程
  • 重庆建设工程交易中心网站徐州企业制作网站
  • 天津做宠物饲料的网站编程学习入门网站
  • 门户网站 方案莱州网络推广
  • 家具技术支持东莞网站建设上海做网站品牌公司有哪些
  • 赣州建设网站公司大朗镇网站仿做