浅谈从浏览器输入URL到页面渲染的流程

4 月 10 日
阅读 5 分钟
238
浏览器输入URL到页面渲染完成,这个过程大致可分为两个阶段:网络通信和页面渲染。一、网络通信互联网内各网络间设备的通信遵循TCP/IP协议,利用TCP/IP协议进行网络通信时,会通过分层与对方通信。数据传输的过程:由应用层产生数据后,经过传输层的分段处理(添加TCP或UDP包头)、网络层(添加IP地址信息)、数据链路层...

无用代码扫描组件设计

4 月 10 日
阅读 3 分钟
258
1、现状痛点系统越来越臃肿,开发过程中可能产生的无用代码增加了系统维护成本。2、设计思路 2.1、静态代码扫描方案 本方案解决静态代码下无调用方法扫描,通过ASTParser对静态文件进行扫描分析,获取代码块来判断调用关系。 基本步骤及思路 (1)载入本地磁盘项目 (2)循环使用ASTParser解析每个java文件的方法块,把...

计算机网络协议介绍

4 月 9 日
阅读 6 分钟
187
一、从一个请求来看网络分层原理1.1 复杂的网络以下为一次请求过程中可能遇到的问题,预示着网络的复杂性。1.2 如何简化复杂度为了简化网络的复杂度,网络通信的不同方面被分解为多层次结构,每一层只与紧挨着的上层或者下层进行交互,将网络分层,这样就可以修改,甚至替换某一层的软件,只要层与层之间的接口保持不...

dubbo3.0 服务导入导出原理

4 月 9 日
阅读 26 分钟
274
不管是服务导出还是服务引入,都发生在应用启动过程中,比如:在启动类上加上 @EnableDubbo 时,该注解上有一个 @DubboComponentScan 注解,@DubboComponentScan 注解 Import 了一个 DubboComponentScanRegistrar,DubboComponentScanRegistrar 中会调用 DubboSpringInitializer.initialize(),该方法中会注册一个 Dubbo...

【稳定性】浅谈团队如何做好系统稳定性

4 月 9 日
阅读 4 分钟
337
人为因素的根源一方面是专业能力不足,经验不足,另一方面很多都是无心之失,所以需要通过流程、规范来保住“底线”,减少人为因素导致的故障。大家严格遵守咱们的各种规范即可(CodeReview规范、发布xbp流程、上线后doublecheck机制)。通过流程和doublecheck机制确保每个人发布不会太差,解决人的因素。永远要记住团队的...

jar包冲突组建设计书

4 月 8 日
阅读 11 分钟
238
实际开发过程中,使用maven管理jar给我们开发带来了很多便利,不需要自己一个一个的jar包下载了,只需要配置个pom配置文件就可以了,写上对应坐标和仓库地址就可以了。但是jar冲突没问题没有解决,有冲突的jar包maven不会给我们检查出来还是会根据我们的配置进行下载,等到编译才会报错,并且报错信息很晦涩,需要面向百...

一次接口的性能优化之旅

4 月 8 日
阅读 3 分钟
294
在项目开发过程中,我们经常会遇到接口响应慢的问题。这不仅影响了用户体验,还可能降低了系统的吞吐量。为了提高接口性能,我们需要对整个系统进行全面的优化,包括代码层面、数据库、缓存、异步处理等方面。本文将分享一个接口性能优化之旅,希望能帮助大家掌握Pfinder使用、JSF异步调用等优化技巧,提升接口性能和定...

Sql优化之回表

4 月 8 日
阅读 6 分钟
185
MySQL的性能是大家在使用时十分关心的问题,比如在高并发访问时,并且有慢sql存在的情况下,MySQL的性能会明显下降,这会导致数据库响应时间变慢,甚至导致数据库宕机。那么为了避免Mysql性能问题,比较常用的方式创建适当的索引,提升sql语句的执行效率。而本文简单介绍一下和索引有关的回表,从实际案例出发,讲讲什么...

Vision Pro开发实践(一)

4 月 7 日
阅读 8 分钟
431
Vision Pro是苹果公司的首款头戴式“空间计算”显示设备,于2023年6月6日在“WWDC2023”正式发布,同时推出的还有专为Vision Pro打造的操作系统平台visionOS,以及一整套“新的”开发工具,之所以打引号,是因为用于Vision Pro开发的工具和编程语言并没有多少改变,而更多的是需要开发者的开发思维变化。

马斯克开源大模型Grok-1,手把手教你如何使用

