威哥爱编程_社区达人页

个人头像照片
威哥爱编程
已加入开发者社区1865

勋章 更多

个人头像照片
专家博主
专家博主
个人头像照片
星级博主
星级博主
个人头像照片
技术博主
技术博主
个人头像照片
江湖新秀
江湖新秀

成就

已发布77篇文章
8条评论
已回答0个问题
0条评论
已发布0个视频
github地址

我关注的人 更多

技术能力

兴趣领域
  • Java
  • 人工智能
  • 分布式数据库
  • 架构师
  • 鸿蒙
擅长领域
  • Java
    初级

    能力说明:

    了解变量作用域、Java类的结构,能够创建带main方法可执行的java应用,从命令行运行java程序;能够使用Java基本数据类型、运算符和控制结构、数组、循环结构书写和运行简单的Java程序。

技术认证

华为开发者专家HDE,Java畅销书作者

暂无精选文章
暂无更多信息

2024年07月

  • 07.04 09:43:56
    发表了文章 2024-07-04 09:43:56

    深度长文解析SpringWebFlux响应式框架15个核心组件源码

    以上是Spring WebFlux 框架核心组件的全部介绍了,希望可以帮助你全面深入的理解 WebFlux的原理,关注【威哥爱编程】,主页里可查看V哥每天更新的原创技术内容,让我们一起成长。
  • 07.03 14:30:42
    发表了文章 2024-07-03 14:30:42

    GuavaCache、EVCache、Tair、Aerospike 缓存框架比较

    **摘要:** Guava Cache、EVCache、Tair 和 Aerospike 是不同的缓存解决方案。Guava Cache 是轻量级的本地缓存,适用于Java应用,提供丰富的配置选项和自动加载功能。EVCache 基于 Memcached,适合分布式场景,高并发访问。Tair,阿里巴巴的分布式缓存,支持多种数据结构,适用于大规模系统。Aerospike 是高性能NoSQL数据库,结合缓存和持久化,适用于低延迟和大数据量的场景。选择时要考虑应用场景、性能需求和数据规模。
  • 07.01 11:00:49
    发表了文章 2024-07-01 11:00:49

    使用explain优化慢查询的业务场景分析

    `EXPLAIN` SQL 命令用于分析查询执行计划,揭示数据库如何处理查询,包括索引使用、扫描方式等。通过分析 `EXPLAIN` 输出,可优化查询性能,例如检查全表扫描、索引利用等。案例展示了如何通过 `EXPLAIN` 优化订单和学生课程查询,通过添加索引、子查询过滤等方式减少处理行数,提高效率。

