草庐IT

erlang-driver

全部标签

tcp - 如何处理 Erlang 中 TCP 流中数据包的错误长度 header ?

我正在使用gen_tcp在Erlang中通过TCP接收消息。根据{packet,4}选项的指定,流通过使用4字节长度的header分成数据包。这就是我调用gen_tcp:listen/2的方式:gen_tcp:listen(Port,[binary,inet,{active,once},{packet,4}]).如您所见,我使用了{active,once}选项,这样我就可以从进程邮箱中获取我的数据包,而不会淹没它。只要长度header正确,这就可以正常工作。如果不是,任何事情都可能发生。所以我想以某种方式处理错误数据包的可能性。这有点棘手,因为我实际上是在处理流。忽略错误的数据包是可以

haskell - Erlang 与 Haskell : When does one prefer one over the other?

什么时候更喜欢Erlang在Haskell?难道两者不能在一个进程中处理大量的TCP流量吗? 最佳答案 为什么不自己找出来呢?实用出版社制造SevenLanguagesinSevenWeeks其中包括Haskell和Erlang作为两种语言。虽然它不会让您成为专家,但您将有机会尝试两者。Erlang专为高吞吐量、弹性网络代理而构建。Haskell有不同的历史,但我听说它也有很好的网络堆栈。我本人是Erlang的super粉丝,您得到的大多数答案可能都有偏见。但最好的建议是亲自尝试。 关于

string - Erlang:将 TCP 发送的字符串转换为正确的形式,例如<<"SomeString">> 到 "SomeString"?

我有一个客户端和一个服务器,我使用客户端发送一个字符串,例如"Hello"它在服务器端显示为>.有没有办法简单地转换>返回"Hello"?我尝试使用,String=io_lib:format("~p",[StringIn]),lists:flatten(String),但这使得格式为>变成[[60,60,"\"Hello\"",62,62]]...顺便说下代码:-module(ss1).-compile(export_all).-import(lists,[reverse/1]).client()->{ok,Socket}=gen_tcp:connect("localhost",234

tcp - Erlang 套接字直到第二个 setopts {active,once} 才接收

首先,我想道歉,我提供了这么多信息,以尽可能清楚地说明问题所在。如果还有什么需要澄清的,请告诉我。(运行erlangR13B04,内核2.6.18-194,centos5.5)我有一个很奇怪的问题。我有以下代码来监听和处理套接字:%Optsusedtomakelistensocket-define(TCP_OPTS,[binary,{packet,raw},{nodelay,true},{reuseaddr,true},{active,false},{keepalive,true}]).%Acceptorloopwhichspawnsoffsockprocessorswhenconne

tcp - Erlang TCP 服务器处理

我开始学习Erlang,希望为实时多人游戏创建一个游戏服务器。目前,我正在尝试估计Erlang与Scala相比的工作量和头痛程度。因此,首先,我正在创建一个简单的Erlang服务器进程。我通过JesseFarmer找到了一个很好的教程我已经对其进行了修改以了解更多信息。我修改后的代码与他的echo服务器类似,除了它接受英文单词并简单地返回Lojban等价物。但是,只会选择通配符。这是代码:-module(translate).-export([listen/1]).-import(string).-define(TCP_OPTIONS,[binary,{packet,0},{activ

android - Android SDK Manager 中的 Google Web Driver 是什么?

我在软件包窗口中看到要安装的可选项目列表,但找不到任何关于GoogleWeb驱动程序及其实际作用的引用资料? 最佳答案 WebDriver是selenium的框架,用于在Android设备上测试web应用程序。有关如何使用此功能的更多详细信息,请访问link 关于android-AndroidSDKManager中的GoogleWebDriver是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

android - Android SDK Manager 中的 Google Web Driver 是什么?

我在软件包窗口中看到要安装的可选项目列表,但找不到任何关于GoogleWeb驱动程序及其实际作用的引用资料? 最佳答案 WebDriver是selenium的框架,用于在Android设备上测试web应用程序。有关如何使用此功能的更多详细信息,请访问link 关于android-AndroidSDKManager中的GoogleWebDriver是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

tcp - Erlang tcp 服务器/客户端发送消息

我目前正在编写一个简单的服务器,它将与客户端连接,然后在服务器充当中介的情况下相互交谈。设置是:服务器启动2个客户端连接到服务器Client1/2发送一strip有唯一ID(一个原子)的消息服务器将此ID与SocketPID一起保存Client1发送{send_to_id,client2id,Message}服务器消息Client2但这对我不起作用,我收到function_clause错误。所以基本上我想用tcp_send向客户端发送消息,而不是让客户端成为“服务器”,而只是使用recv。这可能吗?服务器代码:-export([start/1]).-define(TCP_OPTIONS

sql-server - Centos : Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : TCP Provider: Error code 0x2749

我已经在Centos7上安装了MSSSQL。安装完成但是当我通过sqlcmd连接到SQL时它给出了以下错误。[root@S*03****k~]#sqlcmd-S127.0.0.1-Usa-PH*****3Sqlcmd:Error:MicrosoftODBCDriver13forSQLServer:Logintimeoutexpired.Sqlcmd:Error:MicrosoftODBCDriver13forSQLServer:TCPProvider:Errorcode0x2749.Sqlcmd:Error:MicrosoftODBCDriver13forSQLServer:Anetw

c - 将 erlang 记录发送到 c 程序

我正在做我的作业,其中一部分是将erlang术语发送到一个c程序,该程序将能够通过已建立的tcp连接相互通信。我能够发送数字、列表、bool值、二进制文件,并能够在我的C程序中对它们进行解码以获取发送的消息。我正在使用ei模块来做这些事情。在erlang方面,我使用etf编码,如term_to_binary/1和其他。就是说,我想知道如何通过在erlang端编码并在c端解码的套接字发送记录。ei有很多函数来获取从二进制格式解码的原始数据类型,但不能获取像记录这样的复合数据类型。记录很简单,如-rd(person,{name="",email=""})我可以将其发送为gen_tcp:se