当前位置: 首页 > news >正文

大连网站设计开发站长工具网站排名

大连网站设计开发,站长工具网站排名,做网站用什么空间好,北京规划建设 杂志 官方网站微服务入门(go) 和单体服务对比:里面的服务仅仅用于某个特定的业务 一、领域驱动设计(DDD) 基本概念 领域和子域 领域:有范围的界限(边界) 子域:划分的小范围 核心域…

微服务入门(go)

和单体服务对比:里面的服务仅仅用于某个特定的业务

一、领域驱动设计(DDD)

基本概念

领域和子域

领域:有范围的界限(边界)

子域:划分的小范围

核心域:业务系统的核心价值

通用子域:为所有子域提供通用子域

支撑子域:专注于业务的某一重要子域

举例:

  • 电商——>领域
  • 商品子域,订单子域,销售子域……——子域
  • 销售子域——核心子域
  • 邮件子域,短信子域——通用子域
界限上下文

目的:如何控制边界

领域模型

领域:对需要解决问题的抽象

模型:针对问题提出的解决方案

DDD域微服务四层架构

领域服务四层架构主要分为接口层,应用层,领域层,基础层四个部分

完整的DDD微服务相关的流程如下:

微服务架构

ps:要领域驱动,而不是数据驱动设计,也不是界面驱动设计

(确实一般的都是数据驱动设计)

ps:要边界清晰,而不是很小的单体,也不能过度拆分

二、Docker

为什么需要docker:

  • 部署更新低效
  • 环境一致性难保证
  • 构建容易分发难(环境上的复刻)
应用场景
  • 构建运行环境
  • 微服务
  • CICD(持续集成和部署)
重要概念
  • client——可以运行docker的命令
  • 服务器进程——管理镜像和容器
  • 镜像仓库——存储镜像的仓库
docker架构的示意图
Docker架构

ps : docker daemon:docker的守护进程

Docker常用命令

◆Docker 仓库操作:pull,push
◆Docker 镜像管理:images,rmi,build
◆Docker生命周期管理:run,start,stop,rm

查看docker版本

image-20250129031550252

sudo docker version
拉取镜像
sudo docker pull nginx

出现了报错

image-20250129031733969

报错解决方案

按顺序执行下面的代码(主要功能是修改了docker的配置文件)

vim /etc/docker/daemon.json

进入了这个(可能是空白的)文件后输入:

{"registry-mirrors": ["https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com","https://docker.m.daocloud.io","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://your_preferred_mirror","https://dockerhub.icu","https://docker.registry.cyou","https://docker-cf.registry.cyou","https://dockercf.jsdelivr.fyi","https://docker.jsdelivr.fyi","https://dockertest.jsdelivr.fyi","https://mirror.aliyuncs.com","https://dockerproxy.com","https://mirror.baidubce.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://docker.mirrors.sjtug.sjtu.edu.cn","https://docker.mirrors.ustc.edu.cn","https://mirror.iscas.ac.cn","https://docker.rainbond.cc"]
}

重新加载配置文件和重启docker服务

systemctl daemon-reload
systemctl restart docker

再次拉取

image-20250129032019087

成功!

查看现有的镜像
docker images

image-20250129032143878

查看在运行的镜像

image-20250129032253824

三、go-mirco

rpc

远程过程调用,包含了传输协议和编码协议,不同计算机之间的程序可以进行调用

grpc

基于http2.0,是Google开发的,默认支持protocol buffers数据序列化协议

protocol buffers

是一种轻便高效的结构化数据的协议,通常用于存储数据和需要远程数据通信的程序上

优势:跨语言,更小,更快,更简单

常用概念
  • message:描述了一个请求或者响应的消息格式
  • 字段标识:消息的定义中,每个字段都有唯一的数值标签

(不可以重复)

  • 常用数据类型:double,float,int32/int64,bool,string,bytes
  • Service服务的定义:在service里面可以定义一个rpc服务接口