4 月 7 日
阅读 3 分钟
1.3k
马斯克一直在指责OpenAI没有开源,终于开源自家的大模型Grok-1,也把压力给到了OpenAIGitHub链接:[链接] 居然短短一天就有29k的star!Grok-1的模型参数:•Parameters: 314B•Architecture: Mixture of 8 Experts (MoE)•Experts Utilization: 2 experts used per token•Layers: 64•Attention Heads: 48 for queries, ...

代码手术刀—自定义你的代码重构工具

4 月 7 日
阅读 5 分钟
280
笔者近日在做代码仓库的存量代码缩减工作,首先考虑的是基于静态扫描的缩减,尝试使用了很多工具来对代码进行优化,例如PMD、IDEA自带的inspect功能、findBugs等。但是无一例外,要么过于“保守”,只给出扫描结果,但是无法实现一键优化,要么直接就是有bug(这里特指IDEA2023.1.5专业版-inspect功能扫描problems清单里的...

京东中台化底层支撑框架技术分析及随想

4 月 3 日
阅读 14 分钟
323
导读:近几年,除AIGC外,软件领域相关比较大的变化,就是各相关业务领域开始如火如荼地建设中台和去中台化了。本文不探讨中台对公司组织架构涉及的变化和影响,只是从中台化演进的思路,及使用的底层支撑技术框架进行分析探讨,重点对中台及前台协作涉及到的扩展点及热部署包的底层技术细节,结合京东实际落地情况,对...

Web Components实践:如何搭建一个框架无关的AI组件库

4 月 3 日
阅读 7 分钟
1k
Web Components是一种用于构建可重用的Web元素的技术。它允许开发者创建自定义的HTML元素,这些元素可以在不同的Web应用程序中重复使用,并且具有自己的样式、行为和功能。

向量数据库落地实践

4 月 3 日
阅读 7 分钟
256
一、前言本文基于京东内部向量数据库vearch进行实践。Vearch 是对大规模深度学习向量进行高性能相似搜索的弹性分布式系统。详见: [链接]二、探索初次认识向量数据库,一脸懵逼? 向量是什么?如何将文本转换为向量?如何确定维度?如何定义表结构?如何选择索引方式,建表参数如何配置?检索参数如何配置?分片数副...

京东为openKylin新增SBOM利器,保障软件供应链安全和可追溯性!

4 月 2 日
阅读 2 分钟
162
京东作为openKylin(开放麒麟)社区理事单位,在加入社区后,京东发起成立了SBOM SIG组。SBOM SIG组负责推动和促进软件物料清单(SBOM)的发展和工具建设。近日,SBOM工具已在openKylin社区完成开源,保障openKylin相关软件供应链安全和可追溯性。

京东云开源软件治理工具SSCM强势来袭!免费试用

4 月 2 日
阅读 2 分钟
247
•根据奇安信的2023中国软件供应链安全分析报告,被分析的2631个国内企业软件项目中,100% 使用了开源软件,平均每个项目使用155个。

京东云“智能编码”上线了!免费试用

4 月 2 日
阅读 2 分钟
225
智能编码JoyCoder 是一款基于大语言模型、适配多种 IDE 的智能编程助手,可以为研发人员提供代码预测续写、UI 草图转前端代码、生成单元测试、代码安全漏洞自动识别及修复、一键生成接口文档、AI 智能问答等功能。助力开发者高效、流畅、智能化地编程!

技术分享-日志链路追踪

4 月 1 日
阅读 9 分钟
258
为提高排查问题的效率,在多个系统及应用内根据 统一的TraceId 查找同一次请求链路上的日志,根据日志快速定位问题,同时需对业务代码无侵入,特别是在高频请求下,也可以方便的搜索此次请求的日志内容。

9n-triton部署bert模型实战经验

4 月 1 日
阅读 4 分钟
381
对于算法工程师来说,通常采用python语言来作为工作语言,但是直接用python部署线上服务性能很差。这个问题困扰了我很久,为了缓解深度学习模型工程落地性能问题,探索了Nvidia提供的triton部署框架,并在九数中台上完成线上部署,发现性能提升近337%!! (原服务单次访问模型推理时间175ms左右,同模型框架单次访问推...

五星门店小程序性能优化实践

4 月 1 日
阅读 7 分钟
188
五星门店小程序主要服务于五星线下门店交易场景,目前已有79个城市267家门店(包括超级体验店、城旗店、京东Mall等)在使用,用户可以通过小程序便捷地查看和购买门店的商品。五星门店小程序已实现基于Taro跨端解决方案的一码多端能力,一套代码可以在京东App以及微信小程序中运行,大幅提升了研发效率,可以更快更好地...

移动端提高pdf预览清晰度

3 月 29 日
阅读 4 分钟
343
移动端预览PDF文件,通用的解决方案是使用vue-pdf插件,其内置pdf.js,原理是基于 HTML5 的 <pdf> 标签,通过将 PDF 文件转换为图片或<canvas>来实现对 PDF 文件的预览,插件好使没毛病😆,但是如果我们的需求是要在移动端预览内容很密集的文件时,预览效果就不理想了,比如这样:

代码质量与技术债系列分享之一 - 如何做好 Code Review

3 月 29 日
阅读 17 分钟
502
CR: Code Review CR:代码审查 CL: Stands for "changelist", which means one self-contained change that has been submitted to version control or which is undergoing code review. Other organizations often call this a "change", "patch", or "pull-request". CL:代表“变更列表”,表示已提交到版本控制或正在...

移动端提高pdf预览清晰度

3 月 29 日
阅读 4 分钟
272
移动端预览PDF文件,通用的解决方案是使用vue-pdf插件,其内置pdf.js,原理是基于 HTML5 的 <pdf> 标签,通过将 PDF 文件转换为图片或<canvas>来实现对 PDF 文件的预览,插件好使没毛病😆,但是如果我们的需求是要在移动端预览内容很密集的文件时,预览效果就不理想了,比如这样:

【京东云新品发布月刊】2024年3月产品动态

3 月 28 日
阅读 1 分钟
177
言犀模型服务平台致力于为开发者提供AI原生应用开发的全链路服务,内置丰富的应用插件,提供便捷的集成方式,结合企业专属数据和API,助力企业高效完成大模型应用构建。

java线程池原理浅析

3 月 28 日
阅读 3 分钟
315
问题与解决:问题:查询大数据量的时候,例如一次返回50w数据量的包,循环去查询发现读取会超时。解决方案:经过思考采用多线程去分页查询。使用线程池创建多个线程去查询分页后的数据最后汇总一下,解决了一次查询大量数据返回超时的问题。一次查询现状:多线程分页查询改造图: 效果:使用多线程去查询查询时间...

IO模型介绍(select、poll、epoll)

3 月 28 日
阅读 6 分钟
260
我们如果需要对磁盘进行读取或者写入数据的时候必须得有主体去操作,这个主体就是应用程序。 应用程序是不能直接进行一些读写操作(IO)的,因为用户可能会利用此程序直接或者间接的对计算机造成破坏,只能交给底层软件—操作系统.也就是说应用程序想要对磁盘进行读取或者写入数据,只能通过操作系统对上层开放的API来进行。在...

"线程池中线程异常后:销毁还是复用?"

3 月 28 日
阅读 5 分钟
445
需要说明,本文的线程池都是java.util.concurrent.ExecutorService线程池,本文将围绕验证,阅读源码俩方面来解析这个问题。

大文件上传实践分享

3 月 27 日
阅读 5 分钟
551
一、方案背景:在此前的项目中有个需求是用户需要通过前端页面上传大约1.5G的压缩包,存储到OSS,后提供给其他用户下载。于是我开始了大文件上传方案的探索。本文主要探究的是前端技术实现,后端给予相应的支持。二、 原理探索之路2.1大文件上传想要实现的目标在此项目中,我想实现的目标是能够快速的将1.5G的文件上传到...

学算法要读《算法导论》吗?

3 月 27 日
阅读 3 分钟
332
这篇文章是我学习算法的心得,希望它能够给一些将要学习算法且准备要读大部头算法书籍的朋友一些参考,节省一些时间,也为了给经典的“黑皮书”祛魅,我觉得这些书籍在大部分互联网从业者心中已经不再是进步的阶梯,而是恐惧的阴影了,因为当一些学习路线中列出这些书目时,评论区多是调侃少是交流和讨论。在这之前我也这...

基于vite多页面实现多端同构开发和部署

3 月 27 日
阅读 4 分钟
918
背景由于在开发前端项目中,后台管理端和用户端存在多个模块和页面逻辑可以复用,管理模块和用户端渲染模块使用同一套状态管理机制,只是在管理端和用户端的入口和路由模块不同,为了能够在开发时同时修改管理端和用户端共用模块,不用多项目工程修改和发布,我们基于vite多页面的基础上实现了多端同构开发和部署。多端...