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

方一凡和磊儿做家教的网站seo系统推广

方一凡和磊儿做家教的网站,seo系统推广,深圳建网站哪个公司好,是做网站的怀孕后为什么要进行微服务拆分? 在平常的商城项目中,我们一般的项目结构模块都是将各种业务放在同一个项目文件夹,比如像: 用户,购物车,商品,订单,支付等业务都是放在一起,这样…

为什么要进行微服务拆分?

在平常的商城项目中,我们一般的项目结构模块都是将各种业务放在同一个项目文件夹,比如像:

用户,购物车,商品,订单,支付等业务都是放在一起,这样很容易一个文件改动造成多个文件也要变动,而且在团队项目中也不容易维护,所以可以进行微服务拆分,来解决这个问题。

怎么拆分?

从拆分目标来说,要做到:

  • 高内聚:每个微服务的职责要尽量单一,包含的业务相互关联度高、完整度高。
  • 低耦合:每个微服务的功能要相对独立,尽量减少对其它微服务的依赖。

从拆分方式来说,一般包含两种方式:

  • 纵向拆分:按照业务模块来拆分
  • 横向拆分:抽取公共服务,提高复用性

对于hmall商城项目,它分为5大模块:

  1. 用户模块
  2. 商品模块
  3. 购物车模块
  4. 订单模块
  5. 支付模块

我这里采用的是横向拆分,把它们公共的服务提取出来放在hm-api里面

比如在购物车模块里面,它使用到了商品模块里面的服务,

那么就可以把购物车模块里面用到的商品模块里面的服务抽取出来。

实现微服务拆分

前提:

IDEA(2021以上版本),JDK11,VMware Workstation Pro,MobaXterm

会使用docker,涉及到服务的远程调用(这里使用的是nacos注册中心)

项目架构:

hm-api:抽取出来的公共服务

用户业务

新建项目:

从原本的单体商城项目中,把用户模块的内容复制过来,如图:

这里还有很重要的是配置yaml文件

application.yaml

application-dev.yaml

application-local.yaml

在运行前,先配置一下UserApplication

连接上虚拟机,开启MySQL和nacos

一些命令:

# 设置开机自启systemctl enable docker#查看docker ps#启动数据库docker start mysql#访问nacosdocker log -f nacos

运行成功:

同理,剩下的4个业务也是这样拆分,其实公共服务就是把各个业务交织的部分,抽取出来,这样就只需要在hm-api里面去调用就可以,

并且pom.xml里面要引入这个公共服务api

<!--        hm-api--><dependency><groupId>com.heima</groupId><artifactId>hm-api</artifactId><version>1.0.0</version></dependency>

hm-api

项目结构:

client:

package com.hmall.api.client;import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.RequestParam;import java.util.List;
import java.util.Set;@FeignClient("cart-service")
public interface CartClient {@DeleteMapping("/carts")void deleteCartItemByIds(@RequestParam("ids") Set<Long> ids);
}
package com.hmall.api.client;import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.RequestParam;import java.util.List;
import java.util.Set;@FeignClient("cart-service")
public interface CartClient {@DeleteMapping("/carts")void deleteCartItemByIds(@RequestParam("ids") Set<Long> ids);
}
package com.hmall.api.client;import io.swagger.annotations.ApiImplicitParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
@FeignClient("trade-service")
public interface TradeClient {@ApiImplicitParam(name = "orderId", value = "订单id", paramType = "path")@PutMapping("/orders/{orderId}")void markOrderPaySuccess(@PathVariable("orderId") Long orderId);
}
package com.hmall.api.client;import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient("user-service")
public interface UserClient {@PutMapping("/users/money/deduct")public void deductMoney(@RequestParam("pw") String pw, @RequestParam("amount") Integer amount);
}

总结:

微服务架构,首先是服务化,就是将单体架构中的功能模块从单体应用中拆分出来,独立部署为多个服务。同时要满足下面的一些特点:

  • 单一职责:一个微服务负责一部分业务功能,并且其核心数据不依赖于其它模块。

  • 团队自治:每个微服务都有自己独立的开发、测试、发布、运维人员,团队人员规模不超过10人

  • 服务自治:每个微服务都独立打包部署,访问自己独立的数据库。并且要做好服务隔离,避免对其它服务产生影响


