【学习笔记】深入理解ThreadLocal
发表于 3年以前   ·   阅读量:440
用个通俗的例子讲一讲死锁
死锁是进程死锁的简称,是由Dijkstra于1965年研究银行家算法时首先提出来的。它是计算机系统乃至并发程序设计中最难处理的问题之一。实际上,死锁问题不仅在计算机系统中存在,在我们日常生活中它也广泛存在。这里,我想抛开语言,用一个例子来聊一聊死锁问题,聊一聊它是怎么产生的?应该怎么防止?
发表于 3年以前   ·   阅读量:410
Linux PCI驱动框架分析(三)
发表于 3年以前   ·   阅读量:504
Linux I/O 原理和 Zero-copy 技术全面揭秘
如今的网络应用早已从 CPU 密集型转向了 I/O 密集型,网络服务器大多是基于 C-S 模型,也即 客户端 - 服务端 模型,客户端需要和服务端进行大量的网络通信,这也决定了现代网络应用的性能瓶颈:I/O。
发表于 3年以前   ·   阅读量:423
简单理解 Kafka 的消息可靠性策略
部门的开发同学最近在开发一个活动的过程中,需要关注大量的应用后台逻辑,捕捉各种事件的触发。在设计时打算采用 kafka 消息队列进行业务逻辑的解耦,这样活动开发和后台开发同学的工作就分离开了。
发表于 3年以前   ·   阅读量:725
巧用 Protobuf 反射来优化代码,拒做 PB Boy
有些后台同学将自己称为 SQL Boy,因为负责的业务主要是对数据库进行增删改查。经常和 Proto 打交道的同学,是不是也会叫自己 PB Boy?因为大部分工作也是对 Proto 进行 SET 和 GET。面对大量重复且丑陋的代码,除了宏是否有更好的解决方法?本文结合 PB 反射给出了我在运营系统开发工作中的一些代码优化实践。
发表于 3年以前   ·   阅读量:492
Go netpoller 网络模型之源码全面解析
近两万字长文从 Linux 底层 Nonblocking I/O、 I/O multiplexing: select/epoll 以及 Go 源码全方位剖析 Go 语言的网络模型和底层实现;最后介绍分析当前主流的高性能开源网络库所使用的经典 Reactors 模式,以及如何基于此实现一个 (在某些特定场景下) 比 Go 原生网络库性能更好的网络库。可能是全网最详尽的 Go 网络底层剖析文章,一文带你完全吃透 Go 语言的网络编程底层原理。
发表于 3年以前   ·   阅读量:630
万字详文阐释程序员修炼之道
发表于 3年以前   ·   阅读量:484
14W 行代码量的前端页面长什么样
腾讯文档列表页在不久前经历了一次完全重构后,首屏速度其实已经是不错。但是我们仍然可以引入 SSR 来进一步加快速度。这篇文章就是用来记录和整理我最近实现 SSR 遇到的一些问题和思考。虽然其中有一些基础设施可能和腾讯或文档强相关,但是作为一篇涉及 Node、React 组件、性能、网络、docker 镜像 、云上部署、灰度和发布等内容的文章,仍然可以小小地作为参考或者相似需求的 Checklist。
发表于 3年以前   ·   阅读量:413
揭秘腾讯会议背后的视频编码“神器”
作为一款实时音视频通信产品,腾讯会议里面有海量的音视频数据需要进行实时传输,比如我们的摄像头画面,屏幕分享的数据等。这些数据量非常庞大,通常需要经过编码压缩再进行传输,那么腾讯会议里有哪些视频编码方面的”神器”呢?本文将一一为大家揭晓。
发表于 3年以前   ·   阅读量:556
腾讯天籁:音频联合信源信道编码技术白皮书
2020年疫情的突如其来,让数字通信成为了人与人沟通的重要手段;同时也对实时音视频通信(RTC)的稳定性和通讯效果提供了极大考验。由于业务量激增,在保障用户体验方面,RTC业务面临着诸多困难,包括但不限于通话质量、最小化卡顿、端到端延时、带宽成本等。在网络传输过程中,RTC方案,需要面对用户体验、运营成本的双重约束,挑战巨大。本白皮书,将聚焦RTC业务中网络抗性下的体验保障这一命题展开讨论。本文首先对相关技术的特点进行描述。然后,本文重点介绍腾讯天籁推出的音频联合信源信道编码方案。该方案已经在腾讯会议、TRTC等产品推广和部署;在保障用户体验同时,显著降低带宽和延时。
发表于 3年以前   ·   阅读量:629
2020 年大前端技术趋势解读
时光荏苒,非比寻常的一年即将过去。在这过去的一年中,与其说前端的平稳期即将到来,不如说前端反而进入了技术深水区。换言之,在全栈和多端的影响下,前端领域里“术业有专攻”的时代已经到来。
发表于 3年以前   ·   阅读量:398
“噪音猎人”
今天,给各位介绍一群“不务正业”的腾讯人,他们在江湖上被称作“噪音猎人”。 他们沉浸在实验室,也穿梭在菜市场、游荡在马路边。噪音是他们的猎物,被狙击、捕获、并销毁。高超的猎取技巧,正在让一群特殊的人告别噪音,让他们“听清”这个世界。
发表于 3年以前   ·   阅读量:497
大型 web 前端架构设计-面向抽象编程入门
当第一次看到“将抽象和具体实现分开”这句话的时候,可能很难明白它表达的是什么意思。什么是抽象,什么又是具体实现?为了理解这段话,我们耐下性子,先看一个假想的小例子,回忆下什么是面向具体实现编程。
发表于 3年以前   ·   阅读量:336
从单店到连锁:解耦方法的探索与实践
一个有线下门店业务的商家,在做业务扩张时,考虑到扩张的成本,会寻找一套可复制的经营方式,通过连锁的模式进行规模化扩张。
发表于 3年以前   ·   阅读量:507
语音识别流程梳理
发表于 3年以前   ·   阅读量:988
Linux内存、Swap、Cache、Buffer详细解析
发表于 3年以前   ·   阅读量:439
如何让你的代码评审人喜欢上你?
当人们谈论代码审查时,往往关注的是审查人员。但是编写代码的开发人员和阅读代码的人员对于评审来说同样重要。几乎没有任何关于如何准备代码进行评审的指导,所以作者常常由于完全的无知而把这个过程搞砸。
发表于 3年以前   ·   阅读量:456
GET 和 POST请求的本质区别是什么?
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。
发表于 3年以前   ·   阅读量:453
阿里“拆台”,中台不香了!!??
自从 2015 阿里巴巴提出中台概念和战略,“中台”这个技术术语逐渐火热起来。
发表于 3年以前   ·   阅读量:337
Redis 如何存储上亿级别的用户状态?
发表于 3年以前   ·   阅读量:352
响应视窗属性动画 | 让您的软键盘动起来 (二)
在上一篇文章中,我们介绍了所有关于 "边到边" (edge-to-edge) 的 API 改动: 让您的软键盘动起来。在这篇文章中,我们会继续跟进软键盘动画这一实际任务。为了展示可以实现的效果,您可以查看下面这个来自同一个应用的示例,左边的是运行在 Android 10 上,而右边的是运行在 Android 11 上 (动画效果是实际速度的 20%):
发表于 3年以前   ·   阅读量:521
Telegram附近的人功能存在安全风险,可被用于探测用户位置
近日,有安全研究人员指出,使用著名加密聊天软件Telegram的“附近的人”功能可以暴露用户的确切位置,且该功能长期存在。要知道,Telegram作为一款高度匿名软件,一旦暴露所处位置,可能会当场社会性死亡,目前,启用此功能的人可以看到是十几千米内的其他用户列表,从而可以添加附近的人进行聊天。
发表于 3年以前   ·   阅读量:753
一次性解决「虾米音乐」停服后的技术问题
虾米音乐停服的一大问题是用户何去何从,青小蛙总结了三篇文章,合并成一篇,一次性解决。
发表于 3年以前   ·   阅读量:664
如何写出优雅的API
在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,(题外话:前后端的工作职责越来越明确,现在的前端都称之为大前端,技术栈以及生态圈都已经非常成熟;以前后端人员瞧不起前端人员,那现在后端人员要重新认识一下前端,前端已经很成体系了)。
发表于 3年以前   ·   阅读量:377
node_modules 困境
Ryan 对于 node.js 的十大遗憾之一就是支持了 node_modules,node_modules 的设计虽然能满足大部分的场景,但是其仍然存在着种种缺陷,尤其在前端工程化领域,造成了不少的问题,本文总结下其存在的一些问题,和可能的改进方式
发表于 3年以前   ·   阅读量:310
DIY一个专属个人网盘
相信不少同学都曾想部署自己的个人网盘,又不想专门租一个服务器、操心环境搭建以及各种各样繁杂的运维工作。 现在,云托管的诞生,让个人网盘的搭建变得so easy,只需几步,“啪”的一下,就部署完成了,很快啊!
发表于 3年以前   ·   阅读量:421
前端 api 请求缓存方案
在开发 web 应用程序时,性能都是必不可少的话题。对于webpack打包的单页面应用程序而言,我们可以采用很多方式来对性能进行优化,比方说 tree-shaking、模块懒加载、利用 extrens 网络cdn 加速这些常规的优化。
发表于 4年以前   ·   阅读量:531
100款+CSS实现的定价表代码可免费下载使用
最近,在做一个服务器的网络销售平台,里面有个定价表的设计,感觉不是特别满意,所以就上网找了很多案例来看,然后我今天就从我找的所有案例里面挑选了比较精美的100款+定价表,来分享与各位一起学习,希望也有你喜欢的吧。
发表于 4年以前   ·   阅读量:592
【webpack 性能优化】编译速度从 50S 到 7S
随着项目不断发展壮大,组件数量开始变得越来越多,项目也开始变得庞大,webpack 编译的时间也会越来越久,我们现在的项目编译一次在 40s ——70s 之间,这是一个效率非常低下的操作。优化的手段有很多,之前项目原本已经做了很多,本文从缓存的角度进行优化讲解
发表于 4年以前   ·   阅读量:918
【JS】761- JS 和 CSS 交互的 5 种方法
随着浏览器不断的升级改进,CSS和JavaScript之间的界限越来越模糊。本来它们是负责着完全不同的功能,但最终,它们都属于前端技术领域,它们需要相互密切的合作。
发表于 4年以前   ·   阅读量:732
Promise 库 lie.js 源码解读
这篇文章是通过lie.js的源码一起去了解下如何实现Promise相关的规范。 首先是Promise的核心的构造函数的实现。
发表于 4年以前   ·   阅读量:469
大部分人都会做错的经典 JS 闭包面试题
这是一个我工作当中的遇到的一个问题,似乎很有趣,就当做了一道题去面试,发现几乎没人能全部答对并说出原因,遂拿出来聊一聊吧。
发表于 4年以前   ·   阅读量:564
开源了!谷歌内部代码评审规范完整版出炉!
近日,谷歌开源了其内部一直在使用的代码评审规范
发表于 4年以前   ·   阅读量:536
牛逼,一款纯前端类似 excel 的在线表格
Luckysheet,一款纯前端类似excel的在线表格,功能强大、配置简单、完全开源。
发表于 4年以前   ·   阅读量:839
前端赋能业务:Node实现自动化部署平台
是否有很多人跟我一样有这样的一个烦恼,每天有写不完的需求、改不完的BUG,每天撸着重复、繁琐的业务代码,担心着自己的技术成长。 其实换个角度,我们所学的所有前端技术都是服务于业务的,那我们为什么不想办法使用前端技术为业务做点东西?这样既能解决业务的困扰,也能让自己摆脱每天只能写重复繁琐代码的困扰。
发表于 4年以前   ·   阅读量:485
【ES】757- 10个 ES2020 新功能
好消息 - ES2020 新功能已经落地!这就意味着,现在对 ES2020 中 Javascript 的新增和改进要有一个完整的了解。让我们来看看都有哪些改变。
发表于 4年以前   ·   阅读量:602
深入理解浏览器的缓存机制
缓存可以说是性能优化中简单高效的一种优化方式了。一个优秀的缓存策略可以缩短网页请求资源的距离,减少延迟,并且由于缓存文件可以重复利用,还可以减少带宽,降低网络负荷。 对于一个数据请求来说,可以分为发起网络请求、后端处理、浏览器响应三个步骤。浏览器缓存可以帮助我们在第一和第三步骤中优化性能。比如说直接使用缓存而不发起请求,或者发起了请求但后端存储的数据和前端一致,那么就没有必要再将数据回传回来,这样就减少了响应数据。
发表于 4年以前   ·   阅读量:556
手写ConstraintLayout属性(一)
ConstraintLayout的实现基于食火鸟算法(Cassowary Algorithm),它是一个高效的约束解决方案。
发表于 4年以前   ·   阅读量:534
超清晰的 DNS 原理入门指南
DNS 是互联网核心协议之一。不管是上网浏览,还是编程开发,都需要了解一点它的知识。
发表于 4年以前   ·   阅读量:661
通用的底层埋点都是怎么做的?
想要在程序里监控数据库的操作耗时,想要在底层框架中自动传递链路跟踪信息,这些需求经常会碰到,特别是在构建基础框架的时候。 核心目标只有一个,那就是在底层封装好,不用上层使用人员关心。今天跟大家聊聊常用的底层扩展埋点方式是怎么处理的。
发表于 4年以前   ·   阅读量:806
如何有效地进行代码 Review?
研发都知道代码 Review 的重要性,在腾讯代码 Review 也越来越受大家重视,作为腾讯专有云平台研发的一员,我参与了大量的代码 Review,明显地感受到有效的代码 Review 不但能提高代码的质量,更能促进团队沟通协作,建立更高的工程质量标准,无论对个人还是团队都有着重要的价值。本文就为什么要做代码 Review 以及如何有效地做代码 Review 分享一下个人的看法。
发表于 4年以前   ·   阅读量:675
终于,SM2国密算法被Linux内核社区接受了!
国密,是国家商用密码的简称,由国家密码管理局制定算法标准,同时也制定了大量的产品及接口规范以及应用场景。
发表于 4年以前   ·   阅读量:855
不可错过的Webpack核心知识点
发表于 4年以前   ·   阅读量:619
微信小程序获取地理位置和地名的方法
本人最近在开发一款天气预报的微信小程序,在调用腾讯地图API进行逆地址解析获取详细地名时,发现其官方文档的描述模棱两可、网络上也没有搜到确实可行的方法。在经过对官方文档的逐句翻译和数次尝试之后,终于成功的获取到了地理位置和地名。特做此记录,以备不时之需。
发表于 4年以前   ·   阅读量:1016
hexo博客中如何插入图片
Hexo是一个静态的博客网站生成器,生成一个博客只需要分分钟的时间就能搞定。 Hexo的博文是支持Markdown格式的,发表一篇文章只需要简简单单的几个命令。 hexo new '文章'就会生成一个名为'文章'的md文件。
发表于 4年以前   ·   阅读量:688
2020 最受 IT 公司欢迎的 30 款开源软件
Hello,大家好,我是hub哥,明天就是咱们程序员的节日了—1024,这里祝大家生活愉快!
发表于 4年以前   ·   阅读量:624
TypeScript: 请停止使用 any
当我们开发 TypeScript 代码时,很可能会遇到 any 关键字。我们看到的大多数用法都表明我们正在处理 TypeScript 中的基本类型。在文档中我们可能会找到:
发表于 4年以前   ·   阅读量:691
再谈指针:大佬给你拨开 C 指针的云雾
发表于 4年以前   ·   阅读量:566
给新手的 11 个 Docker 免费上手项目
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。给新手们推荐12个极易上手的Docker实践项目
发表于 4年以前   ·   阅读量:827
 热门专题
互联网深度分析
根据当前互联网热点,深度分析事件背后的原因。
语言规范指南
c/c++,Objective-C,Python,Golang等语言的代码规范指南,团队合作更需要代码规范。
任正非讲话合集
收集了历年来,任正非在各个内部会议上的讲话。
查看所有专题
 哈喽比特公众号
 热门标签
# Docker #

文章:109,阅读量:78.1k

# 东方甄选小作文事件 #

文章:13,阅读量:13.7k

# 裁员 #

文章:1328,阅读量:909.9k

# WebAssembty #

文章:25,阅读量:27.4k

# Python #

文章:5587,阅读量:4.6m

# 人工智能(AI) #

文章:7123,阅读量:4.9m

# JavaScript #

文章:1228,阅读量:984k

# Rust #

文章:269,阅读量:185.6k

# 华为2023年9月25日新品发布会 #

文章:8,阅读量:9.3k

# 前端面试宝典 #

文章:9,阅读量:6.2k

查看所有标签