- 博客(1080)
- 资源 (9)
- 问答 (1)
- 收藏
- 关注
原创 分布式微服务系统架构第93集:JT808协议Java编解码实现
通过以上步骤,可完成JT808协议消息的Java编解码。实际应用中需结合协议文档处理具体字段。:包含消息ID、消息体属性(长度、加密等)、终端手机号、消息流水号等。:根据不同的消息ID动态解析数据(如0x0200为位置信息)。:根据消息ID定义的具体业务数据(如位置、心跳等)。:协议规定使用大端序(Big-Endian)。2. 编码过程(Java对象 → 字节流)3. 解码过程(字节流 → Java对象):避免遗漏0x7D和0x7E的转义。:必须验证校验码以确保数据完整性。:从消息头到消息体的异或校验。
2025-03-17 08:28:12
302
原创 分布式微服务系统架构第92集:智能健康监测设备Java开发方案
加群联系作者vx:xiaoda0423仓库地址:https://webvueblog.github.io/JavaPlusDoc/https://1024bat.cn嗯,用户需要为血压、血糖、尿酸和血酮测试仪编写产品描述,同时涉及Java开发。首先,我得确定他们的需求是什么。可能他们是在开发一个健康监测系统,需要将这些设备的数据整合到一个应用中。产品描述需要专业但易懂,适合医疗或消费者市场。Jav...
2025-03-01 21:32:13
755
原创 LM Studio部署DeepSeekR1
安装必要软件和部署准备????由于一些神秘的力量,导致技术和我们相隔一面悲痛的壁障。请您自行修得道法破除壁障。下载并且安装必要依赖环境下载安装包您只需要下载 LM Studio 这一个软件包即可完成DeepseekR1的部署。????下载传送门:https://lmstudio.ai/download下载完成以后,您就可以获得一个如下图的安装包:安装LM Studio鼠标右键管理员身份运行:运行后,点击为所有...
2025-02-18 22:43:10
368
原创 分布式微服务系统架构第91集:系统性能指标总结
加群联系作者vx:xiaoda0423仓库地址:https://webvueblog.github.io/JavaPlusDoc/系统性能指标总结系统性能指标包括哪些?业务指标、资源指标、中间件指标、数据库指标、前端指标、稳定性指标、批量处理指标、可扩展性指标、可靠性指标。1)业务指标:主要包括并发用户数、响应时间、处理能力。响应时间 Response Time: RT对于在线实时交易:互联网企业...
2025-02-03 14:01:14
1062
原创 分布式微服务系统架构第90集:现代化金融核心系统
#1.1 深化数字化转型,核心面临新挑战1、架构侧:无法敏捷协同数字金融经营模式转型。2、需求侧:业务需求传导低效始终困扰金融机构。3、开发侧:创新产品上市速度低于期望。4、运维侧:传统面向资源型监控体系难以支撑现代化核心。5、监管侧:对业务连续性导向趋严趋细。6、成本侧:单客核心的运营成本逐渐走高。#1.2 重塑现代化核心,科技引领新趋势1、新理念:重构行业差异化竞争力的服务体系。2、新架构:构...
2025-01-31 15:04:52
1450
原创 分布式微服务系统架构第89集:kafka消费者
那么消费者是如何提交偏移量的呢?消费者往一个叫作 _consumer_offset 的特殊主题发送 消息,消息里包含每个分区的偏移量。如果消费者一直处于运行状态,那么偏移量就没有 什么用处。不过,如果消费者发生崩溃或者有新的消费者加入群组,就会触发再均衡,完 成再均衡之后,每个消费者可能分配到新的分区,而不是之前处理的那个。为了能够继续 之前的工作,消费者需要读取每个分区最后一次提交的偏移量,然后...
2025-01-30 14:11:56
1080
原创 分布式微服务系统架构第88集:kafka集群
使用集 群最大的好处是可以跨服务器进行负载均衡,再则就是可以使用复制功能来避免因单点故 障造成的数据丢失。在维护 Kafka 或底层系统时,使用集群可以确保为客户端提供高可用 性。需要多少个broker一个 Kafka 集群需要多少个 broker 取决于以下几个因素。首先,需要多少磁盘空间来保 留数据,以及单个 broker 有多少空间可用。如果整个集群需要保留 10TB 的数据,每个 brok...
2025-01-26 09:46:44
1492
原创 分布式微服务系统架构第87集:kafka
Kafka 就是为了解决上述问题而设计的一款基于发布与订阅的消息系统。它一般被称为 “分布式提交日志”或者“分布式流平台”。文件系统或数据库提交日志用来提供所有事务 的持久记录,通过重放这些日志可以重建系统的状态。同样地,Kafka 的数据是按照一定 顺序持久化保存的,可以按需读取。此外,Kafka 的数据分布在整个系统里,具备数据故 障保护和性能伸缩能力。消息和批次消息和批次 Kafka 的数据...
2025-01-22 20:37:14
2100
原创 springboot第84集:Java进阶之路, Netty
#kafka-map文件夹cd/usr/local/kafka-map#根据需求自行修改配置viapplication.yml#启动java-jarkafka-map.jarbyte minByte = -128;byte maxByte = 127;用于表示一个 8 位(1 字节)有符号整数。它的值范围是 -128(-2^7)到 127(2^7 - 1)。由于 byte...
2024-12-08 21:24:58
1061
原创 springboot第83集:理解SaaS多租户应用的架构和设计,设备介入,网关设备,安全,实时实现,序列化...
springboot第83集:理解SaaS多租户应用的架构和设计,设备介入,网关设备,安全,实时实现,序列化,数据交换,存储与查询,流处理,消息队列[什么是多租户]聊到PaaS,SaaS,就不得不谈到多租户。多租户指一套系统能够支撑多个租户。一个租户通常是具有相似访问模式和权限的一组用户,典型的租户是同一个组织或者公司的若干用户。要实现多租户,首先需要考虑的是数据层面的多租户。数据层的多租户模型对...
2024-11-18 00:00:20
1441
原创 springboot第82集:消息队列kafka,kafka-map
官网下载链接:https://kafka.[apache].org/downloads我下载的是[Scala]2.12 - kafka_2.12-3.1.0.tgzkafka只需要解压下载的压缩包就行了,我这里解压的路径是D:\kafka_2.12-3.1.0,kafka的运行需要依赖zookeeper,当前版本已经内置了zookeeper,所以不需要再安装zookeeper。kafka配置kaf...
2024-11-17 09:58:56
1066
原创 微服务mysql,redis,elasticsearch, kibana,cassandra,mongodb, kafka
在 Windows 上安装 MySQL下载 MySQL 安装包:访问 MySQL 官方网站。选择适合 Windows 的安装程序,下载并保存。运行安装程序:双击下载的安装文件,开始安装。在安装向导中选择“开发者默认”或“完整安装”。配置 MySQL:在配置过程中,选择配置类型(如开发机、服务器等)。设置 MySQL 的根用户密码,并选择是否创建其他用户。设置服务:选择 MySQL 是否作为 Win...
2024-11-06 23:57:24
1219
原创 springboot第80集:Seata,优化 Java 代码,物联网IOT
Seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata将为用户提供了AT、TCC、SAGA和XA事务模式,为用户打造一站式的分布式解决方案。AT模式是阿里首推的模式,阿里云上有商用版本的GTS(GlobalTransactionService全局事务服务)Seata的三大角色在Seata的架构中,一共有三个角色:TC(Transact...
2024-10-31 21:28:14
844
原创 springboot第79集:各种锁,线程池企业级高并发亿级数据处理
个人简介:我是哪吒全栈架构师Java|微服务集群方向一个人可能走得更快,但一群人一定会走得更远对于 MySQL 单表数据超过亿条记录的优化,以下是一些建议:1. 索引优化创建合适的索引:确保对常用查询条件、排序字段和连接字段建立索引。使用复合索引:对于多个条件的查询,考虑使用复合索引,以减少索引的数量和提升查询效率。2. 分区表数据分区:根据某个字段(如时间、ID范围等)进行分区,能有效地减少...
2024-10-21 22:54:03
645
原创 springboot第78集:队列,锁,并发,通信,框架,流计算
个人简介:我是哪吒全栈架构师Java|微服务集群方向一个人可能走得更快,但一群人一定会走得更远队列PriorityBlockingQueue不会阻塞数据⽣产者(因为队列是⽆界的),⽽只会在没有可消费的数据时,阻塞数据的消费者。因此使⽤的时候要特别注意,⽣产者⽣产数据的速度绝对不能快于消费者消费数据的速度,否则时间⼀⻓,会最终耗尽所有的可⽤堆内存空间。对于使⽤默认⼤⼩的LinkedBlockin...
2024-10-15 06:32:33
1207
原创 springboot第77集:深入浅出Java多线程
全栈架构师Java|微服务集群方向四种常⻅的线程池Java 提供了多种线程池实现,用于高效管理线程的创建和调度。常见的线程池包括:**FixedThreadPool**:固定大小的线程池。**CachedThreadPool**:可缓存的线程池,根据需要动态创建线程。**ScheduledThreadPool**:定时调度的线程池。**SingleThreadExecutor**:单一线程的线...
2024-10-14 07:37:41
798
原创 springboot第76集:线程,ThreadGroup
导出数据: 查询结果可以使用脚本或工具(如 Python 的 Pandas 库)将数据导出为 Excel 格式。例如,使用 Python:当查询数组中有大量数据(如一千多条)时,可以使用 _mget(多获取)API 来优化性能。以下是如何优化你的查询:使用 _mget 查询将 order_ids 数组传入 _mget,这样可以批量获取数据,而不是逐条查询。批处理操作系统,把⼀系列需要操作的指令写下...
2024-10-13 23:53:51
919
原创 springboot第75集:kafka,线程,进程,容器化服务,线程池
消息中间件在异步通信中⽤的最多,很多业务流程中,如果所有步骤都同步进⾏可能会导致核⼼流程耗时⾮常⻓,更重要的是所有步骤都同步进⾏⼀旦⾮核⼼步骤失败会导致核⼼流程整体失败,因此在很多业务流程中Kafka就充当了异步通信⻆⾊。⼤规模分布式系统中的机器⾮常多⽽且分散在不同机房中,分布式系统带来的⼀个明显问题就是业务⽇志的查看、追踪和分析等⾏为变得⼗分困难,对于集群规模在百台以上的系统,查询线上⽇志很恐怖...
2024-10-06 19:28:52
1556
原创 springboot第74集:设计模式
解析核心线程数与CPU核数相同:避免线程过多导致的上下文切换,提高CPU利用率。无界队列:适合任务量大且任务执行时间短的场景,避免因队列满而拒绝任务。IO密集型任务场景描述适用于执行大量IO操作的任务,如文件读写、网络通信、数据库访问等。这类任务在等待IO时线程处于阻塞状态,因此可以通过增加线程数来提高并发度。线程池配置核心线程数:根据CPU核数和IO等待时间来调整,通常设置为CPU核数的2倍或更...
2024-09-28 21:50:47
1341
原创 感谢关注 Thanks for your attention
后端技术栈前端技术栈DevOps运维技术栈测试技术栈开发工具其他汇总一个基于websocket协议的分...
2024-09-07 22:22:12
2060
原创 springboot第71集:字节跳动全栈一面经,一文让你走出微服务迷雾架构周刊
使用ThreadLocal来存储和管理每个线程的事务追踪对象,确保每个线程都有自己独立的事务上下文。方法首先尝试从ThreadLocal获取事务追踪对象,如果不存在,则尝试从数据库中查询。如果数据库中也不存在,则创建一个新的事务追踪对象,初始化其状态和时间信息,然后将其保存到数据库和ThreadLocal中。这个错误消息表示 Vite 构建工具在尝试从你的 Vue 组件中导入 @toast-ui/...
2024-05-14 08:21:47
1067
原创 springboot第70集:字节跳动后端三面经,一文让你走出微服务迷雾架构周刊
创建一个使用Kubernetes (K8s) 和 Jenkins 来自动化 GitLab 前端项目打包的CI/CD流水线,需要配置多个组件。下面,我将概述一个基本的设置步骤和示例脚本,以帮助你理解如何使用这些工具整合一个自动化流程。前提条件确保你已经有:Kubernetes 集群:用于部署 Jenkins 和可能的其他相关服务。Jenkins:安装在 Kubernetes 集群上,并配置好相关插件...
2024-04-26 21:48:29
1193
1
原创 springboot第69集:字节跳动后端二面经,一文让你走出微服务迷雾架构周刊
1. 简介1.1 消息队列简介1.1.1 什么是消息队列消息队列,英文名:Message Queue,经常缩写为MQ。从字面上来理解,消息队列是一种用来存储消息的队列。来看一下下面的代码:// 1. 创建一个保存字符串的队列QueuestringQueue = new LinkedList();// 2. 往消息队列中放入消息stringQueue.offer( "hello" );// 3...
2024-04-07 21:08:44
791
原创 springboot第68集:字节跳动后端一面经,一文让你走出微服务迷雾架构周刊
image.pngimage.pnghttps://lbs.amap.com/apihttps://lbs.amap.com/api/javascript-api/guide/transform/convertfrom地球上同一个地理位置的经纬度,在不同的坐标系中,会有少许偏移,国内目前常见的坐标系主要分为三种:地球坐标系——WGS84:常见于 GPS 设备,Google 地图等国际标准的坐标体系...
2024-04-06 00:21:42
1099
原创 springboot第67集:字节跳动三面经,一文让你走出微服务迷雾架构周刊
微服务的各个组件和常见实现:注册中心:用于服务的注册与发现,管理微服务的地址信息。常见的实现包括:Spring Cloud Netflix:Eureka、ConsulSpring Cloud Alibaba:Nacos配置中心:用于集中管理微服务的配置信息,可以动态修改配置而不需要重启服务。常见的实现包括:Spring Cloud Netflix:Spring Cloud ConfigSpring...
2024-03-31 18:48:31
1154
原创 springboot第66集:字节跳动二面经,一文让你走出微服务迷雾架构周刊
MongoDB 可以应对三高需求具体的应用场景:社交场景, 使用 MongoDB 存储用户信息, 以及用户发表的朋友圈信息, 通过地理位置索引实现附近的人, 地点等功能.游戏场景, 使用 MongoDB 存储游戏用户信息, 用户的装备, 积分等直接以内嵌文档的形式存储, 方便查询, 高效率存储和访问.物流场景, 使用 MongoDB 存储订单信息, 订单状态在运送过程中会不断更新, 以 Mongo...
2024-03-18 03:57:55
983
原创 springboot第65集:字节跳动一面经,一文让你走出微服务迷雾架构周刊
如今要考虑做分库分表时,可首先选用当当网的Sharding-Sphere框架,早些年原本只有Sharding-JDBC驱动层的分库分表,但到了后续又推出了代理层的Sharding-Proxy中间件,最终合并成立了Sharding-Sphere项目。在之前的单库模式下,业务系统需要使用数据库时,只需要在相关的配置文件中,配置单个数据源的地址、用户、密码等信息即可。但分库分表后由于存在多个数据源,程序...
2024-03-15 09:35:44
958
原创 springboot第64集:Netty的底层实现机制,熟练运用群集,一文让你走出微服务迷雾架构周刊...
image.pngimage.pngimage.pngimage.pngimage.pngimage.png<selectid="selectHistoryList"parameterType="com.webVueBlog.iot.domain.DeviceLog"resultMap="HistoryResult">selectlog_value,...
2024-03-11 03:06:37
449
原创 springboot第63集:Netty,docker,elasticsearch,kibana一文让你走出微服务迷雾架构周刊...
image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngim...
2024-03-05 21:05:07
960
原创 springboot第61集:Jenkins-Boss万字挑战,一文让你走出微服务迷雾架构周刊
名词CONTAINERID(容器ID)名词IMAGEID(镜像ID)cat/etc/os-release//查看系统信息pwd//查看当前路径ls//查看当前目录文件docker-v//查看docker版本docker-composeup-d//在后台运行(取消-d是在控制台运行)docker-composestop//所有容器停止运行docker...
2024-03-01 21:40:59
1042
原创 springboot第60集:架构师万字挑战,一文让你走出微服务迷雾架构周刊
提交退款申请后,通过调用该接口查询退款状态。退款有一定延时,用零钱支付的退款20分钟内到账,银行卡支付的退款3个工作日后重新查询退款状态。注意:如果单个支付订单部分退款次数超过20次请使用退款单号查询如果该订单支付时间超过一年半,需单独使用微信订单号查询或者同时使用微信订单号和微信退款单号查询image.pngimage.png当一个订单部分退款超过10笔后,商户用微信订单号或商户订单号调退款查询...
2024-02-26 06:03:44
925
原创 springboot第59集:面试官万字挑战,一文让你走出微服务迷雾架构周刊
加群联系作者vx:xiaoda0423(个人简介:男,深圳,一名全栈架构师,25+)image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage...
2024-02-23 19:44:50
949
原创 springboot第58集:Dubbo万字挑战,一文让你走出微服务迷雾架构周刊
单点登录(Single Sign-On,SSO)是一种身份验证机制,允许用户在多个应用程序或系统中使用单一的登录凭证(例如用户名和密码)进行身份验证,并且在成功登录后,可以访问所有已经授权的应用程序,而无需重新进行身份验证。原理:用户访问应用程序A并进行登录。应用程序A将用户的登录凭证发送到认证中心进行验证。认证中心验证用户的身份,并生成一个令牌(Token)。应用程序A将令牌返回给用户。用户访问...
2024-02-21 07:38:07
1041
原创 springboot第57集:Redis万字挑战,一文让你走出微服务迷雾架构周刊
Redis的内存回收机制通过内置的内存管理器来实现。当内存使用量超过了maxmemory配置的限制时,Redis会根据预先配置的内存淘汰策略来选择要删除的数据,以释放内存空间。这些策略通常基于数据的访问模式和重要性来决定,以保证在内存不足的情况下,删除的数据对系统的影响最小。假设我们的maxmemory配置为100MB,当前Redis的内存使用量已经达到了100MB。此时有一个客户端执行了新的命令...
2024-02-18 19:24:04
903
原创 springboot第56集:微服务框架,物联网IOT,SQL数据库MySQL底层,AOP收集业务操作日志架构周刊...
单点登录1.配置代理信息/*请求登陆的方法*/"/modelLogin":{//本地服务接口地址,这是测试环境,正式环境需要更改下地址target:"http://127.0.0.1:6776/xxx-auth/",changeOrigin:true,pathRewrite:{"^/modelLogin":"",},},//异步进行登录...
2024-02-17 23:57:57
1241
原创 springboot第55集:思维导图Sharding-JDBC,事务,微服务分布式架构周刊
事务相关知识,你知道多少?事务定义在数据库管理系统中,事务是单个逻辑或工作单元,有时由多个操作组成,在数据库中以一致模式完成的逻辑处理称为事务。一个例子是从一个银行账户转账到另一个账户:完整的交易需要减去从一个账户转账的金额,然后将相同的金额添加到另一个账户。事务特性原子性(Atomicty)一致性(Consistency)隔离性(Isolation)持久性(Durability)原子性( ato...
2024-02-16 12:28:47
1163
原创 springboot第54集:思维导图后端知识点微服务分布式架构周刊
BigDecimalnum1=newBigDecimal('0.1');BigDecimalnum2=newBigDecimal('0.2');BigDecimalsum=num1.add(num2);BigDecimalproduct=num1.multiply(num2);mysql: innodb和myisam有什么区别?InnoDB和Myisam是MySQ...
2024-02-04 03:36:37
1498
1
原创 springboot第53集:微服务分布式架构,docker-compose,Prometheus,mqtt监控体系周刊
从0搭建一套Prometheus监控体系简介:Prometheus是一款开源监控系统,起源于SoundCloud的警告工具包。自2012年以来,许多公司和组织开始广泛采用Prometheus。该项目具有活跃的开发人员和用户社区,吸引越来越多的参与者。如今,Prometheus已经成为一个独立的开源项目,摆脱了对任何特定公司的依赖。为了强调这一点并明确项目的治理结构,Prometheus在2016年...
2024-01-30 00:16:56
1221
原创 springboot第52集:微服务分布式架构,统一验证,oauth,订单,地区管理周刊
在计算机领域中,FGC 通常代表 Full Garbage Collection,即全垃圾收集。垃圾收集是一种自动管理内存的机制,它负责回收不再被程序使用的内存,以便释放资源和提高程序性能。当系统执行 Full Garbage Collection 时,它会检查整个堆内存,并尝试回收所有不再使用的对象。这个过程可能会导致一些系统暂时停止执行,特别是在大型内存堆上。因此,频繁的 Full Garba...
2024-01-25 22:34:40
1394
原创 springboot第51集:lombok,Swagger,k8s,缓存,sentinel周刊
@Getter和@Setter :该注解可以使用在类上也可以使用在属性上。生成的getter遵循布尔属性的约定。在使用该注解时,会默认生成一个无参构造。和对应的getter、setter方法@ToString :该注解使用在类上,编译后toString方法返回将会以字段的名称-值的形式输出@EqualsAndHashCode :该注解使用在类上,同时生成equals和hashCode。@AllAr...
2024-01-22 08:15:55
1107
book微信小程序
2018-06-22
CountTime-AndroidStudio项目制作倒计时模块
2018-04-03
Android---UI篇---Menu(菜单)
2017-11-27
如何实现点击关于按钮,获得APP的版本号,APP的签名信息,APP的权限申请信息
2017-11-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人