rails应用中各数据平台的对接

Posted 小芬喵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rails应用中各数据平台的对接相关的知识,希望对你有一定的参考价值。

1.mongo

#Gemfile添加如下两个gem包
gem mongoid, ~> 5.1.0 gem mongo, ~> 2.4’
@client = Mongo::Client.new([host1,host2],:database=>database_name,:user=>"user_name",:password=>"password")
@db = @client[:database_name].database
@collection_names = @db.collection_names
@collection_names.each do |collection_name|
i=0
@db[collection_name.to_sym].find.each do |x|
  puts x
  i = i + 1
  break if i == 10
end
end

 

2.redis

$redis = Redis.new(:host => "host", :port => 6379, :db => 2, :password=>"password")
$redis.keys

 

3.elasticsearch 

gem elasticsearch
gem elasticsearch-rails
gem elasticsearch-model
$elastic = Elasticsearch::Client.new hosts: [{ host: ‘host1‘,port: ‘9200‘,user: ‘elastic‘,password: ‘password‘},{host: ‘host1‘,port: ‘9200‘,user: ‘elastic‘,password: ‘password‘}], randomize_hosts: true, log: false,send_get_body_as: "post" 
Elasticsearch::Model.client
= $elastic
$elastic.search index:"index_name"

 

4.kafka

gem ruby-kafka, ~> 0.5.0
kafka = Kafka.new(seed_brokers:["host:9092"])
consumer = kafka.consumer(:group_id=>"100")
consumer.subscribe("topic_name")
i=0
consumer.each_message do |meg|
  puts i=i+1
  puts meg.value
  break if i==10
end

 

以上是关于rails应用中各数据平台的对接的主要内容,如果未能解决你的问题,请参考以下文章

Rail片段缓存如何使您的应用受益,即阻止数据库调用?

Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段

以下代码片段是不是容易受到 Rails 5 中 SQL 注入的影响?

电信天翼物联网平台对接应用服务ctWing

Rails:旧数据与新数据不匹配时如何更新片段缓存

多量平台怎么对接