08 2023 档案

摘要:在进行开源软件选型时,需要留意一下开源协议,开源选件往往可以免费使用,但不意味着随意使用,根据你的用途,协议的要求会对你产生一定的影响。截止到写稿时,经过OSI(Open Source Initiative)组织批准的开源协议就有82种之多,可以参见:([https://opensource.org 阅读全文
posted @ 2023-08-31 14:09 古道轻风 阅读(201) 评论(0) 推荐(0) 编辑
摘要:今天给大家介绍下扫码登录功能是怎么设计的。 扫码登录功能主要分为三个阶段:待扫描、已扫描待确认、已确认。 整体流程图如图。 下面分阶段来看看设计原理。 1、待扫描阶段 首先是待扫描阶段,这个阶段是 PC 端跟服务端的交互过程。 每次用户打开PC端登陆请求,系统返回一个唯一的二维码ID,并将二维码ID 阅读全文
posted @ 2023-08-31 08:32 古道轻风 阅读(261) 评论(0) 推荐(2) 编辑
摘要:海康平台安装部署环境需要基于HikvisionOS Linux系统(简称HIKOS),是基于CentOS 7的 Linux操作系统。 HIKOS系统安装完成后,即设置了root和hik两个用户,初始登录密码为123456。 其中root是超级管理员用户,只能通过本地终端登录系统,禁止使用远程终端登录 阅读全文
posted @ 2023-08-30 18:20 古道轻风 阅读(2470) 评论(0) 推荐(0) 编辑
摘要:Proxmox VE 是一个运行虚拟机和容器的平台。 这是 基于 Debian Linux,完全开源。 最大 灵活性,我们实施了两种虚拟化技术 - 基于内核的虚拟机 (KVM) 和基于容器的虚拟化 (LXC)。 Proxmox VE是一个企业级虚拟化平台,该平台集成了基于内核的虚拟机管理程序(KVM 阅读全文
posted @ 2023-08-30 10:10 古道轻风 阅读(4419) 评论(0) 推荐(0) 编辑
摘要:前言 前面说了很多Kafka的性能优点,有些童鞋要说了,这Kafka在企业开发或者企业级应用中要怎么用呢?今天咱们就来简单探究一下。 1、 使用 Kafka 进行消息的异步处理 Kafka 提供了一个可靠的消息传递机制,使得企业能够将不同组件之间的通信解耦,实现高效的异步处理。在企业级应用中,可以通 阅读全文
posted @ 2023-08-30 08:27 古道轻风 阅读(139) 评论(0) 推荐(0) 编辑
摘要:你想成为一名架构师,对吗?别对我撒谎,我知道你想成为架构师。即使你不想,你还是想成为一名更好的开发者。否则,你就不会花时间阅读这篇文章。 这种态度值得赞赏。毕竟,我们都希望在自己所从事的领域变得更好,即使不能称为最好。我在这里就是为了帮助你实现这一目标。 那么,你如何成为一名架构师呢?当然是通过学习 阅读全文
posted @ 2023-08-29 08:34 古道轻风 阅读(154) 评论(0) 推荐(1) 编辑
摘要:三类代码协同模式,Git大神告诉你到底如何选。 阅读全文
posted @ 2023-08-28 08:35 古道轻风 阅读(394) 评论(0) 推荐(0) 编辑
摘要:本文主要做推荐系统浅析,主要介绍推荐系统的定义,推荐系统的基础框架,简单介绍设计推荐的相关方法以及架构。适用于部分对推荐系统感兴趣的同学以及有相关基础的同学,本人水平有限,欢迎大家指正。 阅读全文
posted @ 2023-08-27 09:13 古道轻风 阅读(237) 评论(0) 推荐(1) 编辑
摘要:本文是技术人成长系列文章,作者期望透过这些真实的技术成长经验,给到读者一些有益的启发。 阅读全文
posted @ 2023-08-26 08:52 古道轻风 阅读(917) 评论(1) 推荐(2) 编辑
摘要:在Java语言中,创建线程并不像创建对象一样简单。虽然只需要使用new Thread()即可创建线程,但实际上创建线程比创建对象复杂得多。创建对象只需在JVM的堆中分配内存,而创建线程需要调用操作系统内核的API,并为线程分配一系列资源,这个成本相对较高。因此,线程被视为重量级的对象,应尽量避免频繁创建和销毁。 那么如何避免频繁创建线程呢?解决方案就是使用线程池。 由于线程池的需求非常普遍,所以Java SDK的并发包自然也包含了线程池。但是,很多人初次接触并发包中与线程池相关的工具类时,可能会感到有些困惑,不知从何入手。我认为,这主要是因为线程池与通常意义上的资源池是不同的。一般意义上的资源池在需要资源时调用acquire()方法申请资源,在使用完毕后调用release()释放资源。然而,如果你带着这种固有模型来看待并发包中的线程池相关工具类,会遗憾地发现它们与之不匹配,因为Java提供的线程池中根本不存在申请线程和释放线程的方法。 阅读全文
posted @ 2023-08-25 08:29 古道轻风 阅读(111) 评论(0) 推荐(0) 编辑
摘要:实际工作中,为了优化性能,我们经常会使用缓存,例如缓存元数据、缓存基础数据等,这就是一种典型的读多写少应用场景。缓存之所以能提升性能,一个重要的条件就是缓存的数据一定是读多写少的,例如元数据和基础数据基本上不会发生变化(写少),但是使用它们的地方却很多(读多)。 针对读多写少这种并发场景,Java SDK并发包提供了读写锁——ReadWriteLock,非常容易使用,并且性能很好。在并发编程中,有时我们需要处理多个线程同时读取共享资源的情况,同时还要保证在有写操作时,对资源的访问是互斥的。这就是读写锁(ReadWriteLock)的应用场景。 阅读全文
posted @ 2023-08-24 08:26 古道轻风 阅读(74) 评论(0) 推荐(0) 编辑
摘要:本文比较系统的介绍了什么是全栈以及全栈开发的具体步骤和实践,最后分享了作者做全栈的心得体会。 阅读全文
posted @ 2023-08-23 09:49 古道轻风 阅读(481) 评论(0) 推荐(0) 编辑
摘要:本文介绍的 MetaQ/RocketMQ 是侧重于维持消息一致性和高可靠性的消息队列中间件,帮助大家对队列设计的理解。 阅读全文
posted @ 2023-08-22 08:28 古道轻风 阅读(994) 评论(0) 推荐(0) 编辑
摘要:简述 上篇文章介绍了如何搭建 prometheus 监控体系,监控 linux 服务器,这篇文章跟大家介绍如何监控 redis,以及我们要关注的指标都有哪些 监控 redis 需要关注什么指标 在《聊聊监控》这篇文章,介绍了 google 提出的监控四个黄金指标(没看过的朋友可以看看这篇文章),下面 阅读全文
posted @ 2023-08-21 08:45 古道轻风 阅读(509) 评论(0) 推荐(0) 编辑
摘要:引言 我们都知道,Redis 的数据存储在内存中, 一旦服务器宕机,内存中的数据将全部丢失。因此,对 Redis 来说,实现数据的持久化,避免从后端数据库中进行恢复,是至关重要的。本篇我们详细讲解下 Redis 的三种持久化机制,分别是 AOF(Append Only File) 日志和 RDB 快 阅读全文
posted @ 2023-08-20 08:21 古道轻风 阅读(198) 评论(0) 推荐(0) 编辑
摘要:这篇文章总结了常用的架构图类型,可以借鉴笔者提供的模板,快速地产出符合业务需要的架构图。 阅读全文
posted @ 2023-08-19 08:57 古道轻风 阅读(229) 评论(0) 推荐(0) 编辑
摘要:一、状态机简介 1.1 定义 我们先来给出状态机的基本定义。一句话: 状态机是有限状态自动机的简称,是现实事物运行规则抽象而成的一个数学模型。 先来解释什么是“状态”( State )。现实事物是有不同状态的,例如一个自动门,就有 open 和 closed 两种状态。我们通常所说的状态机是有限状态 阅读全文
posted @ 2023-08-18 08:27 古道轻风 阅读(1859) 评论(0) 推荐(1) 编辑
摘要:一、背景 会员系统是一种基础系统,跟公司所有业务线的下单主流程密切相关。如果会员系统出故障,会导致用户无法下单,影响范围是全公司所有业务线。所以,会员系统必须保证高性能、高可用,提供稳定、高效的基础服务。 随着同程和艺龙两家公司的合并,越来越多的系统需要打通同程APP、艺龙APP、同程微信小程序、艺 阅读全文
posted @ 2023-08-17 08:30 古道轻风 阅读(371) 评论(0) 推荐(0) 编辑
摘要:1.3 分层架构演进 1.3.1 传统四层架构 将领域模型和业务逻辑分离出来,并减少对基础设施、用户界面甚至应用层逻辑的依赖,因为它们不属业务逻辑。将一个夏杂的系统分为不同的层,每层都应该具有良好的内聚性,并且只依赖于比其自身更低的层。 传统分层架构的基础设施层位于底层,持久化和消息机制便位于该层。 阅读全文
posted @ 2023-08-16 08:31 古道轻风 阅读(221) 评论(0) 推荐(0) 编辑
摘要:Java Instrumentation 包 Java Instrumentation 概述 Java Instrumentation 这个技术看起来非常神秘,很少有书会详细介绍。但是有很多工具是基于 Instrumentation 来实现的: APM 产品: pinpoint、skywalking 阅读全文
posted @ 2023-08-15 08:37 古道轻风 阅读(178) 评论(0) 推荐(0) 编辑
摘要:一、背景 在《SRE: Google运维解密》一书中作者指出,监控系统需要能够有效的支持白盒监控和黑盒监控。黑盒监控只在某个问题目前正在发生,并且造成了某个现象时才会发出紧急警报。“白盒监控则大量依赖对系统内部信息的检测,如系统日志、抓取提供指标信息的 HTTP 节点等。白盒监控系统因此可以检测到即 阅读全文
posted @ 2023-08-14 08:32 古道轻风 阅读(1328) 评论(0) 推荐(0) 编辑
摘要:我们现在所有的协议、配置、数据库的表达都是以 protobuf 来进行承载的,所以我想深入总结一下 protobuf 这个协议,以免踩坑。 阅读全文
posted @ 2023-08-13 17:38 古道轻风 阅读(490) 评论(0) 推荐(0) 编辑
摘要:近日和一做乙方的老友相聚谈起了今年的企业数字化转型情况,都有一个整体的感受那就是:越来越看不懂了,有价无市,看似热闹,实则观望。 经历几年疫情,行业内都普遍认为企业领导对于数字化的重视程度在提高,毕竟数字化的技术能力及所取得的成果在这两年是有目共睹的。但热闹归热闹,喧嚣之后还是要回归价值的中心。于是 阅读全文
posted @ 2023-08-12 08:50 古道轻风 阅读(104) 评论(0) 推荐(0) 编辑
摘要:一起探索 Prompt Engineering 的奥秘,并学习如何用它来让 ChatGPT 发挥出最大的潜力。 阅读全文
posted @ 2023-08-11 08:37 古道轻风 阅读(269) 评论(0) 推荐(0) 编辑
摘要:根据 2023 年的 Stack Overflow 调研 (https://survey.stackoverflow.co/2023/) ,Postgres 已经取代 MySQL 成为最受敬仰和渴望 (the most admired, desired) 的数据库。 随着 Postgres 的发展势 阅读全文
posted @ 2023-08-10 13:51 古道轻风 阅读(7459) 评论(0) 推荐(0) 编辑
摘要:一、前言 项目管理是一个繁杂的过程,每个阶段需要涉及到不同人员、资源的协调配合。每个角色都有自己的定位和任务,为了紧密配合项目经理或无分配项目经理运行项目的场景下确保项目成员共同达成项目目标,不同的角色掌握相应的项目管理意识就尤为重要。 那么,测试角色作为项目交付的质量把控者,具备相应的项目管理意识 阅读全文
posted @ 2023-08-10 08:46 古道轻风 阅读(151) 评论(0) 推荐(0) 编辑
摘要:一、背景 配运平台组的快递订单履约中心(cp-eofc)及物流平台履约中心(jdl-uep-ofc)系统都使用了ShardingSphere生态的sharding-jdbc作为分库分表中间件, 整个集群采用只分库不分表的设计,共16个MYSQL实例,每个实例有32个库,集群共512个库. 当每增加一 阅读全文
posted @ 2023-08-09 08:27 古道轻风 阅读(366) 评论(0) 推荐(0) 编辑
摘要:本篇文章主要是对方案性能优化2.0中,所做的缓存设计的过程、方案、结果做一个总结。 一、前言 对于方案中心,核心业务场景之一是物流场景下的物流费用计算。而部分业务场景下,对于物流费用计算的性能有较高要求,如ICBU网站运费模板链路,通方案中心计算快递、海拼物流费用。在接入新的流量场景的背景下(ICB 阅读全文
posted @ 2023-08-08 08:29 古道轻风 阅读(119) 评论(0) 推荐(0) 编辑
摘要:1.背景 随着软件开发的迅速发展,测试数据管理变得越来越复杂。手动创建测试数据需要耗费大量时间和精力,同时容易出错。若缺乏测试数据,则会导致测试结果不够全面,甚至可能在线上环境中引发问题,从而给软件产品带来质量风险。因此,如何生成大量、真实、正确的测试数据成为了测试人员和研发人员所关心的重要问题。 阅读全文
posted @ 2023-08-07 08:33 古道轻风 阅读(74) 评论(0) 推荐(0) 编辑
摘要:随着硬件技术的飞速发展,多核处理器已经成为计算设备的标配,这使得开发人员需要掌握并发编程的知识和技巧,以充分发挥多核处理器的潜力。然而并发编程并非易事,它涉及到许多复杂的概念和原理。为了更好地理解并发编程的内在机制,需要深入研究内存模型及其在并发编程中的应用。本文将主要以 Java 内存模型来探讨并 阅读全文
posted @ 2023-08-06 08:04 古道轻风 阅读(83) 评论(0) 推荐(0) 编辑
摘要:分库分表是大型互联网应用经常采用的一种数据层优化方案,常见的分库分表中间件如 sharding-jdbc、mycat 都已经比较成熟,基本上可以应对我们一般的分库分表需求。 做过分库分表的同学应该知道,在给业务系统做分库分表改造过程中,难的不是如何使用这些组件进行分库分表,而是如何将非分库分表的系统平滑的升级成一个分库分表的系统,升级期间业务不可暂停,升级过程及升级后风险可控,这个过程就像是给飞行中的飞机更换引擎,处理不好会产生重大的业务事故。 去哪儿网机票辅营业务就经历过从主从读写分离系统升级到分库分表系统的过程,并在多次迭代过程中形成了一种与业务轻相关的平滑的分库分表方案,后续业务升级分库分表只需通过配置切换就可以将单库单表系统瞬切至分库分表系统。 阅读全文
posted @ 2023-08-05 08:25 古道轻风 阅读(387) 评论(0) 推荐(0) 编辑
摘要:一、问题系统介绍 监听商品变更MQ消息,查询商品最新的信息,调用BulkProcessor批量更新ES集群中的商品字段信息; 由于商品数据非常多,所以将商品数据存储到ES集群上,整个ES集群共划分了256个分片,并根据商品的三级类目ID进行分片路由。 比如一个SKU的商品名称发生变化,我们就会收到这 阅读全文
posted @ 2023-08-04 07:54 古道轻风 阅读(129) 评论(0) 推荐(0) 编辑
摘要:2020 年我有幸加入腾讯 tdmq 初创团队,当时 tdmq 还正在上云公测阶段,我第一次从一个使用工具的人转变成了开发工具的人, 这个过程使我沉淀了很多消息队列知识与设计艺术。 后来在业务中台的实践中,也频繁地使用到了 MQ,比如最常见的消息推送,异常信息的重试等等, 过程中也对消息队列有了更加 阅读全文
posted @ 2023-08-03 07:43 古道轻风 阅读(197) 评论(0) 推荐(0) 编辑
摘要:一、背景 魔笛活动平台要记录每个活动的用户行为数据,帮助客服、运营、产品、研发等快速处理客诉、解决线上问题并进行相关数据分析和报警。可以预见到需要存储和分析海量数据,预估至少几十亿甚至上百亿的数据量,所以需要选择一款能存储海量数据的数据库。由于是通过接收MQ存储或者API方式存储,所以对实时写入性能 阅读全文
posted @ 2023-08-02 07:28 古道轻风 阅读(784) 评论(0) 推荐(0) 编辑
摘要:一、前言 物流合约中心是京东物流合同管理的唯一入口。为商家提供合同的创建,盖章等能力,为不同业务条线提供合同的定制,归档,查询等功能。由于各个业务条线众多,为各个业务条线提供高可用查询能力是物流合约中心重中之重。同时计费系统在每个物流单结算时,都需要查询合约中心,确保商家签署的合同内容来保证计费的准 阅读全文
posted @ 2023-08-01 16:27 古道轻风 阅读(134) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示