hydra 是一个以来redis 的nodejs 微服务框架

安装

需要redis,使用docker 进行运行

  • redis
docker run  -d -p 6379:6379 redis
  • 安装yo && hydra-cli
sudo npm install -g yo generator-fwsp-hydra hydra-cli

配置redis 环境

instance 名称随意,具体环境配置即可

hydra-cli config dalong
redisUrl: 127.0.0.1
redisPort: 6379
redisDb: 15

使用脚手架工具,生成demo

yo fwsp-hydra
fwsp-hydra generator v0.3.1 yeoman-generator v3.0.0 yo v2.0.4
? Name of the service (`-service` will be appended automatically) userlogin
? Your full name? dalongrong
? Your email address? 1141591465@qq.com
? Your organization or username? (used to tag docker images) dalongrong
? Host the service runs on?
? Port the service runs on? 0
? What does this service do?
? Does this service need auth? No
? Is this a hydra-express service? Yes
? Set up a view engine? No
? Set up logging? No
? Enable CORS on serverResponses? Yes
? Run npm install? No
create userlogin-service/specs/test.js
create userlogin-service/specs/helpers/chai.js
create userlogin-service/.editorconfig
create userlogin-service/.eslintrc
create userlogin-service/.gitattributes
create userlogin-service/.nvmrc
create userlogin-service/.gitignore
create userlogin-service/package.json
create userlogin-service/README.md
create userlogin-service/userlogin-service.js
create userlogin-service/config/sample-config.json
create userlogin-service/config/config.json
create userlogin-service/scripts/docker.js
create userlogin-service/routes/userlogin-v1-routes.js Done!
'cd userlogin-service' then 'npm install' and 'npm start'

启动&&服务访问

  • 启动
yarn run start

node userlogin-service.js
INFO
{ event: 'start',
message: 'userlogin-service (v.0.0.1) server listening on port 28418' }
INFO
{ event: 'info', message: 'Using environment: development' }
serviceInfo { serviceName: 'userlogin-service',
serviceIP: '10.6.204.19',
servicePort: 28418 }

  • 访问
  • redis 服务注册信息

集成docker

  • build

使用hydra-cli 查看信息

  • 配置redis
hydra-cli config dalong
redisUrl: 127.0.0.1
redisPort: 6379
redisDb: 15
  • 选择instance
hydra-cli use dalong
  • 查看nodes
  • 更多支持的命令
hydra-cli
hydra-cli version 1.5.5
Usage: hydra-cli command [parameters]
See docs at: https://github.com/flywheelsports/hydra-cli A command line interface for Hydra services Commands:
help - this help list
cfg list serviceName - display a list of config versions
cfg pull label - download configuration file
cfg push label filename - update configuration file
cfg remove label - remove a configuration version
config instanceName - configure connection to redis
config list - display current configuration
use instanceName - name of redis instance to use
health [serviceName] - display service health
healthlog serviceName - display service health log
message create - create a message object
message send message.json - send a message
nodes [serviceName] - display service instance nodes
redis info - display redis info
refresh node list - refresh list of nodes
rest path [payload.json] - make an HTTP RESTful call to a service
routes [serviceName] - display service API routes
services [serviceName] - display list of services
shell - display command to open redis shell

说明

meduim 上有一个详细介绍实现细节的文章
https://medium.com/hydramicroservices/building-light-weight-microservices-using-redis-dc5b3bca741

参考资料

https://medium.com/hydramicroservices/building-light-weight-microservices-using-redis-dc5b3bca741

 
 
 
 