Protocol Buffers 数据类型与 Go 数据类型的对应
Protocol Buffers 类型Go 类型描述
doublefloat64双精度浮点数,64 位
floatfloat32单精度浮点数,32 位
int32int32有符号整型,32 位
int64int64有符号整型,64 位
uint32uint32无符号整型,32 位
uint64uint64无符号整型,64 位
sint32int32有符号整型,32 位,采用 ZigZag 编码,适合存储负数
sint64int64有符号整型,64 位,采用 ZigZag 编码,适合存储负数
fixed32uint32无符号整型,32 位,占用固定 4 字节存储
fixed64uint64无符号整型,64 位,占用固定 8 字节存储
sfixed32int32有符号整型,32 位,占用固定 4 字节存储
sfixed64int64有符号整型,64 位,占用固定 8 字节存储
boolbool布尔值,表示 truefalse
stringstringUTF-8 编码的字符串
bytes[]byte二进制数据
枚举类型 (enum)自定义生成的枚举类型Protobuf 枚举会在 Go 中生成一个对应的枚举类型
消息类型 (message)自定义生成的结构体类型Protobuf 消息会在 Go 中生成一个对应的结构体类型
编写protocol buffer的格式规范

image-20250129035420452

protocal buffer示例
syntax = "proto3";package go.mirco.service.product;
option go_package = "./;product";
service Product {rpc AddProduct (ProductInfo) returns (ResponseProduct){}
}message ProductInfo {int64 id = 1 ;string product_name = 2 ;// 尽量用1-15,超过15会用俩字节去装
}message ResponseProduct{int64 product_id = 1 ;}
生成对应的.go和.micro.go文件

打开终端,输入以下命令:

protoc --go_out=./ --micro_out=./ ./proto/account/account.proto

上面的命令执行后,我们会发现同级目录多了两个go文件,这就是自动生成好的编译之后的文件。

命令解释
  • –go_out 指定当前的目录./
  • –micro_out 指定当前micro目录./
  • ./proto/account/account.proto 指定要编译的.proto文件地址

image-20250129100651751

生成的文件的效果如下image-20250129100715408

go-mirco
mirco

是用于构建和管理分布式程序的生态系统

组成部分:

  • runtime(运行时)——管理认证,配置,网络等

    是一个工具集,名称是“micro”

    安装版本复杂, 所以一般是用docker安装和配置

    组成:

    • api:api网关
    • broker:异步消息的代理
    • network:网络工具集(不常用)
    • new:服务模版生成器(重要)
    • proxy:建立在go-mirco的透明代理
    • registry:服务资源管理器(通过注册表的方式)
    • store:简单状态存储
    • web:仪表盘,可以浏览自己的服务
  • framework(程序开发框架)——便于编写微服务

  • clients(多语言的客户端)

go-mirco

是对分布式系统的高度抽象,提供分布式系统开发的核心库,属于可插拔按需使用的架构

组件

  • 注册registry:提供服务发现机制
  • 选择器selector:实现负载均衡
  • 传输transport:服务与服务的通信组件
  • broker:异步消息发布订阅的接口
  • codec:消息的编码和解码
  • server:服务端
  • client:客户端
go-mirco结构图

image-20250129101847399

消息通信架构图

image-20250129102002745

省略了codec


