rising_dragon

  • S0_610476
    了解作者
  • 13.2KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-26 09:06
    上传日期
升龙 将AWS SQS / SNS用作微服务的事件工作程序。 ( 包装纸) 安装 将此行添加到您的应用程序的Gemfile中: gem 'rising_dragon' 然后执行: $ bundle 或将其自己安装为: $ gem install rising_dragon 发布者使用情况 require 'aws-sdk' require 'rising_dragon' sns_client = Aws :: SNS :: Client . new ( access_key_id : Settings . aws . access_key_id , secret_access_key : Settings . aws . secret_access_key , region : Settings . aws . region , ) publisher =
rising_dragon-master.zip
内容介绍
[![Build Status](https://travis-ci.org/ota42y/rising_dragon.svg?branch=master)](https://travis-ci.org/ota42y/rising_dragon) [![Code Climate](https://codeclimate.com/github/ota42y/rising_dragon/badges/gpa.svg)](https://codeclimate.com/github/ota42y/rising_dragon) # RisingDragon Use AWS SQS/SNS as event worker for Microservices. ([Shoryuken](https://github.com/phstc/shoryuken) wrapper) ## Installation Add this line to your application's Gemfile: ```ruby gem 'rising_dragon' ``` And then execute: $ bundle Or install it yourself as: $ gem install rising_dragon ## Publisher Usage ```ruby require 'aws-sdk' require 'rising_dragon' sns_client = Aws::SNS::Client.new( access_key_id: Settings.aws.access_key_id, secret_access_key: Settings.aws.secret_access_key, region: Settings.aws.region, ) publisher = ::RisingDragon::SNS::Publisher.new(sns_client) data = { id: 1, name: "first last" } publisher.publish("SNSTopicName", "EventType", data) ``` ## Worker Usage execute `bundle exec shoryuken -r steps_worker.rb` ### setting file ```ruby # steps_worker.rb require 'aws-sdk' require 'rising_dragon' RisingDragon.sqs_client = Aws::SQS::Client.new( secret_access_key: Settings.aws.secret_access_key, access_key_id: Settings.aws.access_key_id, region: Settings.aws.steps_sqs.region ) class StepsEventHandler < ::RisingDragon::SQS::Handler def handle(event) puts event.type puts event.data puts event.id puts event.timestamp end end class SQSWorker include RisingDragon::SQS::Worker rising_dragon_options "SQSQueueName" rising_dragon_register "StepsEvent", StepsEventHandler rising_dragon_ignore "IgnoreEvent" end ``` ### event structure ```ruby { Message: { type: "StepsEvent", data: { # write youre event data "id": 42, "datetime": DateTime.new(2016, 04, 01, 16, 00, 00, "+09:00") }, id: SecureRandom.uuid, timestamp: (Time.now.to_f * 1000).to_i } } ``` ## Development After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/ota42y/rising_dragon. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
评论
    相关推荐
    • sync-moltin-to-shipengine:此特定示例演示如何如何从Moltin同步已付费捕获的订单状态更新,以通过We
      由 Webhooks触发以创建货件的异步微服务。 内置! :star-struck: :hammer_and_wrench: 设置 和帐户都需要此功能。 使用以下凭据在项目根目录中创建一个.env : MOLTIN_CLIENT_ID = MOLTIN_CLIENT_SECRET = ...
    • 微服务
      微服务 创建此存储库是为了使用Java构建示例微服务。 贡献者包括: Akinola John(服务开发者) Favor Chukwuedo(前端API使用者) 测试 要测试此服务,请下载Service Jars和Starters文件夹,并按照自述文件中的...
    • 微服务Java
      使用用于用户的密钥验证时,需要在标题或请求中添加“ apikey”。 lsof -ti:8000 | xargs kill ==================设置Lan Dau Tien ======================== ================泊坞窗网络创建码头网 ...
    • python-微服务
      如果docker-compose up无法运行或给出错误访问消息,请运行以下命令 run sudo usermod -aG docker $USER newgrp docker 运行docker hello world后的输出应如下所示 docker run hello-world    20:25:40  ...
    • 微服务
      Golang微服务解决方案 特征 三个容器 Golang网络工作者 mysql数据库 phpMyadmin 高负载处理端点 在后台保存到数据库 DevOps工作 docker-compose设置 自动单元测试 GitHub Actions手动集成测试 简单的用法 go build ...
    • 应用微服务
      应用微服务 发展历程 码头工人 使用可以在Docker中完成开发而无需任何外部依赖。 首次运行时,您可以使用bin/bootstrap.sh本地开发环境。 之后,您可以使用标准的命令管理环境。 下面列出了一些更常见的命令。 ...
    • 测试微服务
      测试微服务
    • 微服务认证2
      微服务认证2
    • 微服务酒吧
      微服务酒吧 1. Git * git init * git add README.md * git commit -m " first commit " * git branch -M main * git remote add origin https://github.com/bomc/spp.git * git push -u origin main 2. Swagger ...
    • 钱包微服务
      钱包微服务 在JVM上运行的简单钱包微服务,用于管理贷/借交易。 描述 Rest API,用于使用用户的当前余额访问货币帐户。 可以通过在帐户上注册交易(借方交易(移出资金)或贷方交易(添加资金))来修改余额。 仅当...