04 2017 档案
摘要:1. golang 中 json 转 struct <1. 使用 json.Unmarshal 时,结构体的每一项必须是导出项(import field)。也就是说结构体的 key 对应的首字母必须为大写。请看下面的例子: 输出的结果如下: 从结果可以看出,json 数据并没有写入 Person 结
阅读全文
摘要:1. go语言从键盘获取输入内容 <1. 最简单的办法是使用 fmt 包提供的 Scan 和 Sscan 开头的函数。请看以下程序: 键盘输入:liang yongxing,输出结果如下所示: Scanln 扫描来自标准输入的文本,将空格分隔的值依次存放到后续的参数内,直到碰到换行。Scanf 与其
阅读全文
摘要:启动服务 首先启动 go-nats-streaming 服务。为了更加能说明问题,我们启动的时候不使用默认端口号 编写一个简单的应用 上面的代码使用了订阅者启动参数的 StartWithLastReceived,这个函数的含义为:读取刚才发布者最近发布的消息内容。具体还有哪些启动参数,以下列出详情:
阅读全文
摘要:NATS Streaming NATS Streaming是一个以NATS为驱动的数据流系统且它的源码也是由Golang语言编写的。其中NATS Streaming服务是一个可执行的文件名为:nats-streaming-server。NATS Streaming与底层NATS服务平台无缝嵌入、扩展
阅读全文
摘要:NATS服务集群化 NATS支持每一个服务按照集群模式方式运行。你可以将这些服务组织在一起形成一个集群来提高服务器的容量的消息传递系统,并可以提升整个系统的弹性话和高可用性。 注意,NATS集群服务器转发是通过一个跳跃来完成的。这意味着每个gnatsd当从一个客户端接收到消息之后通过路由信息会立即转
阅读全文
摘要:尽管NATS可以无配置的运行,但也可以使用配置文件配置NATS服务的启动,在实际应用当中,一般都是通过使用配置文件来启动服务的。 1. 配置项包括 客户端监听器端口 Client listening port HTTP监听器端口 HTTP monitoring port 客户端认证 Client a
阅读全文
摘要:1. Request() 和 Publish() 之间的不同 Publish()发送一条消息到 gnatsd 服务,是使用它的地址作为一个 主题(subject),而 gnatsd 交付消息给所有注册了此 主题(subject) 的订阅者。可选地是,你还可以发送带 reply subject 的消息
阅读全文
摘要:NATS客户端 一个NATS客户端是基于NATS服务端来说既可以是一个生产数据的也可以是消费数据的。生产数据的叫生产者英文为 publishers,消费数据的叫消费者英文为 subscribers,其中消费者既可以是同步的也可以是异步的。NATS客户端与NATS服务端是通过点对点的方式进行连接通信的
阅读全文
摘要:概述 你可以使用 nats-top 来实现类似于 linux 中 top 命令的实时监控 nats 服务; 可以使用 nats 提供的工具来进行针对性的调优。 安装nats-top 如果没有权限执行,那么需要以以下方式执行 启动相关服务 启动 NATS 服务并激活对应的监控端口 执行 nats-to
阅读全文
摘要:概述 常用的命令行参数解析有 2 种方式,一种是不带参数标签直接接上参数值,另外一种就是带有标签的参数解析。第一种我们可以直接通过 os 包提供的原始方法获取,第二种我们需要通过 flag 包来解析获得。 不带标签参数解析 先看以下源码案例: 打开终端找到你对应编写的这个类通过go命令运行,这里我的
阅读全文

浙公网安备 33010602011771号