小编Mat*_*att的帖子

Ruby和规则引擎

我正在寻找一种简单的方法让用户定义一组规则来过滤对象.

例如.让他们定义类似"如果预订日期<2009/04/30且值> 100.00,请通知我预订"

或多或少:我想拥有一个带有自定义DSL的Ruby规则引擎.

有图书馆提供吗?遇到过Ruleby,但它还不支持自定义DSL.

最好的办法是什么?

ruby rule-engine

15
推荐指数
2
解决办法
6232
查看次数

如何更新亚马逊CDN(CloudFront)上的文件?

有没有办法更新存储在Amazon CloudFront(亚马逊的CDN服务)上的文件?似乎它不会对我们制作的文件进行任何更新(例如删除文件并使用与以前相同的文件名存储新文件).我是否必须明确触发更新过程以从边缘服务器中删除文件以获取已发布的新文件内容?

谢谢你的帮助

cloud cdn amazon-s3 amazon-web-services amazon-cloudfront

15
推荐指数
2
解决办法
2万
查看次数

在Rails中使用memcached的最佳实践?

由于我们的应用程序中的数据库转换越来越耗时,我们已经开始使用memcached来减少传递给MySQL的查询量.

总而言之,它工作正常,真的可以节省大量时间.

但是,由于缓存是"无声地出现"作为一种解决方法来为应用程序提供更多果汁,我们的许多模型现在包含如下代码:

def self.all_cached

  Rails.cache.fetch('object_name') {

    find(

      :all,
      :include => [associations])

    }

end
Run Code Online (Sandbox Code Playgroud)

随着填充和刷新缓存在应用程序中的几个类中发生,这变得越来越痛苦.

现在,我想知道是否有更好的方法来抽象memcached逻辑,使其更强大,更容易在所有需要的模型中使用?

我正在考虑使用某种memcached模块,它包含在所有需要的模块中.

但在玩之前,我想:让我们先问专家:-)

谢谢

马特

ruby memcached ruby-on-rails

14
推荐指数
2
解决办法
9157
查看次数

验证XML:验证根目录没有可用的匹配全局声明

我正在尝试使用Ruby针对XSD架构验证以下XML.它根本不起作用,停止并显示错误消息

错误:元素'请求':没有可用于验证根的匹配全局声明.

也许它是命名空间?有任何想法吗?

XML

<?xml version="1.0" encoding="UTF-8"?>
<request type="test" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <channel name="channel">
    <username>user</username>
    <password>pass</password>
  </channel>

  <hotel id="1">
    <date from="2009-07-07" to="2009-07-17"/>
    <room id="1">
      <allocation>10</allocation>
    </room>
  </hotel>
</request>   
Run Code Online (Sandbox Code Playgroud)

XSD

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

  <!-- channel -->
  <xsd:element name="channel">
    <xsd:attribute name="name" use="required" type="xsd:string" />
    <xsd:sequence>
      <xsd:element username="name" use="required" type="xsd:string"/>
      <xsd:element password="country" use="required" type="xsd:string"/>
    </xsd:sequence>
  </xsd:element>

  <!-- hotel -->
  <xsd:element name="hotel">
    <xsd:attribute name="id" use="required" type="xsd:string" />
    <xsd:sequence>
      <xsd:element name="hotel">
        <xsd:attribute name="from" use="required" type="xsd:string" />
        <xsd:attribute name="to" use="required" type="xsd:string" />
      </xsd:element>
      <xsd:element ref="room" minOccurs="1"/>
    </xsd:sequence>
  </xsd:element>


  <!-- …
Run Code Online (Sandbox Code Playgroud)

ruby xml xsd libxml2

8
推荐指数
1
解决办法
2万
查看次数

在iOS设备的主屏幕上设置书签的默认标题?

在iOS设备的主屏幕上为书签设置默认图像时使用

<link rel="apple-touch-icon-precomposed" href="bla.png"/>
Run Code Online (Sandbox Code Playgroud)

书签的标题始终是Web应用程序标题的一部分.有没有机会设置默认标题,该标题会自动显示在"添加到主屏幕"对话框中?

谢谢

马特

bookmarks web-applications ios

7
推荐指数
2
解决办法
6152
查看次数

使用Ruby Net实现重新连接策略

我正在开发一个小型应用程序,它将XML发布到一些web服务.这是使用Net :: HTTP :: Post :: Post完成的.但是,服务提供商建议使用重新连接.

类似的事情:第一次请求失败 - > 2秒后再次尝试第二次请求失败 - > 5秒后再次尝试第3次请求失败 - > 10秒后再次尝试...

这样做有什么好办法?只需在循环中运行以下代码,捕获异常并在一段时间后再次运行它?或者还有其他聪明的方法吗?也许Net包甚至有一些我不知道的内置功能?

url = URI.parse("http://some.host")

request = Net::HTTP::Post.new(url.path)

request.body = xml

request.content_type = "text/xml"


#run this line in a loop??
response = Net::HTTP.start(url.host, url.port) {|http| http.request(request)}
Run Code Online (Sandbox Code Playgroud)

非常感谢,永远感谢您的支持.

马特

ruby reconnect webservice-client

6
推荐指数
1
解决办法
1244
查看次数

如何监控乘客/ mod_rails流程?

我已经搜索过该网站,但找不到任何合适的信息.由于周围总有一些专家,我敢肯定其中一个人确切地知道我在寻找什么:-)

我们是一个平衡的系统:

Machine 1:     HAProxy load balancer
Machine 2 & 3: Apache mod_rails and (of course) our Rails applications
Run Code Online (Sandbox Code Playgroud)

那些是我们能够使用monit(或其他监控工具)监控所有Mongrel流程的日子.

有没有办法用monit(或其他工具)轻松,巧妙地监控乘客流程?如何动态获取正在运行的进程的所有pid并将其传递给监视?

马特

monitoring ruby-on-rails passenger mod-rails

5
推荐指数
1
解决办法
7989
查看次数

Linux系统上的内存使用情况

如果我跑

top
Run Code Online (Sandbox Code Playgroud)

在Linux系统上,我可以看到很多关于内存使用情况的信息.

Mem:  15736360k total,  8415332k used,  7321028k free,   174876k buffers
Swap:        0k total,        0k used,        0k free,  2630508k cached
Run Code Online (Sandbox Code Playgroud)

我想知道:告诉我的"缓存"属性是什么?似乎这根本没有被释放 - 这是正常行为吗?

我们正在为我们的网络应用运行memcached.这有什么关系吗?

马特

linux memory memcached

1
推荐指数
1
解决办法
2636
查看次数

ClassName到class_name

我相信这对你来说很容易:

假设我有一个字符串"ThisIsMyString",我想使用Ruby将其格式化为"this_is_my_string".

我怎么做?

马特

ruby string format formatting string-formatting

1
推荐指数
1
解决办法
526
查看次数

有没有memcache"目录"?

我们在几个Rails应用程序中使用了memcache.现在我想知道:有没有办法获取存储在memcache中的所有对象的列表,包括每个值占用的数据量?

例如:

key       | memory(Bytes) |   %
-----------------------------------
foo_key   | 15013         |   0.3
bar_key   | 2201          |   0.05
Run Code Online (Sandbox Code Playgroud)

在文档中找不到任何内容......

谢谢

马特

memory memcached ruby-on-rails status

1
推荐指数
1
解决办法
220
查看次数