微服务架构实践
文章平均质量分 89
讨论微服务架构相关的技术知识与我的实践。
B5WANG
这个作者很懒,什么都没留下…
展开
-
微服务架构师封神之路13-RabbitMQ集群与高可用|RabbitMQ clustering and HA
本文利用一台Linux示范三节点RabbitMQ高可用集群。涉及消息跨节点复制Queue replicas,队列领导者策略配置Queue leader location strategy。并包括了详细的配置文件细节。原创 2024-02-22 16:41:21 · 1324 阅读 · 2 评论 -
微服务架构师封神之路12-Camunda工作流引擎实践 1
Camunda BPM: BPM指Business Processing Model,业务流程建模工具,其实就是一个工作流引擎。并且它提供了一套图形化的业务流程设计工具来帮助业务人员建模。建模后的流程决策设计保存在.bpmn,.dmn,.cmmn文件中,可以方便的导入应用当中,直接使用。我学习的原因是因为项目中的一个模块使用它来做流程控制,整体的业务流程执行效率有很大问题。不忽略每一个影响性能的因素,研究camunda就成了一道跳不过去的坎。下面就直接上一个最简单的示例程序作为入门。原创 2023-02-01 00:01:22 · 934 阅读 · 0 评论 -
微服务架构师封神之路11-eureka服务高可用
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档微服务架构师封神之路11-eureka服务高可用任务eureka serverpom.xml 依赖application.yaml settings3节点集群服务eureka clientpom.xmlapplication.yamltest任务一些设计比较老的应用使用eureka作为服务注册发现组件。产品实施的时候不得不考虑高可用的问题。实现三节点集群的高可用eureka服务。Implementing a 3 nodes eu.原创 2022-03-14 21:27:26 · 187 阅读 · 0 评论 -
微服务架构师封神之路10-Macbook无法通过IP访问minikube
微服务架构师封神之路10-Macbook无法通过ip访问minikube我是这样安装minikube的我是这样安装minikube的因为项目原因又开始捣鼓minikube,我按照如下顺序在我的macbook上安装minikube,安装Docker desktop下载kubernetes,加入系统path下载minikube,加入系统path运行minikube start看起来一切顺利。我试着部署了一个简单的app,并给他配置了一个nodeport service,本来想着通过mini原创 2021-07-25 22:26:57 · 2471 阅读 · 1 评论 -
微服务架构师封神之路09-Springboot多数据源,Hikari连接池和事务配置
微服务架构师封神之路09-Springboot多数据源,Hikari连接池,和事务的配置application.yml初始化DataSourceDataSourceConfig的两种写法写法一写法二两种方法的区别如果你在项目中这样做了,问题很严重!!!让Hikari连接池、DataSource和事务按照我们配置的那样运行DataSourceSettings.javaDataSourceConfig.java按配置文件初始化Hikari连接池、数据源和事务在DAO中使用这些数据源和事务处理参考以在应用中配置原创 2021-03-04 00:37:22 · 883 阅读 · 1 评论 -
微服务架构师封神之路08-微服务Rest接口调用客户端性能比较,RestTemplate vs WebClient
微服务架构师封神之路08-微服务Rest接口调用客户端性能比较,RestTemplate vs WebClientRestTemplate Configpom中添加依赖初始化RestTemplate并设置线程池,WebClient Config在pom中添加依赖初始化WebClient并配置线程池,性能对比RestTemplateWebClient测试结果目前最新版本Springboot(2.4.2)下两大HTTP客户端体系,两种HTTP调用使用了不同的底层设计:RestTemplate。阻塞式客户端原创 2021-02-15 18:11:42 · 631 阅读 · 0 评论 -
微服务架构师封神之路07-在 minikube 上部署 cassandra
微服务架构师封神之路07-在 minikube 上部署 cassandra需求创建PersistentVolumeClaim创建StatefulSet创建Service参考需求想在在 minikube 上部署一个 cassandra 数据库,提供给日常开发使用。所以要求没那么高,单节点 cassandra 就可以。和其它微服务应用不同的是需要持久化存储的数据,这样就需要Persistent Volume Claims。那么 cassandra 就不是一个 Deployment,而是Stateful S原创 2020-10-04 22:18:36 · 124 阅读 · 0 评论 -
微服务架构师封神之路06-一个简单例子入门helm
微服务架构师封神之路06-一个简单例子,入门helm定义一个简单的需求helm是干什么的?helm chart 的文件目录结构helloworld的chart实现Chart.yamltemplates文件夹deployment.yamlservice.yamlvalues.yaml等会儿马上要用到的几个helm命令helm linthelm uninstallhelm packagehelm install修改pom.xml如何通过helm命令修改chart的部署参数定义一个简单的需求用spring-原创 2020-09-25 09:44:54 · 493 阅读 · 0 评论 -
微服务架构师封神之路05-使用yaml文件装载kubernetes部署信息,maven实现自动部署
微服务架构师封神之路05-将kubernetes部署信息放入.yaml文件,mvn实现自动部署让本地minikube和maven使用同一个docker daemon使用一个yaml文件装载所有部署信息在pom中执行kubectl apply让本地minikube和maven使用同一个docker daemon使用同一个docker daemon,就不用再docker push来pull去的。先启动minikube,再运行docker-env,会有一个提示minikube docker-env...原创 2020-09-21 20:53:03 · 346 阅读 · 0 评论 -
微服务架构师封神之路04-在minikube上安装dashboard并使用固定的端口
微服务架构师封神之路04-在minikube上安装dashboard并使用固定的端口kubernetes中已经集成了dashboardEnable dashboard in minikube查看minikube中所有addonsEnable an addon为Dashboard分配一个固定的端口Dashboard pod信息将service信息保存在yaml文件中使用yaml文件创建service通过service访问dashboardkubernetes中已经集成了dashboardDashboar原创 2020-06-29 23:18:11 · 4673 阅读 · 1 评论 -
微服务架构师封神之路03-使用log4j2统一微服务内部不同日志工具
微服务架构师封神之路03-如何使用log4j2统一应用内部不同的日志工具日志是软件架构设计中首先要考虑的问题为什么我要考虑统一日志工具的问题Enable log4j2 in springbootpom.xmllog4j2.xml都有哪些日志工具被统一了如何将log4j也统一进来?例外参考与延伸阅读日志是软件架构设计中首先要考虑的问题在设计一个微服务应用的过程中,我首先想到的是日志架构的设计。人世间的所有应用系统,无论什么业务,无论它是否以数据为中心,它必然会有日志系统。有了日志,我们才知道应用中发生了原创 2020-06-10 09:44:03 · 580 阅读 · 0 评论 -
微服务架构师封神之路02-为你的微服务应用添加日志
微服务架构师封神之路02-为你的微服务应用添加日志关于Kubernetes日志架构我们的目标helloworld project项目结构pom.xmlDockerfileAppMain.javalog4j2.xml部署测试关于Kubernetes日志架构讨论这个话题的技术文章不少,就是废话太多。简单说两个层面,每个微服务内部:将日志写入到标准输出流中(Standard output stream, stdout and stderr)整个Kubernetes cluster:在每个node上部署l原创 2020-06-07 21:55:04 · 403 阅读 · 0 评论 -
微服务架构师封神之路01-利用minikube部署一个最简单的应用
微服务架构师封神之路01-利用minikube部署一个最简单的应用开篇需求HelloWorld project功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入开篇梦想成为一名架构师,道路不会是平坦的。这将是一条坎坷之路,实践之路原创 2020-05-31 22:51:06 · 1529 阅读 · 1 评论 -
Cassandra学习2 - Primary Key, Partition Key, and Clustering Key
Cassandra学习2 - Primary Key, Partition Key, and Clustering KeyPrimary KeyPartition KeyClustering Key和SELECT语句的关系Primary Key这个很容易理解。比如,我们新创建一个表,CREATE TABLE IF NOT exists message (id time...原创 2020-04-02 22:55:33 · 1761 阅读 · 1 评论 -
Cassandra学习1 - 在Docker中运行,创建Keyspace,创建Table,并操作数据
最好的学习方式是动手实践,伴随着实践再来理解理论。遵循这样的原则我今天开始了Cassandra数据库学习的第一课。在现实中Cassandra大概率要以Docker作为容器部署在Cloud上面。并且Docker也的确为我们提供了很多方便,省去了安装Cassandra的时间还有你为Cassandra寻找合适平台(OS)的麻烦。所以我决定还是用Docker来进行学习。如果你要参考我的步骤,请先去下载安...原创 2019-08-07 23:17:20 · 827 阅读 · 0 评论 -
[Microservices] First project of Spring Boot and Docker
[Microservices] First project of Spring Boot and DockerPrerequisiteSpring boot project, helloworldpom.xmlApplication.javaBuild docker image, helloworldDockerfileBuild imageRun imageReferenceShare one...原创 2019-07-18 22:30:19 · 116 阅读 · 0 评论