2024年06月

  • 06.25 15:00:59
    发表了文章 2024-06-25 15:00:59

    35个Redis企业级性能优化点与解决方案

    Redis作为企业级应用中广泛使用的高性能键值存储数据库,其性能优化是一个复杂且多面的话题。以下是V 哥整理的一些关键的优化点和相应的解决方案,提供给兄弟们参考。
  • 06.20 17:09:18
    发表了文章 2024-06-20 17:09:18

    好文!12个策略解决 Kafka 数据丢失问题

    以上这些策略对于解决 kafka 数据丢失问题很有帮助,如果你正在使用 kafka,或者正在学习 kafka,V 哥觉得你都应该把这12种策略收藏起来并消化掉,这对你在大型项目应用中非常有用。欢迎关注威哥爱编程,一起向技术大神进发。
  • 06.14 11:01:44
    发表了文章 2024-06-14 11:01:44

    15分钟面试被5连CALL,你扛得住么?

    在Java并发编程中,锁是控制共享资源访问的关键,用于避免数据竞争、保证原子性、维护执行顺序、提高性能、实现同步及避免死锁。分布式锁在多节点系统中同样重要,确保一致性、防止资源冲突、提高可扩展性并解决竞态条件。实现分布式锁的方法包括基于数据库、缓存(如Redis)、Zookeeper等。选型时要考虑性能、可靠性、可扩展性和特定场景需求,如一致性、可用性和分区容忍性。
  • 06.06 17:29:01
    发表了文章 2024-06-06 17:29:01

    【超长文】Redis在项目中的17种使用场景

    Redis 是一个开源的高性能键值对数据库,它以其内存中数据存储、键过期策略、持久化、事务、丰富的数据类型支持以及原子操作等特性,在许多项目中扮演着关键角色。以下是V哥整理的17个Redis在项目中常见的使用场景
  • 06.06 17:00:58
    发表了文章 2024-06-06 17:00:58

    线程池有哪些拒绝策略?

    本文介绍了Java线程池的四种拒绝策略:AbortPolicy(默认策略,抛出异常)、CallerRunsPolicy(调用者运行任务)、DiscardPolicy(丢弃任务,不抛异常)和DiscardOldestPolicy(丢弃最旧任务,尝试提交当前任务)。每种策略都有其适用的业务场景,并通过代码示例进行了说明。选择合适的策略取决于具体的应用需求和对任务处理的优先级。
  • 06.03 23:47:35
    发表了文章 2024-06-03 23:47:35

    用Spring Security快速实现 RBAC模型案例

    RBAC模型是一种常见的权限管理机制,它将权限赋予角色而非用户,用户通过角色获取权限。主要组件包括用户、角色、权限、会话、角色分配和权限分配。RBAC简化了权限管理,方便权限变更,常用于大型组织。

