【发布时间】:2010-05-28 21:50:06
【问题描述】:
我有一个 Sinatra::Base 对象,我想将它包含在我的所有 Web 应用程序中。在那个基类中,我有在启动时调用的配置方法。
我希望该配置代码能够向集中式数据库“注册”该服务。注册时需要发送的信息是如何联系这个网络服务的信息……比如主机和端口。
然后,我计划拥有一个监控服务,该服务将轮转所有已注册的服务,并偶尔 ping 它们以确保它们仍然正常运行。
在配置方法中,我无法获取端口信息。 'self.settings.port' 变量在此方法中似乎不起作用。
a) 关于如何获取端口的任何想法?我有主人。
b) 是否有一个 sinatra 插件已经做了这样的事情,所以我不必自己编写它? :-)
//在我的 Sinatra::Base 代码中。让我们称之为 register_me.rb
注册我 <:base>
配置做
//将主机和端口信息保存到数据库
结束
得到'/check_status'
//返回状态
结束
//在我的网络服务代码中
require register_me //此时sinatra会初始化RegisterMe对象并调用configure
发布('/blah')
//此特定网络服务的方法示例
结束
【问题讨论】:
标签: ruby web-services sinatra