微服务给我们的第一映像是分布式、架构复杂庞大,部署起来非常麻烦。其实并非如此,不同的架构选型必然带来不同的优点和缺点,没有一劳永逸的方法,配置简单是因为适用的功能场景简单。在项目或产品的实际开发中往往随着时间的推进需要实现不同场景的功能,导致架构的扩展,致使部署越来越复杂。
  如果我们之前的代码没有使用微服务,现在随着产品要求商务要求等需要使用微服务怎么办?架构迁移是一件很耗时耗力的事情,如果能有一套简洁的微服务方案,能够无需对原始代码进行重构即可进行微服务迁移就好了。
  Sers就是这样的一套方案。

1.单体架构和微服务架构的区别

我们考虑一下单体架构和微服务架构到底有什么区别。
  首先,这两者只是架构上的区别,具体软件代码的实现逻辑不会改变,单体架构要实现的接口,微服务架构照样要实现。从单体到微服务是管理观念上的变化。
  介于此,如果我们只是把代码从单体架构升级到微服务架构要如何实现呢?
  从代码开发的角度,我们考虑一下这两者有何不同。在单体架构下,如果要调用其他模块的逻辑(接口),我们可能只是调用一个函数(存储过程、事件等),而在微服务架构下就不是如此简单了,好一点的解决方案是在加上一层服务适配器层(参见[微服务下的多架构方案-服务适配器]),业务代码不关心到底怎么调用其他接口的,我只是调用就行。
  总体来说,两者对开发者最大的区别是服务之间的调用会有所不同。

2.Sers能做什么

如果我需要一套简洁一点的微服务架构方案,Sers恰好适合。
  Sers是一套跨平台跨语言的微服务架构协议,它简洁高效,兼容性扩展性强。单机空载qps能达200万。它是一套中心化的微服务协议,既然是协议,任何语言均可接入,包括javascript(js接入代码不到1000行,压缩后不到10kb)。
  对于分布式集群来说,一个集群的qps能达到上万已经很不错了,超过上万以后往往考虑的是稳定性,而不是高效性。如果实际过程汇总有上万以上的并发要求,一般的解决办法是建立多个集群进行负载均衡。
  既然Sers如此简单,那么我们的单体架构的接入也应该是非常简单。实际上的确如此,net core接入代码只有一行(appsettings.json配置文件除外)。
  net core如何接入Sers微服务,请见下篇文章。


Sers微服务快速入门-00.目录

Sers微服务快速入门-01.简介相关推荐

  1. Sers微服务快速入门-00.目录

    Sers微服务快速入门-00.目录 01.简介 02.快速接入 未完待续

  2. Sers微服务快速入门-02.快速接入

    微服务给我们的第一映像是架构复杂,部署起来麻烦.其实并非如此,不同的架构选型必然带来不同的优点和缺点,没有一劳永逸的方法,配置简单是因为适用的场景面窄.在项目或产品的实际开发中往往随着时间的推进需要实 ...

  3. java怎么实现华为云文字识别,OCR文字识别服务快速入门教程

    [入门介绍]OCR服务快速入门汇总 1.[快速入门 01] 申请华为文字识别服务 现阶段,华为文字识别服务处于公测阶段,需要先申请公测,再申请开通服务,具体操作步骤如下: 步骤1       申请华为 ...

  4. Seneca :NodeJS 微服务框架入门指南

    Seneca :NodeJS 微服务框架入门指南 原文:http://onmr.com/press/getting-started-seneca.html Seneca 是一个能让您快速构建基于消息的 ...

  5. Sers微服务架构 初探

    Sers微服务架构协议(Sers 2.0.1/release) Sers为一套跨平台跨语言的开源微服务架构协议. 单机QPS能达15万.目前支持C++.Java.c#. 此版本为v2.0.1版.(Re ...

  6. Sers微服务2.1.1

    # Sers微服务架构协议(Sers 2.1.1/release) Sers为一套跨平台跨语言的开源微服务架构协议. 单机QPS能达15万.目前支持C++.Java.c#. 此版本为v2.1.1版.( ...

  7. html超文本标记语言初级,超文本标记语言HTML之快速入门HTML简介、HTML入门

    作为准备开始学习ASP.net的新手或者开发Internet应用程序的新手,诸如:PHP.Java等等,最基本的网页编程一定要掌握,新手往往出于急迫的心情与现实的考虑,不少人没有扎实的基础就想直接学习 ...

  8. 微服务架构案例(01):项目技术选型简介,架构图解说明

    本文源码:GitHub·点这里 || GitEE·点这里 一.单体架构 单体架构在中等偏小的业务中比较常见,场景模式就是单个应用.单个数据库.一个程序包(例如war格式或者Jar格式)包含所有业务需求 ...

  9. Spring Cloud构建微服务架构:消息驱动的微服务(入门)【Dalston版】

    之前在写Spring Boot基础教程的时候写过一篇<Spring Boot中使用RabbitMQ>.在该文中,我们通过简单的配置和注解就能实现向RabbitMQ中生产和消费消息.实际上我 ...

最新文章

  1. Silverlight 全屏模式
  2. QEMU使用手册 - 1概述
  3. Android Log等级的介绍
  4. Word 2016加载Endnote x9的方法
  5. Ubuntu 命令行打开pdf文件和打开命令行当前目录
  6. linux基础系统命令大全
  7. web.xml与index.html
  8. WPF实现时间轴(仿Gitee)
  9. mac电脑安装mysql客户端
  10. 【推荐】2022年AIOT人工智能物联网行业研究报告市场应用分析白皮书(附件中为网盘地址,报告持续更新)
  11. 深度 | 用于图像分割的卷积神经网络:从R-CNN到Mark R-CNN
  12. 不占用系统资源的休眠linux c,Linux-c系统编程
  13. 从0到1:朋友圈爆款背后的计算机视觉技术与应用 | 百万人学AI
  14. Spring JDBC 批量操作 数据
  15. Redis客户端访问
  16. html5字体动画效果,7款超华丽的HTML5 Canvas文字动画特效
  17. 域名使用HTTPS的相关配置
  18. 基于GoogleEarth等高分辨率影像的地物景观提取精度评价
  19. win11怎样修改开机音乐 windows11修改开机音乐的步骤教程
  20. CPLD/FPGA 内部结构与原理

热门文章

  1. java面向对象程序设计题库_java面向对象程序设计习题集.doc
  2. 2022.11.7-复制粘贴代码带来的问题
  3. Node 之父 Ryan Dahl说:Node 失误太多无力回天,Deno 前景明朗。NodeJS要完蛋吗?
  4. 几种开源虚拟产品的介绍及性能比较
  5. 基于vue的仿饿了么webapp
  6. Linux下文件系统的转换
  7. 基于多目标算法的冷热电联供型综合能源系统运行优化 代码构建了含冷、热、电负荷的冷热电联供型综合能源系统优化调度模型,考虑了燃气轮机、电制冷机
  8. 告别尴尬,自在出行,就选电动车排名前十名的绿源
  9. 《计算机网络自顶向下方法》笔记
  10. Git 错误 Unable to create 'E:/xxx/.git/index.lock': File exists.的解决办法