2023年4月16日
摘要: 最近两年整个IT行业冲击很大,特别是今年IT行业就业环境真的非常冷可以说是“惨淡”。过去疫情期间IT行业就业环境还不会那么差,今年疫情后遗症特明显。有数据可以提供依据,过去三年全球各大IT巨头一共裁员20多万,而今年一季度裁员达到28万。也就是说一季度裁员数量比过年三年总和还多。首先在大厂工作的人能 阅读全文
posted @ 2023-04-16 23:35 陈国利 阅读(314) 评论(0) 推荐(0) 编辑
  2023年4月15日
摘要: 继续接前文手撕商城系统架构设计与实现 支付系统是商城体系里面另一个关键核心系统,所有商城线上交易行为最终转化收入业绩重要支撑。支付最主要目标是保证系统稳定、高可靠,承载高并发支付结算场景。广大企业是没有支付牌照的,全国有支付牌照的公司就那么20几家,所以众多公司都是接入第三方公司(如:支付宝、微信、 阅读全文
posted @ 2023-04-15 12:11 陈国利 阅读(504) 评论(0) 推荐(0) 编辑
  2023年4月2日
摘要: 继续接前文手撕商城系统架构设计与实现 本文主要讲解商城体系下产商品系统的设计。商城系统可以拆分成多个业务中台和多个应用服务。 1、产商品系统业务架构 产商品系统作为商城重要的基础信息组成部分,主要划分为产品信息和商品信息,产品信息保持最原始的产品基础属性和内容,商品信息则根据不同的售卖策略、营销价格 阅读全文
posted @ 2023-04-02 11:19 陈国利 阅读(693) 评论(0) 推荐(1) 编辑
  2023年3月28日
摘要: 随着互联网技术广泛应用,各行各业都依托线上平台进行商务活动。小到个人带货,大到企业商业活动,都少不了需要少不了在线交易。于是,到处可见商城影响,不管是加盟大的电商平台如淘宝、京东、拼多多,或是企业自建商城平台,目的基本都是扩大生意渠道,卖货增加业绩收入。 下面基于我们公司自建商城平台,来谈谈我们商城架构设计方案。 阅读全文
posted @ 2023-03-28 23:56 陈国利 阅读(3325) 评论(1) 推荐(5) 编辑
  2023年3月24日
摘要: 首先说明一下什么是神码?神码就是神奇代码的意思(也是糟糕的意思),在这里是为了表达引以为戒! 往事不堪回首!想当年(2017年)公司技术团队新组建,系统新搭建。为了赶工期,一切以快速为目标,快速试错,快速交付上线。项目管理规范被忽视和技术规范管控没有及时跟上,工程师们交付的代码质量非常的糟糕。产生了 阅读全文
posted @ 2023-03-24 23:50 陈国利 阅读(1051) 评论(0) 推荐(3) 编辑
  2023年3月23日
摘要: 领域驱动设计(Domain Driven Design,简称:DDD)设计思想和方法论早在2005年时候就被提出来,但是一直没有被重视和推荐使用,直到2015年之后微服务流行之后,再次被人重视和推荐使用。 下面我来介绍一下DDD设计思想和方法论,同时结合我们在实际项目中应用总结和思考。 目录 1、为 阅读全文
posted @ 2023-03-23 11:33 陈国利 阅读(2349) 评论(3) 推荐(7) 编辑
  2023年3月22日
摘要: 企业软件应用架构层出不穷(这里的应用架构是指偏后端服务的软件架构)每个企业由各自业务形态,技术栈,技术路线,技术实力不同,各自架构方案,技术选型各有各的不同,千姿百态,正所谓:“百花齐放,尽吐芬芳”。 没有最好架构,只有当前最适合的架构方案,也没有完美架构,只有持续迭代演进的架构。 有没有一种万能通 阅读全文
posted @ 2023-03-22 10:34 陈国利 阅读(5618) 评论(14) 推荐(56) 编辑
  2023年3月19日
摘要: 统一鉴权认证是一个基础服务。它几乎在所有企业内部都需要,企业内部只要有两个以上系统存在,就有必要实现一套统一的授权系统,否则用户使用非常地麻烦,需要在不同系统之间来回登录切换。特别是在微服务大行其道的今天,这个统一授权认证服务更是一个基础和关键入口。实现的方案有很多种,但都大同小异。 本文主要介绍授 阅读全文
posted @ 2023-03-19 13:10 陈国利 阅读(6690) 评论(11) 推荐(23) 编辑
  2023年3月17日
摘要: 互联网时代,数据呈爆炸式增长,前所未有的数据量远远超过受众的接收和处理能力,因此,从海量复杂数据中有效获取关键性有用信息成为必须解决的问题。 面对信息过载问题,人们迫切需要一种高效的信息过滤系统,“推荐系统”应运而生。 20世纪90年代以来,尽管推荐系统在理论、方法和应用方面取得了系列重要进展,但数据的稀疏性与长尾性、用户行为模式挖掘、可解释性、社会化推荐等问题仍然是其面临的重要挑战。 进一步地,伴随互联网及信息技术的持续飞速发展,用户规模与项目数量急剧增长,相应地,用户行为数据的稀疏性、长尾性问题更加凸显。也就是说目前各大平台虽然已经推荐系统,但是实际应用当中还是面临很多问题,仍然有很大的提升空间。这是技术挑战也机会,当然这也是我们这些从业者可以发挥的地方。 阅读全文
posted @ 2023-03-17 00:33 陈国利 阅读(1422) 评论(0) 推荐(11) 编辑
  2023年3月15日
摘要: 一、背景 最近业务要求PC端系统登录使用APP应用扫码登录。 主要目的是: 1、简化用户录入账号密码,达到快速登录PC; 2、账号登录使用更加安全性; 3、为了推广更多让大家打开使用APP(因为行业的特殊性,实际业务场景中大都设计师都在使用PC端设计软件,同时也习惯了PC端下单)。 二、处理流程 1 阅读全文
posted @ 2023-03-15 17:31 陈国利 阅读(1207) 评论(0) 推荐(7) 编辑
  2023年3月13日
摘要: 一、背景 有个业务系统(订单系统),通过后台日志和监控观察,系统偶尔会出现重复唯一索引问题,例如:后台日志片段 Duplicate entry 'service_no' for key 'idx_service_no' .... 也就是说写入数据与数据库已有数据发生重复。 下面我们分析一下问题出现在 阅读全文
posted @ 2023-03-13 23:41 陈国利 阅读(673) 评论(1) 推荐(2) 编辑
  2023年3月9日
摘要: 有个生产环境CRM业务应用服务,情况有些奇怪,监控数据显示内存异常。内存使用率99.%多。通过生产监控看板发现,CRM内存超配或内存泄漏的现象,下面分析一下这个问题过程记录。 1、服务器硬件配置部署情况 生产服务器采用阿里云ECS机器,配置是2HZ、8GB,单个应用服务独占,CRM应用独立部署,即单 阅读全文
posted @ 2023-03-09 23:39 陈国利 阅读(2554) 评论(5) 推荐(13) 编辑
  2023年3月8日
摘要: Paxos在分布式环境下应用非常广泛,是一致性算法里面优越的代表。Google的粗粒度锁服务Chubby的设计开发者Burrows曾经说过:所有一致性协议本质上要么是Paxos要么是其变体。 一、Paxos概念 Paxos算法是基于消息传递且具有高度容错特性的一致性算法,是目前公认的解决分布式一致性 阅读全文
posted @ 2023-03-08 15:17 陈国利 阅读(407) 评论(0) 推荐(0) 编辑
  2023年3月7日
摘要: Raft 是一种更为简单方便易于理解的分布式算法,主要解决了分布式中的一致性问题。相比传统的 Paxos 算法,Raft 将大量的计算问题分解成为了一些简单的相对独立的子问题,并有着和 Multi-Paxos 同样的性能,下面我们通过文章内容描述,以还原 Raft 内部原理。 一、Raft 基础 名 阅读全文
posted @ 2023-03-07 22:28 陈国利 阅读(76) 评论(0) 推荐(0) 编辑
  2023年3月6日
摘要: 1、背景 某次促销活动采用微信炒群,红包雨的方式进行引流,面向广大C端用户,活动期间面向大规模用户,系统设计需要承载三高(高可用、高并发、高性能)要求。 系统设计首先我们要考虑几个问题: 1、业务场景面向高并发,怎么设计一个高性能抢红包程序以解决在高并发条件下能正常运行? 2、系统高并发瓶颈会出现在 阅读全文
posted @ 2023-03-06 15:06 陈国利 阅读(1622) 评论(0) 推荐(5) 编辑
  2023年3月5日
摘要: 数据中台搭建方法论与实践——第1篇 数据中台的理念起源于阿里,基于企业内部海量的电商数据和产业链数据,逐渐丰富数据中台实践经验,以新零售、新金融等互联网技术和思维为核心的数据赋能业务也在创新尝试,整个行业全面跟进。 数字经济的发展已呈现出越来越清晰的特征:数据信息资源逐步成为新的关键要素资源;数字技术创新是数字经济持续发展的原动力;平台化是数字经济的主要产业组织形态;产业融合是数字经济的主要表现形式;多元共治是数字经济时代必要治理要求;网络空间成为驱动实体世界变革的关键力量。 阅读全文
posted @ 2023-03-05 10:43 陈国利 阅读(224) 评论(0) 推荐(0) 编辑
摘要: RabbitMQ生产故障问题分析 由某一次真实生产环境rabbitMQ故障引发血案,下面复盘问题发生原因以及问题解决方法。 1、 问题引发 由某个服务BI-collector-xx队列出现阻塞,影响很整个rabbitMQ集群服务不可用,多个应用MQ生产者服务出现假死状态,系统影响面较广,业务影响很大 阅读全文
posted @ 2023-03-05 00:26 陈国利 阅读(42518) 评论(10) 推荐(30) 编辑
  2023年3月4日
摘要: 对于我们开发人员来说,单元测试一定不会陌生,但在各种原因下会被忽视,尤其是在我接触到的项目中,提测阶段发现各种各样的问题,我觉得有必要聊一下单元测试。 为了写而写的单元测试没什么价值,但一个好的单元测试带来的收益是非常客观的。问题是怎么去写好单元测试?怎么去驱动写好单元测试? 一 现状 现状一:多个 阅读全文
posted @ 2023-03-04 20:34 陈国利 阅读(1575) 评论(0) 推荐(0) 编辑
摘要: 在java的多线程模块中,ThreadLocal是经常被提问到的一个知识点 ,因此只有理解透彻了,不管怎么问,都能游刃有余。 本文主要从以下几个角度来分析理解 ThreadLocal是什么 ThreadLocal怎么用 ThreadLocal源码分析 ThreadLocal内存泄漏问题 PS:以下源 阅读全文
posted @ 2023-03-04 19:15 陈国利 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 一、概念介绍 几何约束关系,是指对草图上的某些元素添加几何关系,从而让他们产生位置性约束关系的功能,主要包括连接、水平、竖直、相切、平行、相等、对称、同心、垂直、共线等内容。 几何约束求解(Geometric Constraint Solver 简称:GCS) 狭义上,我们通常讲的GCS主要是为CA 阅读全文
posted @ 2023-03-04 11:34 陈国利 阅读(1308) 评论(0) 推荐(1) 编辑