应用系统定制开发深度理解微服务

🥲 🥸 🤌 🫀 🫁 🥷  🐻‍❄️🦤 🪶 🦭 🪲 🪳 🪰 🪱 🪴 🫐 🫒 🫑 🫓 🫔 🫕 🦤 🪶 🦭 🪲 🪳 🪰 🪱 🐻‍❄️ 🫐 🫒 🫑 🫓 🫔 🫕

 ♔博主昵称:�欢快↑㎡

🕍博客主页:�欢快↑㎡的博客_CSDN博客-应用系统定制开发学习注意点杂记,BUG集,应用系统定制开发安装教程领域博主

⚇应用系统定制开发很方便的在线编辑器:Lightly

🥗感谢点赞🤞🏻评论🤞🏻收藏

相信吧!🤜🏻应用系统定制开发我们很优秀,应用系统定制开发还可以更加优秀,加油!🌼应用系统定制开发让我们一起在写作中记录巩固学习吧!


目录


的优点,缺点是什么?

单体项目存在的问题(当然处于成本和效率来看,单体项目还是更有优势,一般开发,是会先采用单体项目,等到必要时才会再采用微服务)

  1. 只能使用一种技术(包括开发语言,框架技术)
  2. 有多个模块的情况下,一个模块不能独立上线
  3. 上线后,一个模块出了问题,别的模块也不能运行(模块之间耦合性比较高)

微服务优点:

  1. 可以使用不同的技术栈(包括不同开发语言开发的项目模块)
  2. 模块之间耦合性小,可以独立上线,独立部署,独立升级
  3. 每个模块可以独立运行,不会影响其他的模块
  4. 不同模块可以使用不同数量的服务器

微服务缺点:

  1. 整个体统复杂度变高
  2. 运维变难
  3. 数据一致性变难
  4. 单个微服务开发简单,开发效率提高,整个系统开发变复杂

微服务和单体项目区分:

微服务项目:多个微服务提供者+nacos+gateway+sentinel+链路跟踪

单体项目:一个系统的代码全放在一个project中(一般来说在开发中,就算把项目拆开,没有使用过微服务技术也算是单体项目)


高性能,高可用,项目必须用微服务吗?

高可用:关键节点越少,可用性越高,可替代性节点越多,可用性越高

高性能:

  1. 用缓存
  2. 减少关键节点
  3. 设置cpu频率
  4. nginx进程与cpu内核进行绑定(进程结束的话可能会切换内核,降低效率)
  5. 调整linux,tomcat,mysql参数
  6. 读写分离
  7. 静态化

高并发:

  1. 使用高性能技术
  2. 集群
  3. 限流
  4. 消息对列
  5. 拆key
  6. 每隔一段时间同步一次(不要即时同步,并发量会倍数的)

id解决方案有那些?

自动加1 有 什么缺点?

单体项目

  1. 竟争对手获取数据(   id从1开始,容易被获取数据)

  2. 获取商业机密(相隔24小时分别注册一个账号,可以通过知道每天产生多少的订单)

分布式项目

单表的数据不要超过5000万行可能会分库分表来解决

分库分表id可能会重复

实现分布式id

美团leaf是通过id段(号码段)分片提高并发

主键加1的优点是什么?

主键自动建立索引,速度快。

有了索引后,添加数据时,索引要修改,要移动索引

只有主键有索引,添加数据,索引不会发生移动


框架的高扩展如何实现?

  1. 多态implements接口或extends父类
  2. 加注解@RestController
  3. Aop切面,动态代理
  4. 责任链
  5. spi,反射
  6. 热部署
  7. 消息队列(开闭原则:可以用aop,多态)
  8. 注册中心

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发