2024年05月

  • 05.14 13:26:10
    发表了文章 2024-05-14 13:26:10

    【小白误闯】Activiti 框架你不得不知道的一些事

    Activiti 是一个轻量级的、以Java为中心的开源工作流和业务流程管理(BPM)平台。它允许用户在业务应用程序中定义、执行和监控业务流程。以下是Activiti的核心组件【5月更文挑战第8天】
  • 05.13 17:17:29
    发表了文章 2024-05-13 17:17:29

    面试被问ThreadLocal要怎么回答?

    ThreadLocal是Java中为每个线程提供独立变量副本的类,避免多线程同步。它内部维护ThreadLocalMap,存在内存泄漏风险,使用后需调用remove()。常用于记录用户请求数据、事务处理、日志记录和连接池管理等场景。注意内存泄漏和性能影响,以及与InheritableThreadLocal和同步代码块的区别。【5月更文挑战第7天】
  • 05.11 10:34:38
    发表了文章 2024-05-11 10:34:38

    Elasticsearch框架学习的难点和重点有哪些

    Elasticsearch是基于Lucene的开源搜索引擎,广泛应用于全文检索和日志分析。学习重点包括理解节点、集群、索引、分片和副本等基本概念,掌握数据索引、查询DSL、聚合和性能优化。倒排索引和分词器是全文搜索的核心,集群管理和监控对于稳定性至关重要。实践中需根据数据量和查询模式优化分片策略,利用缓存提升搜索性能。学习Elasticsearch要结合实际项目,关注官方文档和社区资源。【5月更文挑战第6天】
  • 05.10 11:20:47
    发表了文章 2024-05-10 11:20:47

    5个 Elasticsearch 核心组件

    Elasticsearch 是基于 Lucene 的分布式搜索引擎,具备高可用和多租户特性。其核心组件包括:节点(Node)、集群(Cluster)、索引(Index)、分片(Shard)和副本(Replica)。节点是集群中的服务器,可设置为主、数据或客户端节点。集群由多个节点组成,通过集群名称区分。索引是文档集合,7.x 版本后每个索引仅含一种类型。分片是索引的子集,可分布于不同节点,分为主分片和副本分片,副本用于提高数据可用性和性能。【5月更文挑战第5天】
  • 05.09 11:57:52
    发表了文章 2024-05-09 11:57:52

    Spring状态机的实现原理和业务场景

    **Spring State Machine**是Spring框架的一部分,它提供了一种实现状态机的方式,允许开发者定义状态机的状态、事件、行为和转换。状态机是一种计算模型,根据一系列规则从一个状态转移到另一个状态。【5月更文挑战第4天】
  • 05.08 11:45:13
    发表了文章 2024-05-08 11:45:13

    设计一个简单的权限系统

    在Java中构建简单权限系统涉及定义Role和Permission实体,创建User实体关联角色,设计权限分配机制,实现权限检查方法及界面交互。示例代码包括实体类、权限分配服务、安全服务和主函数。实际应用可能需要更复杂的权限控制、动态管理、数据库集成和用户界面。Spring Security等框架可提供全面的安全管理解决方案。【5月更文挑战第3天】
  • 05.07 11:08:05
    发表了文章 2024-05-07 11:08:05

    10个SpringMVC的核心组件详解

    Spring MVC 核心组件包括 DispatcherServlet(前端控制器)、Controller(处理请求)、HandlerMapping(映射请求到方法)、HandlerAdapter(调用不同处理器)、ViewResolver(解析视图)、ModelAndView(传递数据到视图)、数据绑定、异常处理器、消息转换器和主题解析器。这些组件协同工作,支持基于 MVC 的 Web 应用开发,使请求处理、业务逻辑和视图渲染得以有序进行。了解并掌握这些组件有助于深入理解 Spring MVC 的工作原理。【5月更文挑战第2天】
  • 05.06 11:16:00
    发表了文章 2024-05-06 11:16:00

    用Redis延时队列搞定订单超时业务

    Redis延时队列利用Sorted Set实现定时任务,适用于订单超时、定时提醒等场景。通过设置消息到期时间戳作为分数,到期后从Sorted Set中获取并处理。Redisson客户端提供便捷实现,如Java示例所示,利用RBlockingDeque和RDelayedQueue管理队列。注意时间精度、资源消耗和锁机制等问题,适用于订单取消、服务延迟激活、定时提醒等业务。【5月更文挑战第1天】
  • 04.30 12:28:12
    发表了文章 2024-04-30 12:28:12

    ReentrantLock 原理你都知道吗?

    通过以上步骤和示例代码,你应该对 ReentrantLock 的工作原理有了清晰的理解。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:27:20
    发表了文章 2024-04-30 12:27:20

    使用Prometheus配置监控与报警

    通过以上步骤,你可以使用Prometheus和Alertmanager实现监控和报警配置,以确保系统在出现性能问题或故障时能够及时通知相关人员。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:13:14
    发表了文章 2024-04-30 12:13:14

    基于Seata实现分布式事务

    通过以上步骤,你可以使用 Seata 实现分布式事务,确保在微服务架构中的事务一致性。Seata 支持多种语言和框架,能够满足不同业务场景的需求。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:12:41
    发表了文章 2024-04-30 12:12:41

    如何使用SkyWalking收集分析分布式系统的追踪数据

    通过以上步骤,你可以使用 SkyWalking 工具实现对分布式系统的数据采集和可视化。SkyWalking 提供了强大的追踪和度量功能,帮助开发者和运维人员更好地理解系统的性能状况。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:12:14
    发表了文章 2024-04-30 12:12:14

    如何使用Sentinel实现流控和降级

    通过以上步骤,你可以使用Sentinel实现应用的流量控制和降级操作,以保护系统在高流量或不稳定情况下的稳定性。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:11:46
    发表了文章 2024-04-30 12:11:46

    如何使用Knife4j进行接口测试

    通过以上步骤,你可以使用Knife4j对Spring Boot应用的接口进行测试。Knife4j提供了一个更加友好的接口测试界面,使得接口测试变得更加方便和直观。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:10:33
    发表了文章 2024-04-30 12:10:33

    Sharding-JDBC如何实现读写分离

    通过以上步骤,Sharding-JDBC能够实现数据库的读写分离,从而提高应用程序的读取性能。欢迎关注威哥爱编程,一起学习成长。
  • 04.30 12:08:24
    发表了文章 2024-04-30 12:08:24

    如何模拟100个并发用户进行压力测试?

    通过以上步骤,你可以使用JMeter对应用程序进行压力测试,评估其性能表现。
  • 04.30 12:07:42
    发表了文章 2024-04-30 12:07:42

    Sharding-JDBC 如何实现分片

    以上是V 哥在教学过程中实现分片的示例步骤,Sharding-JDBC能够实现SQL的分片操作,将请求路由到正确的数据库和表中,从而实现数据的水平扩展,这是在使用例如 MySQL作为数据库的场景中经常会使用到的,但如果你的企业正在考虑分布式数据库迁移,V 哥建议可以考虑 TiDB 或 OceanBase 这样的分布式数据库,因为它们天然就支持分布式,而不需要考虑这些。
  • 04.30 12:06:48
    发表了文章 2024-04-30 12:06:48

    zabbix 入门教程

    Zabbix是一个开源的监控系统,它可以用来监控网络、服务器、虚拟机和云资源等。以下是从入门到掌握Zabbix的一些基本步骤:
  • 04.30 01:22:44
    发表了文章 2024-04-30 01:22:44

    apache DbUtils 组件核心原理与应用

    DbUtils 的设计思想是简化 JDBC 编程,通过封装 JDBC 操作,减少样板代码,提高开发效率。它通过 QueryRunner、ResultSetHandler 和 RowProcessor 的协同工作,实现了对 JDBC 资源的精细化管理,同时避免了资源泄漏的风险。DbUtils 的使用不涉及复杂的配置和ORM映射,适合需要快速、轻量级数据库操作的场景。
  • 04.30 01:02:21
    发表了文章 2024-04-30 01:02:21

    扒开kafka内部组件,咱瞅一瞅都有啥?

    以上是 V 哥整理的关于 Kafka 核心组件的介绍,掌握 Kafka 中间件,应用在大型分布式项目中,这对于人个的项目经验积累是浓墨重彩的笔,换句话说,只要是有用到Kafka 的项目,必然是小不了,否则架构师脑袋长泡了。
  • 04.29 23:38:22
    发表了文章 2024-04-29 23:38:22

    Nacos 1.4.1核心功能组件及使用入门

    以上步骤提供了 Nacos 1.4.1 的基本使用概览,具体的配置和使用可能根据你的环境和需求有所不同。
  • 04.29 23:26:50
    发表了文章 2024-04-29 23:26:50

    TiDB 分布式数据库快速入门详解

    这些示例展示了TiDB的一些基本操作。实际使用时,你可能需要根据具体的业务需求和环境进行调整和优化。
  • 04.29 23:13:18
    发表了文章 2024-04-29 23:13:18

    Docker 入门详解

    通过遵循这些步骤,你将能够快速入门 Docker 并开始探索容器化的世界,关注 V 哥,技术之路一起成长。
  • 04.29 22:55:35
    发表了文章 2024-04-29 22:55:35

    栈数据结构详解

    栈(stack)是一种线性数据结构,栈中的元素只能先入后出(First In Last Out,简称FILO)。最早进入的元素存放的位置叫作栈底(bottom),最后进入的元素存放的位置叫作栈顶 (top)。本文是对堆结构的通透介绍
  • 04.29 22:46:17
    发表了文章 2024-04-29 22:46:17

    【初学者慎入】Spring源码中的16种设计模式实现

    以上是威哥给大家整理了16种常见的设计模式在 Spring 源码中的运用,学习 Spring 源码成为了 Java 程序员的标配,你还知道Spring 中哪些源码中运用了设计模式,欢迎留言与威哥交流。
  • 04.29 22:28:29
    发表了文章 2024-04-29 22:28:29

    你是如何看待AIGC技术的?

    AIGC(AI Generated Content)技术,即人工智能生成内容技术,是指利用人工智能技术来生成文本、图片、音频、视频等内容的生产方式。这一技术在近年来得到了迅速发展,并且在多个领域展现出巨大的潜力和应用价值。
  • 04.29 22:25:41
    发表了文章 2024-04-29 22:25:41

    图搜索算法详解

    图搜索算法是用于在图结构中寻找特定节点或路径的算法。图是由节点(或顶点)和边组成的集合,节点代表对象,边代表节点之间的连接。图搜索算法广泛应用于各种领域,比如网络路由、社交媒体分析、推荐系统等。 V哥最近总是在多个地方都看到关于图搜索算法的讨论
  • 04.29 22:23:06
    发表了文章 2024-04-29 22:23:06

    迭代加深搜索

    迭代加深搜索(Iterative Deepening Search, IDS)是一种结合了广度优先搜索(BFS)和深度优先搜索(DFS)的搜索策略,它通过重复执行深度限制的深度优先搜索来实现。每次迭代,深度限制增加,直到达到目标节点或搜索空间耗尽。下面是 V 哥的一些理解,分享给大家
  • 04.29 22:19:02
    发表了文章 2024-04-29 22:19:02

    高效删除链表倒数节点最优实现

    要删除链表的倒数第 n 个节点,并返回链表的头节点,我们可以使用一趟扫描的方法来实现。这个方法涉及使用两个指针:快指针和慢指针。
  • 04.29 22:18:09
    发表了文章 2024-04-29 22:18:09

    centos常见的命令

    CentOS 是一个基于 Red Hat Enterprise Linux (RHEL) 的免费企业级操作系统。以下是一些基本的 CentOS 命令,用于日常管理和操作:
  • 04.29 22:17:12
    发表了文章 2024-04-29 22:17:12

    面试遇到算法题:实现LRU缓存

    V哥的这个实现的关键在于维护一个双向链表,它可以帮助我们快速地访问、更新和删除最近最少使用的节点,同时使用哈希表来提供快速的查找能力。这样,我们就可以在 O(1) 的时间复杂度内完成所有的缓存操作。哈哈干净利索,回答完毕。
  • 04.29 22:16:08
    发表了文章 2024-04-29 22:16:08

    去哪儿网开源的一个对应用透明,无侵入的Java应用诊断工具

    今天 V 哥给大家带来一款开源工具Bistoury,Bistoury 是去哪儿网开源的一个对应用透明,无侵入的java应用诊断工具,用于提升开发人员的诊断效率和能力。
  • 04.29 22:12:47
    发表了文章 2024-04-29 22:12:47

    【小白误闯】这可能是对 Tomcat 工作原理解释最详细的文章

    脑子一闪而过,当年 V 哥在面试 Java 开发时,被问到让你写一个 Tomcat 服务器,你有什么想法?尼码,面试官摆明是在压工资了,你得逞了,我回答不上来,当时也没研究过 Tomcat 的源码,饮恨被拒。今天想想看,当时尴尬的表情,蛮逗的嘞。 今天V 哥有空把这个问题整理出来,干脆写成文章吧,放到资料库里,也分享给大家。Tomcat 是一个流行的 Java Servlet 和 JSP 容器,用于运行 Java Web 应用程序。它的核心组件主要包括:
  • 04.29 22:09:31
    发表了文章 2024-04-29 22:09:31

    【收藏】JUC并发编程类库详解(12个并发类库详解)

    今天 V 哥聊聊并发数据结构的问题,我们知道,并发编程中,保障数据的安全访问是第一要务,JDK 提供了一系列JUC并发数据结构,这些数据结构是线程安全的,可以在多线程环境中使用而无需额外的同步措施。以下是一些主要的并发数据结构。
  • 04.29 22:08:17
    发表了文章 2024-04-29 22:08:17

    详细介绍Hystrix的概念、作用、使用方法

    Hystrix 通过这些核心类和接口实现了断路器模式,提供了线程池隔离、请求缓存、服务降级等功能。每个命令在执行时都会被封装为一个 HystrixCommand 实例,并在一个独立的线程池中执行。
  • 04.29 22:07:27
    发表了文章 2024-04-29 22:07:27

    Stable Diffusion 本地部署教程

    本文是 V 哥在学习Stable Diffusion技术时整理的学习笔记,分享给大家,希望能帮助到你快速入门。
  • 04.29 22:05:16
    发表了文章 2024-04-29 22:05:16

    Tomcat 启动闪退问题解决方法

    在开发中,当使用 IntelliJ IDEA 遇到 Tomcat 启动后闪退的问题时,不要慌,可以尝试以下方法来解决
  • 04.29 22:03:34
    发表了文章 2024-04-29 22:03:34

    数据结构面试常见问题

    V哥在工作中整理了22个常用数据结构实现与原理分析,在面试中可以帮你你充分准备
  • 04.29 22:01:21
    发表了文章 2024-04-29 22:01:21

    用智谱 GLM-4大模型开发自己的IDEA插件

    V 哥建议研究大模型先从研究开放 API 开始,作为程序员的你觉对不是什么难事,通过研究 API 的过程中,可以让你更加了解大模型的原理,当然想要更深入的理解,需要对开源大模型的源码进行研究,根据个人的技术能力,量力而行。研究 API 是第一步,目前热招的岗位中,就有基于大模型开放 API 做应用开发的,大家可以在招聘站点上具体看看职位要求。
  • 04.29 22:00:34
    发表了文章 2024-04-29 22:00:34

    信不信?一个R-tree问题就能刷掉99%的应聘者

    R-tree是一种高效的空间索引数据结构,特别适合处理高维空间数据。它通过将数据项组织在树结构中,最小化每个节点的边界矩形覆盖范围,从而减少了数据的冗余和提高了查询效率。
  • 发表了文章 2024-07-04

    深度长文解析SpringWebFlux响应式框架15个核心组件源码

  • 发表了文章 2024-07-03

    GuavaCache、EVCache、Tair、Aerospike 缓存框架比较

  • 发表了文章 2024-07-01

    使用explain优化慢查询的业务场景分析

  • 发表了文章 2024-06-25

    35个Redis企业级性能优化点与解决方案

  • 发表了文章 2024-06-20

    好文!12个策略解决 Kafka 数据丢失问题

  • 发表了文章 2024-06-14

    15分钟面试被5连CALL,你扛得住么?

  • 发表了文章 2024-06-06

    【超长文】Redis在项目中的17种使用场景

  • 发表了文章 2024-06-06

    线程池有哪些拒绝策略?

  • 发表了文章 2024-06-04

    用Spring Security快速实现 RBAC模型案例

  • 发表了文章 2024-05-15

    Elasticsearch框架学习的难点和重点有哪些

  • 发表了文章 2024-05-15

    【小白误闯】Activiti 框架你不得不知道的一些事

  • 发表了文章 2024-05-15

    10个SpringMVC的核心组件详解

  • 发表了文章 2024-05-15

    用Redis延时队列搞定订单超时业务

  • 发表了文章 2024-05-15

    Spring状态机的实现原理和业务场景

  • 发表了文章 2024-05-15

    Sharding-JDBC如何实现读写分离

  • 发表了文章 2024-05-15

    栈数据结构详解

  • 发表了文章 2024-05-15

    【初学者慎入】Spring源码中的16种设计模式实现

  • 发表了文章 2024-05-15

    你是如何看待AIGC技术的?

  • 发表了文章 2024-05-15

    高效删除链表倒数节点最优实现

  • 发表了文章 2024-05-15

    数据结构面试常见问题

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息