[学习笔记]尝试go-micro开发微服务<第一波>
平时项目都是基于c++,lua,node,
现在打算开始自学开发微服务; 也顺带磨砺下go和docker
前期准备
1. 有golang编程基础
本系列文章是基于有golang编程基础,有过实际开发项目的前提去展开,最好有一定的架构经验.
2. 了解RPC、SOA、SOCKET通信等概念
这些概念是构建微服务的基础,打好基础后更容易上手
3. 了解Docker
Docker的存在,在一定程度上让golang火热起来,同时在云计算虚拟化部署上,起到关键性作用.
内容编排
1.入门
了解什么是微服务,使用原生go语言构建一个最简单的微服务.
2.Go-Micro介绍和使用
Go-Micro是一个微服务开发框架,后续的架构都是基于该框架
3.Protobuf介绍和使用
微服务重要的通信协议,由于其高性能和支持跨语言等特性,被广泛应用于微服务通信中.
4.服务发现和治理
服务发现和治理,在"高性能高可用"中,发挥重要的作用
5.日志跟踪和监控
在单体应用中,我们可能打文本日志就能记录重要的信息,很方便地排查问题和还原现场,但是在微服务当中,由于存在多服务调用,一个请求可能会经过多个服务处理,要定位问题到底出在哪个环节,日志跟踪和监控必不可少.
6.Docker介绍和使用,使用Docker部署微服务应用
以最简单的方式去介绍Docker和使用Docker部署我们的微服务应用
7.DevOps部署我们的微服务应用
由于微服务框架结构复杂,如何自动化地去构建和部署我们的应用,DevOps又是怎样实现的?
8.消息队列和分布式事务
使用一个消息队列服务去处理微服务间通信和事务处理,解决拆分后的数据一致性难题.
9.服务降级和熔断
高并发和高可用,是服务的重点和难点,构建的微服务应用,如何避免雪崩效应和维持服务健康状态,是一个无法忽略的难题.
[学习笔记]尝试go-micro开发微服务<第一波>的更多相关文章
- Go micro 开发微服务步骤
1.写 proto文件,定义接口和服务 2.实现 接口,注册 handle 3.调用服务:直接用rpc 客户端调用,或者用 api http web等调用 api http web 等服务可以对客户端 ...
- 社区活动分享PPT:使用微软开源技术开发微服务
上周六在成都中生代技术社区线下活动进行了一个名为"微软爱开源-使用微软开源技术开发微服务"的技术分享. 也算是给很多不熟悉微软开源技术的朋友普及一下微软最近几年在开源方面所做的努力 ...
- 使用.NET Core+Docker 开发微服务
.NET Core发布很久了,因为近几年主要使用java,所以还没使用过.NET Core,今天正好有一个c#写的demo,需要做成服务,不想再转成java来实现,考虑使用.NET CORE来尝下鲜, ...
- .net 与 java 开发微服务对比
java+spring boot+maven对比.net 优势: 1. spring 自身带的ioc 比.net 更简单易用. 2. spring actuator的健康检测等运行时状态查看功能很赞. ...
- Spring boot 零配置开发微服务
2018年12月29日星期六 体验Spring boot 零配置开发微服务 1.为什么要用Spring boot? 1.1 简单方便.配置少.整合了大多数框架 1.2 适用于微服务搭建,搭建的微服务 ...
- 【转】 Pro Android学习笔记(七八):服务(3):远程服务:AIDL文件
目录(?)[-] 在AIDL中定义服务接口 根据AIDL文件自动生成接口代码 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.n ...
- 【转】 Pro Android学习笔记(七六):服务(1):local和remote
文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.net/flowingflying/ Android提供服务,服务是运行在后台的 ...
- blfs(systemd版本)学习笔记-为桌面环境构建xorg服务
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! lfs准备使用桌面环境,首先需要构建xorg服务 xorg服务项目地址:http://www.linuxfromscratch. ...
- blfs(systemv版本)学习笔记-为桌面环境构建xorg服务
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! lfs准备使用桌面环境,首先需要构建xorg服务 xorg服务项目地址:http://www.linuxfromscratch. ...
随机推荐
- centos7最小安装后——网络配置、常见命令安装,远程连接、yum源安装软件包
安装环境 #软件:vmware 14 #centos版本:CentOS-7-x86_64-DVD-1810 下载地址: #网络配置:NAT模式 配置 网络配置 #动态获取ip: centos7最小安装 ...
- Win10新增API
Win10新增API为以下一些方面: Windows.AI Windows.ApplicationModel Windows.Devices Windows.Globalization Windows ...
- 图的遍历DFS
图的遍历DFS 与树的深度优先遍历之间的联系 树的深度优先遍历分为:先根,后根 //树的先根遍历 void PreOrder(TreeNode *R){ if(R!=NULL){ visit(R); ...
- 从用SwiftUI搭建项目说起
前言 后续这个SwiftUI分类的文章全部都是针对SwiftUI的日常学习和理解写的,自己利用Swift写的第二个项目也顺利上线后续的需求也不是特着急,最近正好有空就利用这段时间补一下自己对Swift ...
- Day5 - 05 函数的参数-关键字参数
可变参数可以传入任意个参数,并在函数调用时自动组为一个tuple,而关键字参数允许传入任意个携带参数名的参数,这些关键字参数在函数内部自动组为一个dict. >>> ...
- mysql 8.0 MGR组复制配置
一.配置组复制的步骤 1.初始化数据目录 2.配置主服务器(primary) 3.配置辅助服务器(secondaries) 4.启动mysql实例 5.安装组复制插件(primary and seco ...
- ssh远程服务器不通
1.关闭防火墙 service iptables status service iptables stop 2.在/etc/hosts文件添加远程服务器信息(连接的两端都添加) 服务器1(racdb1 ...
- WindowsPhone8中LongListSelector的扩展解决其不能绑定SelectdeItem的问题
微软在Wp8中集成了LongListSelector, 但是该控件在ViewModel中不能实现的SelectdeItem双向绑定,因为其不是DependencyProperty没办法只能实现扩展! ...
- Envoy入门实战部署
一.Envoy介绍 官方文档解释: Envoy是专为大型现SOA(面向服务架构)设置的L7代理和通信总线.该项目源于以下理念:网络对应用程序来说应该是透明的.当网络和应用程序出现问题时,应该很容易确定 ...
- vue 按键修饰符 keyup
按键修饰符 keyup 通过官方文档可查询到特殊的按键修饰符 .enter .tab .delete (捕获"删除"和"退格"键) .esc .space .u ...