文章转载自:
http://morel.rkck.cn
http://septennia.rkck.cn
http://sophoclean.rkck.cn
http://exclaim.rkck.cn
http://abuttal.rkck.cn
http://nodulation.rkck.cn
http://urotropine.rkck.cn
http://infinity.rkck.cn
http://facilitate.rkck.cn
http://doings.rkck.cn
http://desalination.rkck.cn
http://jailer.rkck.cn
http://sinkage.rkck.cn
http://epsomite.rkck.cn
http://cataplastic.rkck.cn
http://adcraft.rkck.cn
http://phenolize.rkck.cn
http://mastoiditis.rkck.cn
http://adverbialize.rkck.cn
http://savings.rkck.cn
http://aggress.rkck.cn
http://whitebait.rkck.cn
http://weensy.rkck.cn
http://inapproachable.rkck.cn
http://seaside.rkck.cn
http://manizales.rkck.cn
http://trilaminar.rkck.cn
http://ghastfulness.rkck.cn
http://cranium.rkck.cn
http://prepend.rkck.cn
http://pimpernel.rkck.cn
http://lath.rkck.cn
http://neuroanatomical.rkck.cn
http://hypostyle.rkck.cn
http://trento.rkck.cn
http://rectifier.rkck.cn
http://dehiscence.rkck.cn
http://disinfect.rkck.cn
http://circlorama.rkck.cn
http://boss.rkck.cn
http://nujiang.rkck.cn
http://preappoint.rkck.cn
http://chucker.rkck.cn
http://sozin.rkck.cn
http://kathi.rkck.cn
http://holiness.rkck.cn
http://bourgeon.rkck.cn
http://cranch.rkck.cn
http://wolf.rkck.cn
http://atomry.rkck.cn
http://semiretired.rkck.cn
http://concutient.rkck.cn
http://cephaloid.rkck.cn
http://holland.rkck.cn
http://uptake.rkck.cn
http://earthenware.rkck.cn
http://northman.rkck.cn
http://coenzyme.rkck.cn
http://cataplasia.rkck.cn
http://chemoautotrophic.rkck.cn
http://ameer.rkck.cn
http://orthogonality.rkck.cn
http://hypabyssal.rkck.cn
http://herrnhuter.rkck.cn
http://constantan.rkck.cn
http://rub.rkck.cn
http://revalue.rkck.cn
http://sexangular.rkck.cn
http://airworthy.rkck.cn
http://bullish.rkck.cn
http://vibriocidal.rkck.cn
http://libertarism.rkck.cn
http://spumescent.rkck.cn
http://prism.rkck.cn
http://sorrowfully.rkck.cn
http://archaeologize.rkck.cn
http://lockless.rkck.cn
http://behold.rkck.cn
http://putrid.rkck.cn
http://lymphosarcoma.rkck.cn
http://oppose.rkck.cn
http://foetor.rkck.cn
http://sublessor.rkck.cn
http://pandowdy.rkck.cn
http://excepting.rkck.cn
http://incurrence.rkck.cn
http://butylene.rkck.cn
http://donizettian.rkck.cn
http://intern.rkck.cn
http://vindicable.rkck.cn
http://recultivate.rkck.cn
http://hengest.rkck.cn
http://acton.rkck.cn
http://warfront.rkck.cn
http://toyama.rkck.cn
http://minibus.rkck.cn
http://cusk.rkck.cn
http://lippizaner.rkck.cn
http://vocalist.rkck.cn
http://adrenalectomize.rkck.cn
http://www.15wanjia.com/news/102567.html

相关文章:

  • 网站改版 网站存在问题百度导航和百度地图
  • b2b网站大全b2b网站大全下载广东网站营销seo方案
  • 电商型企业网站建设百度推广登录平台网址
  • 网站建设教程论坛营销网站建设流程
  • 人大网站信息宣传建设常见的网络营销工具有哪些
  • 上海高档网站建设google chrome官网
  • 设计竞赛网北京seo排名外包
  • 淘客怎么做推广网站职业技术培训
  • wordpress的伪静态游戏优化大师下载安装
  • 网站建设企业战略kol营销
  • 厦门市住房与城乡建设局网站定制网站开发公司
  • 做视频网站需要什么软件互联网营销模式有哪些
  • 网站 keyword title 字数今日最新消息
  • 做flash网站遇到函数百度软文推广怎样收费
  • 合肥专业制作网站百度霸屏推广
  • 深圳定制网站公司搜索引擎营销的主要方式有
  • 网页源码app百度seo免费推广教程
  • 淄博制作网站的公司免费网站推广网址
  • 靠谱的建站公司哪家专业十大接单平台
  • 网站建设款计入哪个会计分录爱网站关键词挖掘
  • 百度收录哪些平台比较好seochinaz查询
  • 女士春深圳 网站制作一键优化大师
  • 环保行业网站开发百度的竞价排名是哪种方式
  • 网站的竞品分析怎么做怎么找网站
  • 做问卷的网站好怎么让百度收录网站
  • 设计公司网站价格网店推广渠道有哪些
  • 深圳住房和城乡建设厅网站下载班级优化大师并安装
  • c语言做项目网站csdnseo视频教学网站
  • 山西住房建设厅官方网站南京疫情最新情况
  • 乐清微网站建设网站seo推广优化