• Kafka简介

    作者: 陆金龙       发表时间: 2024-02-25 02:23
    介绍 Kafka是一个分布式的、可分区的、可复制的消息系统。 术语: Kafka将消息以topic为单位进行归纳。 将向Kafka topic发布消息的程序成为producers. 将预订topics并消费消息的程序成为consumer. Kafka以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个broker. producers通过网络将消息发送到Kafka集群,集群向消费者提供消息,如下图所示: 客户端和服务端通过TCP协议通信。 每个consumer唯一需要维护的数据是消息在日志中的位置,也就是offset....
  • SpringCloud微服务框架相关技术组件

    作者: 陆金龙       发表时间: 2024-02-25 02:07
    Eureka 2.0 的开源工作已经停止,可以替代Eureka的技术方案有Consul、Nacos等。 Hystrix在项目中主要做服务熔断、降级,官方宣布将不再开发,目前处于维护状态。Hystrix可替代的产品推荐SpringCloud Alibaba Sentinel。 Zuul是一个微服务网关技术,但Zuul1.x使用的是阻塞式的API,不支持长连接,没有提供异步,高并发场景下性能低。SpringCloud官网推出了全新的微服务网关技术SpringCloud Gateway,比Zuul性能更强悍、功能更丰富、且支持异步等多种特性。 SpringCloud...
  • Euraka和Zookeeper比较

    作者: 陆金龙       发表时间: 2024-02-25 01:58
    CAP理论 一致性(Consistency): 保证数据是一致的,对的。 可用性(Availability):保证系统能用。 分区容错性(Partition Tolerance):就算网络出了问题(分区)。(各个服务器原来通过网络连接,连成一片,在一个大的区域中,互相之间要同步数据。网络出了问题,服务器之间就断了联系,数据同步不了,形成了分区) CP:网断了,各个服务器之间就数据同步不了,为了服务器的数据一致,停止服务,给客户端返回错误信息,等网络恢复了,再上线。 AP:比如A服务器的数据是要同步给B服务器的,网断了,暂时的数据不一致关系不大(例如统计B...
  • 分布式、集群、负载均衡

    作者: 陆金龙       发表时间: 2024-02-25 01:43
    分布式   分布式:一个业务分拆成多个子业务,或者本身就是不同的业务,部署在不同的服务器上。例如静态资源、数据集、API服务分别部署到不同的服务器上。         分布式是以缩短单个任务的执行时间来提升效率的。 集群   集群通过一组松散集成的计算机软件、硬件连接起来高度紧密地协作完成计算工作。可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接。集群计算机通常用来改进单个计算机的计算速度、可靠性。   比如单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果...
  • Spring Zuul API网关

    作者: 陆金龙       发表时间: 2024-02-24 06:37
    1.网关 1.1 网关相关概念 与过滤器、拦截器等技术点相似,为什么有网关的存在? 负载均衡是Ribbon实现的,Ribbon是本地的客户端负载均衡。Nginx是软负载。 网关核心的应用场景:路由地址、反向代理、黑名单与白名单、授权安全 1.1.1域名解析 域名解析:将域名转换为ip地址。 步骤:1.浏览器先查找缓存; 2.没有缓存则从hosts文件查找ip与域名映射,将域名转换为ip; 3.hosts中没有查到对应的ip,则直接连接外网宽带运营商获取对应的ip; 1.1.2 企业网关是如何架构的 ...
  • SpringBoot项目mysql-connector-java-8.0.22连接报错

    作者: 陆金龙       发表时间: 2023-09-20 09:45
    关键词:SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)  
    1.pom.xml中mysql-connector-java的版本问题 启动服务成功,请求http://localhost:8071/knowledge/get/1, 无法进入controller中方法的断点。 修改pom.xml,mysql-connector-java配置增加版本5.1.48,没写时默认使用了8.0.22 <!-- 数据库访问 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-conn...
  • 报错处理ibatis.binding.BindingException

    作者: 陆金龙       发表时间: 2023-09-20 09:09
    关键词:ibatis.binding.MapperMethod$SqlCommand  
    数据接口服务启动成功,但是调用请求接口,执行数据查询报错如下: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.klfront.klblog.dataprovider.mapper.KnowledgeBaseMapper.selectByPrimaryKey at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:235) ~[mybatis-3....
  • 简易SpringCloud项目构建过程(下)

    作者: 陆金龙       发表时间: 2022-03-23 09:47
    关键词:数据接口服务data-provider  消费者工程data-consumer  gateway工程  
    上编主要包括数据库设计说明、父级工程创建与配置、服务注册中心、统一配置中心、Common工程5个部分。下篇包括数据接口服务提供者、数据消费者工程、网关工程3个部分。 源码地址:https://github.com/kinglong198404/spring-cloud-architecture.git下的spring-cloud-simple。 1. 数据接口服务(data-provider) 这里记录“知识库”生产者工程构建过程,其他业务模块的构建过程雷同,不再重复记录。 1.1 创建provider工程 在主工程下创建Maven ...