摘要:
正如其他语言一样,在 linux 系统上通过传入不同的参数来使得代码执行不同逻辑实现不同功能,这样的优点就是执行想要的既定逻辑而不需要修改代码重新编译与打包。在 Golang 语言中也为我们提供了相应的功能,直接上代码,在代码中会做详细的解释,当前运行环境为:Go-1.8.1 阅读全文
摘要:
有过 JAVA 语言学习经历的朋友都知道,面向对象主要包括了三个基本特征:封装、继承和多态。封装,就是指运行的数据和函数绑定在一起,JAVA 中主要是通过 super 指针来完成的;继承,就是指 class 之间可以相互继承属性和函数;多态,主要就是用统一的接口来处理通用的逻辑,每个 class 只 阅读全文
摘要:
概述:solr 作为搜索引擎系统,它应该包含两部分内容,分别是:索引系统 和 搜索系统。 索引系统 它主要负责将外部不同数据源的数据转换为 solr 格式规范的数据格式(我们称之为:SolrInputDocument),一般常见到的外部数据源包含有 1. 关系型数据库:mysql、oracle 2. 阅读全文
摘要:
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命令运行,这里我的 阅读全文
摘要:
1. NATS 之 Queueing(队列)模式验证 主要以下讲的都是基于 NATS 服务已经开启了(没有开启的请运行:gnatsd 启动);还有请注意所有运行的 go 文件都是在 $GOPATH/src/github.com/nats-io/go-nats/examples/ 下 1. 启动注册一 阅读全文
摘要:
1、NATS安装前的普及 NATS 的服务器是使用 GoLang 语言开发的,其可执行文件的名字为:gnatsd,表示:Go NATS Daemon。NATS服务器是一个开源软件,基于 MIT 许可证发布。 NATS Server有 Linux版、Mac版、Windows版。下面以Linux版为例, 阅读全文