hydra nodejs 微服务框架简单试用的更多相关文章

  1. 基于.NET CORE微服务框架 -surging的介绍和简单示例 (开源)

    一.前言 至今为止编程开发已经11个年头,从 VB6.0,ASP时代到ASP.NET再到MVC, 从中见证了.NET技术发展,从无畏无知的懵懂少年,到现在的中年大叔,从中的酸甜苦辣也只有本人自知.随着 ...

  2. 简单Spring Cloud 微服务框架搭建

    微服务是现在比较流行的技术,对于程序猿而言,了解并搭建一个基本的微服务框架是很有必要滴. 微服务包含的内容非常多,一般小伙伴们可以根据自己的需求不断添加各种组件.框架. 一般情况下,基本的微服务框架包 ...

  3. 非常完善的两个微服务框架比较(SpringCloud与Dubbo)

    微服务架构是互联网很热门的话题,是互联网技术发展的必然结果.它提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值. 虽然微服务架构没有公认的技术标准和规范或者草案,但 ...

  4. 【微服务】使用spring cloud搭建微服务框架,整理学习资料

    写在前面 使用spring cloud搭建微服务框架,是我最近最主要的工作之一,一开始我使用bubbo加zookeeper制作了一个基于dubbo的微服务框架,然后被架构师否了,架构师曰:此物过时.随 ...

  5. AG-Admin微服务框架入门

    AG-Admin微服务框架入门  @qq群:一群: 837736451  二群 169824183 一 概要介绍 AG-Admin后台地址:https://gitee.com/minull/ace-s ...

  6. go微服务框架kratos学习笔记九(kratos 全链路追踪 zipkin)

    目录 go微服务框架kratos学习笔记九(kratos 全链路追踪 zipkin) zipkin使用demo 数据持久化 go微服务框架kratos学习笔记九(kratos 全链路追踪 zipkin ...

  7. 基于.NET CORE微服务框架 -谈谈surging API网关

    1.前言 对于最近surging更新的API 网关大家也有所关注,也收到了不少反馈提出是否能介绍下Api网关,那么我们将在此篇文章中剥析下surging的Api 网关 开源地址:https://git ...

  8. 基于.NET CORE微服务框架 -浅析如何使用surging

    1.前言 surging受到大家这么强烈的关注,我感到非常意外,比如有同僚在公司的分享会上分享surging, 还有在博客拿其它的RPC框架,微服务做对比等等,这些举动都让我感觉压力很大,毕竟作为个人 ...

  9. MicroService.Core简易微服务框架《一、简介》

    MicroService.Core MicroService.Core 的初衷是为了方便的创建一个微服务, 可作为 Windows Service 或者控制台模式启动. 它底层使用了 OWin 自托管 ...

随机推荐

  1. hdu 5185 动态规划 分析降低复杂度

    这题说的是 x[1]+x[2]+x[3]+…+x[n]=n, 这里 0 <= x[i] <= n && 1 <= i <= n x[i] <= x[i+1 ...

  2. update t_conference set c_address = replace(c_address,'中华人民共和国','');

    update t_conference set c_address = replace(c_address,'中华人民共和国','中国');      //把c_address字段中的‘中华人民共和国 ...

  3. “System.Runtime.InteropServices.COMException (0x80070422): 无法启动服务”解决方法

    应用程序中发生了无法处理的异常.如果单击“退出”,应用程序将立即关闭.无法启动服务,原因可能是已被禁用或其相关联设备没有启动.(异常来自HRESULT:0X80070422).点击详细内容:有关调用实 ...

  4. 高可用Mysql架构_Haproxy+keepalived+mycat集群的配置

    接上一篇文章http://www.cnblogs.com/wt645631686/p/8310891.html,虽然已经在原有两台mycat基础上增加了Haproxy作为mycat的中间服务器,不足的 ...

  5. mailx配置安装

    mailxwget http://ftp.debian.org/debian/pool/main/h/heirloom-mailx/heirloom-mailx_12.5.orig.tar.gztar ...

  6. iptable的使用

    目录 iptables iptables iptables详解 2012-07-18 20:10:08 分类: LINUX 一:前言 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它 ...

  7. Qt无法调试Qvector

    现象: 解决: 打开文件 $(VSDIR)\Common7\Packages\Debugger\autoexp.dat (VSDIR是本机Visual Studio的安装目录)把定义QVector和Q ...

  8. Gym 101246D Fire in the Country(dfs求SG函数)

    http://codeforces.com/gym/101246/problem/D 题意: 给定一个无向有环图,大火从1点开始,每个时间点与它相邻的点也将会着火,现在有两个人轮流操作机器人,机器人从 ...

  9. 爬虫模拟登陆之formdata表单数据

    首先HTTP协议是个无连接的协议,浏览器和服务器之间是以循环往复的请求回复来交互的,交互的形式是以文件形式来进行的.比如在chrome开发者工具network中看到了 每一行是一个文件,又文件大小啊, ...

  10. QWebView_QWebEngineView

    1.http://stackoverflow.com/questions/29055475/qwebview-or-qwebengineview “ QWebView uses WebKit as t ...