java分布式项目需要进行注意的事项(代码层面)

  1. 在分布式系统中,使用主键自增会引发一系列问题。以下是几个主要原因:

    高并发冲突:在分布式系统中,多个节点同时生成主键时会产生冲突。因为每个节点都有自己的自增序列,同时生成的主键可能会有重复。

    单点故障:使用主键自增通常依赖于一个中心节点或数据库来维护自增序列。如果该节点或数据库发生故障,整个系统的主键生成功能也会受到影响。

    不适合分片:在分布式系统中,数据通常会进行分片存储在不同的节点上。如果使用主键自增,可能导致数据不均匀地分布在不同的节点上,影响系统的负载均衡和性能。

  2. xxjob分布式作业和普通的job :

    分布式作业和普通的作业在执行方式和规模上存在一些区别。

    分布式作业是指将一个大型任务分成多个小任务,在多个计算节点上同时执行,然后将结果进行合并的一种作业形式。这种作业可以充分利用计算资源,提高作业的执行效率。分布式作业通常需要一个中央调度器来协调和管理多个节点的工作,以保证作业的正确执行。

    普通的作业指的是在单个计算节点上执行的任务。这种作业通常是顺序执行的,只能利用单个节点的计算资源。普通的作业适用于小型任务或者那些不需要并行处理的任务。

    总结起来,分布式作业适用于大规模、需要并行处理的任务,可以充分利用计算资源提高效率;而普通的作业适用于小规模、顺序执行的任务。

  3. 注意项目参数配置问题

    项目配置 要 存储在数据库中,不要存在代码里面.( 避免出现代码上传的时候导致配置覆盖.尤其是java的tar包自动部署一不小心就把老配置給替换了. 哭都来不及. )

    分布式项目一定要用MQ(消息队列) 来拆分. 各种好处. 各种方便. 各种优点, 各种优雅. 各种...各种... 总之就是好. 淘宝也在用这个拆分系统.你还有什么理由不拆? 不用?而且阿里云上直接提供了成熟的消息队列产品直接拿来使用. 方便稳定又好用.而且是http 协议的.。

相关推荐
IT枫斗者枫哥2 分钟前
Java 接口超时后,重试为什么会多建一条任务?
java
用户3126874877207 分钟前
CAS 到底是怎么保证原子性的?从 Unsafe 到 VarHandle 的演进
java
Zane199412 分钟前
线上突然OOM,你的排查顺序是先看日志还是先重启
java·后端
会飞的拖把15 分钟前
Python 多任务编程:并发、进程、线程与线程安全详解
开发语言·python
君顾124 分钟前
折扣卡 CPS 小程序定制:从业务流程到系统架构的实践指南
java·开发语言·折扣卡
见不散26 分钟前
GPT-5.6 Luna (Batch) 批量处理能力深度评测
java·gpt·batch
计算机毕设定制辅导-无忧学长44 分钟前
《基于SpringBoot的庭院玫瑰栽培养护知识交互式科普平台设计与实现》
java·spring boot·后端·毕业设计·个性化推荐·协同过滤算法·庭院玫瑰栽培养护知识科普平台
江畔柳前堤1 小时前
云原生 × AI 全景图谱:从 Kubernetes 到 Agent 基础设施的一次认知跃迁
人工智能·分布式·gpt·云原生·kubernetes·原型模式·agi
坚定学代码1 小时前
static在c++中的使用
开发语言·c++
Json____1 小时前
从零构建家政服务平台:一套全栈架构如何打通管理端与移动端-java-springboot
java·spring boot·后端·架构·毕设·wwwoop.com