自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 go-micro项目实战七 logging

logging我们之前分别讲了微服务架构下的tracing,metrics。这节我们来讲一下logging日志作为整个代码行为的记录,是程序执行逻辑和异常最直接的反馈。对于整个系统来说,日志是至关重要的组成部分。通过分析日志我们不仅可以发现系统的问题,同时日志中也蕴含了大量有价值可以被挖掘的信息,因此合理地记录日志是十分必要的。个人理解 tracing对于系统性能分析很重要。metrics...

2019-04-29 17:31:29 3391

原创 go-micro项目实战六 go-config

go-config你可能已经发现了,我们之前的项目里的所有数据库连接和一些其他需要配置的东西我们都硬编码在代码里了。这并不合理。因此我们这一节来引入go-config,来解决这个问题。go-config 官方文档说这是一个动态的可插拔的配置库。go-config的使用1.在项目根目录创建config.json文件{ "mysql" : { "host" : "192.168....

2019-04-28 14:32:07 4356

原创 go-micro项目实战五 服务监控

服务监控可能读者会问,链路追踪和服务监控不是一个东西么?以下知识普及来源于网上。我这里从网上找到一张图 很形象。Logging - 用于记录离散的事件。例如,应用程序的调试信息或错误信息。它是我们诊断问题的依据。Metrics - 用于记录可聚合的数据。例如,队列的当前深度可被定义为一个度量值,在元素入队或出队时被更新;HTTP 请求个数可被定义为一个计数器,新请求到来时进行累加。Tr...

2019-04-26 16:20:53 5534 2

原创 go-micro项目实战四 链路追踪

链路追踪微服务架构下,所有的服务都分散在不同的地方,一旦某个服务出现问题,排查起来很费时费力。所以在微服务的演进下,需要一个全链路追踪系统来分析服务的运行状态。go-micro的trace插件Micro通过Wrapper实现了三种trace接口,aswxray,opencensus,opentracing。第一个是亚马逊AWS的。没有尝试。opentracing是一个开源的标准。提供对厂商...

2019-04-26 08:59:46 5863 1

原创 go-micro项目实战二 创建商品服务和订单服务

商品服务提供商品列表、详情、库存更新等服务订单服务提供订单提交、订单查询、状态变更等服务创建服务创建服务的过程和创建用户服务的过程一样。这里就不赘述了。如需查看源码可以参考https://github.com/qin-jd/shopping服务间交互例如在订单服务中,提交订单时需要先去商品服务那查询库存数量,然后生成订单,再对商品进行减库存操作。我们需要在订单服务的handler里...

2019-04-24 14:24:34 1862 2

原创 go-micro项目实战三 消息订阅

通知服务提供发送通知服务新建服务micro new shopping/notification该服务比较简单,只实验了消息发布和订阅的功能,未提供真正通知的逻辑。实现的功能是:订单提交成功后,通知用户订单已经提交。消息代理基于go-micro强大的插件机制。go-plugins内置了诸如grpc,rabbitmq,nats,redis。几乎可以在这些代理之间无缝切换。本次实验采用r...

2019-04-24 14:24:19 4190 5

原创 go-micro项目实战一 创建用户服务

###用户服务用户服务,提供登录、注册、修改密码等功能。###新建服务micro new shopping/user整理结构增加model目录和repository目录,删掉proto里默认的example文件夹,创建user文件夹。开发步骤:1.定义接口 -> 2.生成接口代码 -> 3.编写model层代码 -> 4.编写repository数据操作代码 -&gt...

2019-04-24 14:24:09 4549 18

原创 go-micro电商项目实战简介

项目简介该项目是我自学go-micro的练手项目。作为一个用来学习的小型的电商项目。该项目会包括以下微服务:user-srv 用户服务,提供注册、登录、修改密码等操作product-srv 商品服务,提供商品搜索,商品详情,减少库存等操作order-srv 订单服务,提供提交订单、查看订单详情等操作notification-srv 通知服务,提供发送通知的操作代码比较糙,因为我完全没...

2019-04-24 14:23:43 7816 1

原创 micro 使用grpc协议

gRPCgrpc 是谷歌开源的rpc框架,基于http2实现,并支持跨语言。高性能,跨语言。go-micro和grpc无缝集成。go-micro里默认使用的通讯协议是MUCP https://github.com/micro/protocol如果想要在go-micro里使用grpc协议,可以使用官方的grpc插件go-grpchttps://github.com/micro/go-gr...

2019-04-10 17:20:33 4543 2

原创 micro api入门

上一节学习了go-micro的入门。这一节我们来熟悉micro的工具集里的api用法。micro api网关Micro的api就是api网关API参考了API网关模式为服务提供了一个单一的公共入口。基于服务发现,使得micro api可以提供具备http及动态路由的服务。下载micro工具集go install github.com/micro/micro该命令会在GOPATH/bi...

2019-04-01 17:25:25 5004 5

原创 go-micro入门

安装go-micro1.安装服务发现能力,docker安装consuldocker run -d --net=host -e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' --name consul_server consul agent -server -bind=192.168.0.111 -bootstrap-expe...

2019-04-01 11:43:45 9052 4

GB/T 4754-2017

GB/T 4754-2017 行业国标代码 2017版 数据预览: INSERT INTO `trade` VALUES ('1', '0', '0', '农、林、牧、渔业', 'n', '0', 'A', '本门类包括01~05大类'); INSERT INTO `trade` VALUES ('2', '1', '1', '农业', 'n', '0', 'A', '指对各种农作物的种植'); INSERT INTO `trade` VALUES ('3', '2', '11', '谷物种植', 'g', '0', 'A', '指以收获籽实为主,供人类食用的农作物的种植,如稻谷、小麦、玉米等农作物的种植'); INSERT INTO `trade` VALUES ('4', '3', '111', '稻谷种植', 'd', '0', 'A', null); INSERT INTO `trade` VALUES ('5', '3', '112', '小麦种植', 'x', '0', 'A', null); INSERT INTO `trade` VALUES ('6', '3', '113', '玉米种植', 'y', '0', 'A', null); INSERT INTO `trade` VALUES ('7', '3', '119', '其他谷物种植', 'q', '0', 'A', null); INSERT INTO `trade` VALUES ('8', '2', '12', '豆类、油料和薯类种植', 'd', '0', 'A', null);

2019-03-11

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除