草庐IT

unix-sockets

全部标签

ruby - yarn 未初始化常量 Socket::SOL_TCP

我在这里尝试使用yarn,遇到了一个可能与ruby​​相关的问题。在执行任何yarn命令,我收到错误.../.rvm/gems/ruby-2.3.0/gems/yarn-0.1.1/lib/yarn/server.rb:14:in':uninitializedconstantSocket::SOL_TCP(NameError)错误堆栈:$yarn.../.rvm/gems/ruby-2.3.0/gems/yarn-0.1.1/lib/yarn/server.rb:14:in':uninitializedconstantSocket::SOL_TCP(NameError)Didyoume

ruby - 在 Ruby 中使用 Unix 进程控制方法

RyanTomayko用thispost引发了一场激烈的Storm关于使用Unix进程控制命令。Weshouldbedoingmoreofthis.Alotmoreofthis.I'mtalkingaboutfork(2),execve(2),pipe(2),socketpair(2),select(2),kill(2),sigaction(2),andsoonandsoforth.Theseareourfriends.Theywantsobadlyjusttohelpus.我有一些代码(DataMapper的delayed_job克隆,我认为它适合这个,但我不清楚如何利用列出的命令。

多线程问题:为什么不应该使用多线程读写同一个socket连接?

问题的产生经典的单reactor多线程模式采用的是用主线程处理连接事件以及socket读写事件,业务逻辑的处理则是让线程池里的线程各自竞争处理。既然多线程这么方便,为什么不让线程池里的线程也参与到read和send这个过程中呢?在发送数据的过程中,即使TCP的发送缓存满了,我们也可以记录下当前成功发送了多少字节,然后再次注册一个EPOLLOUT事件,只需等待下次可写事件,继续让子线程发送数据即可,岂不是美哉?解释陈硕大佬的解释对于TCP,通常多线程读写同一个socket是错误的设计,因为有shortwrite的可能。假如你加锁,而又发生shortwrite,你是不是要一直等到整条消息发送完才解

ruby - 在 Ruby 中从 Unix 套接字读取/写入

我正在尝试通过Ruby中的UNIX套接字进行连接、读取和写入。它是haproxy使用的统计套接字。我的代码如下:require'socket'socket=UNIXSocket.new("/tmp/haproxy.stats.socket")#Firstattempt:workssocket.puts("showstat")while(line=socket.gets)doputslineend#Secondattemp:failssocket.puts("showstat")while(line=socket.gets)doputslineend第一次成功,第二次失败。我不确定为什么

ruby-on-rails - postgresql 数据库错误 : Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

当我运行rakedb:migrate或运行railss命令时,我得到同样的错误:Error:couldnotconnecttoserver:NosuchfileordirectoryIstheserverrunninglocallyandacceptingconnectionsonUnixdomainsocket"/var/run/postgresql/.s.PGSQL.5432"?当我尝试railss时,浏览器出现错误。这是我的database.ymldefault:&defaultadapter:postgresqlencoding:unicodepool:5development

ruby-on-rails - 为什么我会出现间歇性的 Excon::Error::Socket: getaddrinfo: No address associated with hostname (SocketError)?

Rails4-Ruby2.2.2-亚马逊AWSS3-蜻蜓1.0.12-dragonfly-s3_data_store1.2-fog-aws0.10.0大约99%的时间我们没有问题。这个问题通常只发生在使用率很高的时候,但我注意到它也发生在几乎没有用户的时候。抛出错误的行:#excon/lib/excon/socket.rb#line100insidetheconnectionmethod.addrinfo=::Socket.getaddrinfo(*args)该错误在应用程序中无处不在。有时在没有远程连接时会出现错误。-我无法再验证这一点。我使用Rails记录器来捕获传入的参数,通过和

ruby - Unix 哲学在 Ruby 社区失宠了吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。ImprovethisquestionDavidKorn,Unix哲学的支持者,几年前在aSlashdotinterview中斥责Perl程序员用于编写单一的Perl脚本而不通过管道、重定向等使用Unix工具包。“Unix不仅仅是一个操作系统,”他说,“它是一种做事的方式,shell通过提供使它起作用的胶水。”似乎提醒同样适用于Ruby社区。Ruby具有通过popen、STDIN、STDOUT、STDERR、ARGF等与其他U

ruby-on-rails - 在 Unix 上,查找执行该程序的用户是否为 root?

我正在编写一个rake脚本,并希望检测(如果可能,使用Ruby而不是bash)执行rake脚本的用户是否具有root权限。如果它不是root那么我想终止脚本。 最佳答案 使用uid或euid在Process类:raise'Mustrunasroot'unlessProcess.uid==0 关于ruby-on-rails-在Unix上,查找执行该程序的用户是否为root?,我们在StackOverflow上找到一个类似的问题: https://stackove

Ruby:将 unix 时间戳转换为日期

这个问题在这里已经有了答案:Howtoconvertaunixtimestamp(secondssinceepoch)toRubyDateTime?(6个答案)关闭6年前。irb>dt=Time.now.utc=>2012-04-2610:47:01UTCirb>dti=dt.to_i=>1335437221现在,如何将dti转换回日期/时间?

ruby-on-rails - ruby /rails : converting a Date to a UNIX timestamp

我如何从Rails应用程序中的日期对象获取UNIX时间戳(自格林威治标准时间1970年以来的秒数)?我知道Time#to_i会返回一个时间戳,但是执行Date#to_time然后获取时间戳会导致大约一个月(不知道为什么。..).感谢任何帮助,谢谢!编辑:好的,我想我明白了——我在一个循环中多次处理一个日期,每次由于时区不匹配,日期都会稍微移动一点,最终导致我的时间戳延迟一个月.尽管如此,我还是很想知道是否有任何方法可以在不依赖Date#to_time的情况下执行此操作。 最佳答案 代码date.to_time.to_i应该可以正常工