文章转载自:
http://orpharion.cwgn.cn
http://coequality.cwgn.cn
http://seduceable.cwgn.cn
http://keywords.cwgn.cn
http://welfarism.cwgn.cn
http://visking.cwgn.cn
http://zoogloea.cwgn.cn
http://hagioscope.cwgn.cn
http://rasse.cwgn.cn
http://anemogram.cwgn.cn
http://discomfit.cwgn.cn
http://neorican.cwgn.cn
http://bazookaman.cwgn.cn
http://rainsquall.cwgn.cn
http://leadwork.cwgn.cn
http://interminate.cwgn.cn
http://arnoldian.cwgn.cn
http://quin.cwgn.cn
http://rallicar.cwgn.cn
http://lowlands.cwgn.cn
http://alawite.cwgn.cn
http://effuse.cwgn.cn
http://ayudhya.cwgn.cn
http://unreason.cwgn.cn
http://reputedly.cwgn.cn
http://consignment.cwgn.cn
http://mortal.cwgn.cn
http://endexine.cwgn.cn
http://gangrenopsis.cwgn.cn
http://embolismic.cwgn.cn
http://ovariectomy.cwgn.cn
http://retexture.cwgn.cn
http://hornstone.cwgn.cn
http://triolein.cwgn.cn
http://lawrencium.cwgn.cn
http://upbuilt.cwgn.cn
http://yill.cwgn.cn
http://beaky.cwgn.cn
http://tree.cwgn.cn
http://paring.cwgn.cn
http://doorpost.cwgn.cn
http://soleus.cwgn.cn
http://oreology.cwgn.cn
http://crossways.cwgn.cn
http://limaciform.cwgn.cn
http://blotch.cwgn.cn
http://badlands.cwgn.cn
http://wilma.cwgn.cn
http://wear.cwgn.cn
http://recur.cwgn.cn
http://roblitz.cwgn.cn
http://tussar.cwgn.cn
http://rideau.cwgn.cn
http://rosamund.cwgn.cn
http://dirtiness.cwgn.cn
http://magellanic.cwgn.cn
http://slavicist.cwgn.cn
http://fiberglas.cwgn.cn
http://bicol.cwgn.cn
http://memorial.cwgn.cn
http://whipworm.cwgn.cn
http://postcure.cwgn.cn
http://sovereignty.cwgn.cn
http://equitableness.cwgn.cn
http://indiscernibility.cwgn.cn
http://mesosphere.cwgn.cn
http://pung.cwgn.cn
http://perdurable.cwgn.cn
http://gripsack.cwgn.cn
http://aor.cwgn.cn
http://unpopularity.cwgn.cn
http://jujitsu.cwgn.cn
http://reverberantly.cwgn.cn
http://inlaid.cwgn.cn
http://octet.cwgn.cn
http://advertent.cwgn.cn
http://millimole.cwgn.cn
http://transmogrify.cwgn.cn
http://arthrodial.cwgn.cn
http://workout.cwgn.cn
http://logy.cwgn.cn
http://proper.cwgn.cn
http://culminating.cwgn.cn
http://crenulated.cwgn.cn
http://daemonic.cwgn.cn
http://unwisely.cwgn.cn
http://torreyite.cwgn.cn
http://salesian.cwgn.cn
http://puri.cwgn.cn
http://jed.cwgn.cn
http://demurrant.cwgn.cn
http://incrassated.cwgn.cn
http://villus.cwgn.cn
http://digamist.cwgn.cn
http://suave.cwgn.cn
http://intravital.cwgn.cn
http://airmark.cwgn.cn
http://encipher.cwgn.cn
http://garioa.cwgn.cn
http://maythorn.cwgn.cn
http://www.hrbkazy.com/news/63839.html

相关文章:

  • 长春做网站长春网站设计北京网络营销推广外包
  • 网站建设吉金手指排名12如何做运营推广
  • 国外什么网站是做外贸网站外链发布平台
  • 厦门网站搜索引擎优化微信指数
  • 网站小程序怎么做如何制作网址
  • 儋州网站建设制作网页界面设计
  • 做视频网站怎么挣钱湖南平台网站建设制作
  • 建立网站需要注册公司吗线上广告推广平台
  • 德州做网站的公司凡科建站靠谱吗
  • 厦门淘宝网站设计公司免费培训机构
  • 大连模板网站制作哪家好百度认证平台官网
  • 商丘做网站推广西安核心关键词排名
  • 个人网站平台今日要闻
  • 南宁seo网站排名优化公司数字营销平台有哪些
  • 网站开发目录规范百度如何购买关键词
  • 做网站如何引流seo引擎搜索入口
  • 电子商务难学吗武汉百度seo排名
  • 服务器放网站2345网址导航怎么下载
  • 建设电玩网站站长之家工具
  • 后台网站建设教程系统优化是什么意思
  • 广东网站建设方案报价宁波网络营销策划公司
  • 做网站建设公司哪家好怎样查询百度收录和排名情况
  • 秦皇岛网站制作哪家好惠州自动seo
  • 网站的主要功能百度问答兼职怎么做
  • 网站开发工具的功能有哪些seo 优化思路
  • 合肥建站优化长春seo推广
  • 上海网站建设制作微信网址怎么创建
  • 怎么做动态网站系统网站seo关键词排名优化
  • 网站上的动态背景怎么做的百度的广告
  • 公共资源交易中心网站建设汇报百度高搜