首页
学习
活动
专区
工具
TVP
发布

腾讯技术工程官方号的专栏

专栏作者
1083
文章
2379729
阅读量
882
订阅数
Golang与Java全方位对比总结
Golang: 编码风格及可见域规则严格且简单;Java: 来说层次接口清晰、规范,主要表现有以下这些。
腾讯技术工程官方号
2023-07-15
9440
七十年编程语言发展漫谈
作者:kevinyangli,腾讯 CSIG 客户端开发工程师 客户端开发在多种生态中生存就要熟练使用各种平台的环境和语言。回顾自己的职业生涯,涉及多个平台生态以及对应的原生编程语言。最近又用起了 Dart,经常在写代码的时候要想想自己是在什么平台,用什么 IDE,在写什么语言。这种情况持续了一段时间之后对编程语言有了一些想法和探索的欲望,本文不拘泥于某个语言或者特性,而是从语言的发展和历史的角度聊聊这个话题。 严谨起见,本文提到的“编程语言”指的是“第三代高级编程语言”。 让我们从时间维度入手来聊聊编程语
腾讯技术工程官方号
2023-02-16
8000
微服务接口设计原则
本文结合自身后台开发经验,从高可用、高性能、易维护和低风险(安全)角度出发,尝试总结业界常见微服务接口设计原则,帮助大家设计出优秀的微服务。 1.前言 微服务是一种系统架构风格,是 SOA(面向服务架构)的一种实践。微服务架构通过业务拆分实现服务组件化,通过组件组合快速开发系统,业务单一的服务组件又可以独立部署,使得整个系统变得清晰灵活: 原子服务 独立进程 隔离部署 去中心化服务治理 一个大型复杂的软件应用,都可以拆分成多个微服务。各个微服务可被独立部署,各个微服务之间是松耦合的。现如今后台服务大部分以微
腾讯技术工程官方号
2022-08-26
9450
微信搜一搜在线检索技术演进复盘
作者:kaelhua,腾讯 WXG 后台开发工程师 背景 2020 年下半年我们(搜一搜工程团队)开发了一个新的内存检索引擎 ZeroSearch,并开始对搜一搜背后的大量垂直搜索系统进行升级,随着升级过程中遇到的各种问题和新的需求,以及半年多来我们自身认识的提高,在线检索引擎在各个方面都取得了长足的进步。在本文中,我会对我们团队做过的一些主要事件进行经验的分享,全文较长,约 2 万 2 千字,内容涵盖评测体系介绍,倒排查找算法优化,线程模型优化,索引压缩原则,wand 检索实践,向量融合方案,以及性
腾讯技术工程官方号
2021-09-15
1.1K0
​网络 IO 演变发展过程和模型介绍
作者:jaydenwen,腾讯 pcg 后台开发工程师 在互联网中提起网络,我们都会避免不了讨论高并发、百万连接。而此处的百万连接的实现,脱离不了网络 IO 的选择,因此本文作为一篇个人学习的笔记,特此进行记录一下整个网络 IO 的发展演变过程。以及目前广泛使用的网络模型。 1.网络 IO 的发展 在本节内容中,我们将一步一步介绍网络 IO 的演变发展过程。介绍完发展过程后,再对网络 IO 中几组容易混淆的概念进行对比、分析。 1.1 网络 IO 的各个发展阶段 通常,我们在此讨论的网络 IO 一
腾讯技术工程官方号
2021-02-25
1.3K0
速抢!程序员专属红包封面
今天立春,明天小年,提前给大家拜个早年。 最近微信红包封面很火,明星的、企业的各式各样,不知道你有没有抢到。 作为程序员,怎么能没有自己的专属个性封面? 所以,这几天我们 腾讯技术工程 加班加点设计了一个程序员特色的红包封面,长下面这个样子: C++、Java、Python、Go,还有 PHP 等主流语言统统有上榜。 不知道你喜不喜欢,反正在腾讯内部是被程序员们抢疯了。 什么?没有你用的语言?留言区告诉我,看能不能让射鸡师加上。 重点来了! 这个红包封面是 1 块钱一个,不便宜,你以为会让你花钱来
腾讯技术工程官方号
2021-02-04
1.7K0
新一代搜索引擎项目 ZeroSearch 设计探索
本文作者:kaelhua,腾讯 WXG 后台开发工程师 背景 写这篇文章很大的原因在于不论是内网还是外网,分享内存检索引擎设计的资料都非常稀少,且存量的资料大多侧重于功能性的介绍。 另一方面,在磁盘检索引擎方面,由于开源搜索引擎 ES 的盛行,对于其使用的索引库 lucence 的分析资料反而较为丰富。 本文意在通过分享对于内存检索引擎的认识,核心的解决方案,和一些优化方向的思考等等,略微填补一下关于内存检索引擎设计的资料空缺。 需要说明的是本人进入搜索领域的时间并不长,尽管之前搭建过一些垂类搜索系统
腾讯技术工程官方号
2020-11-03
1.4K0
微信小游戏背后的技术优化
作者:chrongzhang,腾讯 WXG 客户端开发工程师 这是一篇介绍微信小游戏客户端底层,如果进行优化,可以让所有小游戏获得更好性能的文章。不是你想像的怎么优化某个小游戏的文章。来都来了,就了解一下吧:) 小游戏主要分为渲染和逻辑两部分。渲染优化能让渲染相关的指令(WebGL/GFX)得到更高效的执行,逻辑优化是让除渲染之外的代码也能更高效的执行,本篇主要讲述逻辑相关的优化。 基础功能优化 V8 微信小游戏是在 2017 年 12 月 28 日上线的,当时微信安卓客户端使用的 V8 版本还是
腾讯技术工程官方号
2020-08-17
2.1K1
Java内存泄漏、性能优化、宕机死锁的N种姿势
导读 本文介绍Java诸多优化实例:第一,排查堆上、堆外内存泄露;第二,使用arthas、jaeger、tcpdump、jstack做性能优化;第三,排查进程异常退出的原因,如被杀、System.exit、Java调用的C++发生Crash、Java内Crash;第四,排查死锁的原因,如log4j死锁、封装不严谨导致的死锁 内存泄漏 内存泄露在C++里排查很简单,用钩子函数勾住内存分配和释放函数malloc和free,统计哪些malloc的内存没有free,就可以找出内存泄露的源头。但在Java
腾讯技术工程官方号
2020-08-04
1.7K0
程序员财富自由了,居然会想做这些事!
假如,明天你财务自由了,你会想去做些什么? 最近,他二哥坐电梯发现身边的程序员们,除了交流各种棘手的Bug之外,还会讨论股市大盘涨了还是跌了,自己买的股票赚了还是亏了。生活不易,猿猿叹气,谁又没有做过一夜暴富的美梦呢? 待到春来时,洗手作羹汤。 抛弃java C,只把歌来唱。 这样美丽如画的场景在他二哥的梦里不知道出现了几回,然后就从梦里被自己无情地笑醒了。于是,他二哥也问了一圈程序员财富自由后想做什么。 有程序员说一直有个山区支教的梦想,想靠自己的力量建很多很多的希望小学。 有的程序员崇尚小隐隐于野,自
腾讯技术工程官方号
2020-07-27
4110
深入理解 Lua 虚拟机
作者:nicochen,腾讯 IEG 游戏开发工程师 本文从一个简单示例入手,详细讲解 Lua 字节码文件的存储结构及各字段含义,进而引出 Lua 虚拟机指令集和运行时的核心数据结构 Lua State,最后解释 Lua 虚拟机的 47 条指令如何在 Lua State 上运作的。 为了达到较高的执行效率,lua 代码并不是直接被 Lua 解释器解释执行,而是会先编译为字节码,然后再交给 lua 虚拟机去执行。lua 代码称为 chunk,编译成的字节码则称为二进制 chunk(Binary chun
腾讯技术工程官方号
2020-06-22
4K0
漫谈 C++ 的各种检查
以下文章来源于BOTManJL ,作者BOT Man What you don't use you don't pay for. (zero-overhead principle)      —— Bjarne Stroustrup 背景阅读 在学习了 Chromium/base 库(笔记)后,我体会到了一般人和 优秀工程师 的差距 —— 拥有较高的个人素质固然重要,但更重要的是能 降低开发门槛,让其他人更快的融入团队,一起协作(尤其像 Chromium 开源项目 由社区维护,开发者水平参差不齐)。
腾讯技术工程官方号
2019-10-15
2.3K0
深入 C++ 回调
许多面试官会问:你知道回调吗?你在写回调的时候遇到哪些坑?你知道对象生命周期管理吗?为什么这里会崩溃,那里会泄漏? 在设计 C++ 回调时,你是否想过:同步还是异步?回调时(弱引用)上下文是否会失效?一次还是多次?如何销毁/传递(强引用)上下文? 这篇文章给你详细解答! 本文深入分析 Chromium 的 Bind/Callback 机制,并讨论设计 C++ 回调时你可能不知道的一些问题。 背景阅读 如果你还不知道什么是 回调 (callback),欢迎阅读 如何浅显的解释回调函数 如果你还不知道什
腾讯技术工程官方号
2019-10-12
8.9K1
自动识别Android不合理的内存分配
写在前面 Android开发中我们常常会遇到不合理的内存分配导致的问题,或是频繁GC,或是OOM。按照常规的套路我们需要打开Android Studio录制内存分配或者dump内存,然后人工分析,逐个排查问题所在。这些方法是官方提供的能力,可以帮助我们排查问题,但难免有些繁琐,效率比较低。 如果可以自动识别出不合理的Java(含Kotlin)对象分配,这样繁琐的工作将会变得简单。 本文介绍了一种在Art虚拟机上实时记录对象分配的实现方案,基于此方案就可以实现不合理对象分配的自动化的识别。 常规
腾讯技术工程官方号
2019-09-05
5.1K0
如何让你的lint检查更加高效?
导语:在自定义lint规则的实践过程中,我们发现lint扫描的效率非常低,比如在项目中进行一次lint全量扫描,平均需要5分钟左右,而且这是在仅扫描自定义规则的情况下。我们将lint扫描集成到了流水线中,所有的MR操作都会触发扫描,并block住MR的流程。经常会发现这样一种情况,某个MR仅仅修改了一行代码,却仍要扫瞄整个项目,这会严重影响MR的效率。所以,大部分情况下并不需要进行lint的全量扫描,我们更关心的是新增代码是否存在问题。于是,我们需要探索一种lint增量扫描的解决方案。 前言 先来说说
腾讯技术工程官方号
2019-08-19
3.2K2
当网红程序员“他二哥”的挡脸贴纸摘下之后
大家好,我是本号背后最有技术含量的程序员“他二哥”,练习时长两年半,喜欢唱推送技术干货、跳展现鹅厂程序员文化、rap陪大家吃瓜唠嗑。 趁最近产品放年假,我用3个需求买通本号运营,终于排到今日的推送广告位官宣出道。 先表个态吧,哥能红靠的是脸吗? 明明是靠护发的功力和文末的福利。 二哥,你怎么穿着品如的衣服 爱我你怕了吗。 《护发十二时辰》,带你深入♂了解哥的魅力。 你都看到这里了,不给福利那我岂不是渣男。 下面有5道数学题,答对1道可获得1个他二哥表情包。 5道题全答对
腾讯技术工程官方号
2019-08-13
9330
窥见C++11智能指针
导语: C++指针的内存管理相信是大部分C++入门程序员的梦魇,受到Boost的启发,C++11标准推出了智能指针,让我们从指针的内存管理中释放出来,几乎消灭所有new和delete。既然智能指针如此强大,今天我们来一窥智能指针的原理以及在多线程操作中需要注意的细节。 智能指针的由来 在远古时代,C++使用了指针这把双刃剑,既可以让程序员精确地控制堆上每一块内存,也让程序更容易发生crash,大大增加了使用指针的技术门槛。因此,从C++98开始便推出了auto_ptr,对裸指针进行封装,让程序员无需手
腾讯技术工程官方号
2019-08-13
1.3K0
2019DTCC大会分享:分布式数据库全局读一致性
作者简介:李海翔,网名“那海蓝蓝”,腾讯金融云数据库技术专家。中国人民大学信息学院工程硕士企业导师。著有《数据库事务处理的艺术:事务管理和并发访问控制》、《数据库查询优化器的艺术:原理解析与SQL性能优化》、《大数据管理》,广受好评。
腾讯技术工程官方号
2019-05-16
1.7K0
没有更多了
社区活动
Python精品学习库
代码在线跑,知识轻松学
【玩转EdgeOne】征文进行中
限时免费体验,发文即有奖~
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档