IT技术博客大学习 共学习 共进步

技术文章精选

低噪声、高可扫读;标题、摘要、来源、标签一目了然。

最新文章

采集自各技术站点的近期文章。

IT 系统架构/ 2021-05-26 22:53:10 / 浏览 1,900

内存的惰性初始化

我们公司上海的工作室的一个 MMO 项目做服务器压力测试。谈及优化,涉及到服务器中使用的 C 模块。他们把同一套 C++ 加上 namespace 编译了很多份,供多个服务使用。我很好奇,一般来说,Lua 的 C 模块是可以供多个 vm 共用的,并不需要实际链接很多份。仔细探究发现,原来这个代码中用到了一些全局对象(singleton 模式)。 我本能的觉得全局对象的设计中透着糟糕的味道,在逐个分析每个全局对象的必要性时,发现了一个有趣的东西:寻路模块。 寻路模块本身的实现是没有持久状态的,场景地图的障碍信息是独立出去的静态不变数据,全局共享,这是合理的设计。但是一个无状态的 pathfinding 对象却被实例化了很多份,供不同的服务独立使用。

IT Android开发/ 2021-05-26 22:50:44 / 浏览 2,200

编译 RenderDoc 的安卓 apk(带interceptor-lib)

之前做过一次结果没有做笔记,今天又想用了,发现当时的结果全都删了,浪费了一些时间。在这里做个笔记 RenderDoc 的安卓 APK 编译严格讲没啥难的,就是啰嗦。而且如果需要好的 hook 能力的...

IT Linux/ 2021-05-26 22:50:13 / 浏览 1,860

Linux下解决同一硬盘因为连接设备不一样导致扇区大小不一致的问题

​我有块硬盘放进了我家云盒子里面,前段时间想把这个硬盘拿出来插到电脑上面拷贝数据,结果发现分区表完全是乱的,分区变小了很多,在电脑上调整了分区表以后大小对了,放回我家云盒子,分区表又变得不合法了。 仔细研究了一下,发现硬盘直接接在电脑上面时候,扇区大小是 512 字节的,但是接在我家云盒子上面,扇区的大小是 4096 字节。之前有人说有些 USB 硬盘线也会造成这样的效果,大概也是相同的情况。分区表里面的单位都是按照扇区大小来计算的,所以分区大小自然也就不一样了

IT 其他/ 2021-05-26 22:49:42 / 浏览 2,440

Golang socket 里面奇怪的 pipe 使用

​有个 golang 写的 proxy server, 大概日常 tcp 连接数两万多左右,结果某次在 /proc/pid/fd 下面一看,竟然有五到六万多文件,ls -l 一看,居然 socket 只有两万多,pipe 反而有三万多小四万,这就奇了怪了,哪儿来的这么多 pipe?

IT 其他/ 2021-05-26 22:46:03 / 浏览 1,760

Raft 为什么不能直接 commit 前任的日志?

有一些文章, 包括 Raft 协议的论文, 已经从反例的角度解释了为什么不允许 Leader 直接 commit 前任的日志, 而是必须追加本任期的一条日志, 以达到隐式地 commit 前任的日志. 我想从 Raft 的几项原则的角度, 在逻辑上解释这个问题。

IT 其他/ 2021-05-26 22:41:36 / 浏览 1,780

实现 go 的 goroutine 本地存储又一种方式

偶然发现 go 已经提供了一个用于 profile 的 pprof label,可以在 goroutine 中携带一些数据。不过这个东西既然是用于 pprof 的,随意往里塞太多东西显然也不适合,还会对 pprof 产生干扰。所以,想办法只用其中一个 label,用一些黑科技把一个 map 放了进去,将影响降到最小。同时,pprof 包中已经有一些基于 context 访问处理 label 的逻辑,所以还要做一些兼容处理,避免被其覆盖。

IT 系统架构/ 2021-05-24 22:46:03 / 浏览 2,460

用 Pomerium 来实现基于身份的访问控制

Google 在十年前提出了一套名为 BeyondCorp 的零信任网络的安全方案。这套方案想要完整地实现还是有一定门槛的,在这种模型下,企业内网不再作为一个安全边界存在,相反即使在内网进行的访问也必须进行和外网同样的鉴权与访问控制。最终的改造方向是内网不再是一个特权网络,每个终端上部署的客户端证书主要是作为一项身份信息来使用。

IT 奋斗/ 2021-05-24 22:45:21 / 浏览 1,680

在家工作一周年

人生如白驹过隙,早上翻看公司的 Calendar,今天竟然已经是在家工作的第365天了, 写这么一篇来稍微记录一下过去的一年。

IT JavaScript/ 2021-05-24 22:43:35 / 浏览 1,440

浅谈阿里前端的多样化

时间快速穿行13年到今天,仿佛在印证戏言成真:在互联网软件工业的疆域上,以ECMAScript 为圆点朝各个方向射出一箭,凡目力所及的范围内,皆似洒落上了这一箭之威。

IT MySQL/ 2021-05-17 23:26:41 / 浏览 1,640

修复 MySQL 编码问题

有个疑似 OCD 患者最近抽风升级了一下 MySQL 数据库,然后发现 blog 里面全都变成了乱码。 那乱码的模式一看就是把 utf8 直接扔进了 latin1 的数据库,一看 SHOW CREATE TABLE mt_entry 发现果然如此。

IT 其他/ 2021-04-26 07:49:50 / 浏览 1,820

如何迁移一个Git仓库

最近要把 Git 仓库迁移,看有些同学迁移中不太顺利,自己研究总结了下,分享给大家,本文将向大家介绍迁移 Git 仓库的的方法。

IT 奋斗/ 2021-04-24 23:53:46 / 浏览 1,620

面试的艺术 - 如何面试别人

工作这十年来,我面试了很多不同岗位的人。刚开始是面技术,后面是面产品,再后面是测试、运营、教研、设计。最近还面试了很多硬件相关岗位的人,比如 ID 设计师、结构设计师、质量工程师等。 我肯定不可能同时是这些岗位的专家,大部分情况下,我都是外行。但是我又要面试这些岗位,尽可能招聘到优秀的候选人。团队如果组建得不好,工作执行上肯定会受影响。 面试某种程度上是一门艺术,非常不标准化,又非常不确定,每个候选人都是一个独特的个体,需要你调整自己的问题,尽可能准确地判断出候选人的水平,这几乎不可能 100% 做到。 我是如何面试各种岗位的呢?以下是我的一些小结。

IT Linux/ 2021-04-24 14:50:10 / 浏览 1,720

SSH 密钥管理工具

我经常使用 SSH。我发现自己每天都要登录多个服务器和树莓派(与我位于同一房间,并接入互联网)。我有许多设备需要访问,并且获得访问权限的要求也不同,因此,除了使用各种 ssh / scp 命令选项之外,我还必须维护一个包含所有连接详细信息的配置文件。 随着时间的推移,我发现了一些省时的技巧和工具,你可能也会发现它们有用。

IT Linux/ 2021-02-13 23:31:24 / 浏览 2,540

Linux 黑话解释:什么是包管理器?它是如何工作的?

Linux 发行版之间有什么不同的要点之一是包管理。在这篇 Linux 黑话解释中,你将了解 Linux 中的打包和包管理器。你将了解什么是包,什么是包管理器,它们是如何工作的,以及有什么包管理器。

IT 系统运维/ 2021-02-13 23:28:58 / 浏览 2,260

AIOps在美团的探索与实践——故障发现篇

美团技术团队在行业、业务领域知识和运维领域的知识等方面有着长期的积累,已经沉淀出不少工具和产品,实现了自动化运维,同时在AIOps方面也有一些初步的成果。我们希望通过在AIOps上持续投入、迭代和钻研,将之前积累的行业、业务和运维领域的知识应用到AIOps中,从而能让AIOps为业务研发、产品和运营团队赋能,提高整个公司的生产效率。

IT 算法/ 2021-02-13 23:27:09 / 浏览 1,960

对话任务中的“语言-视觉”信息融合研究

一个好的视觉对话模型不仅需要理解来自视觉场景、自然语言对话两种模态的信息,还应遵循某种合理的策略,以尽快地实现目标。同时,目标导向的视觉对话任务具有较丰富的应用场景。例如智能助理、交互式拾取机器人,通过自然语言筛查大批量视觉媒体信息等。

IT 网络系统/ 2021-02-13 23:22:30 / 浏览 2,980

近场通信 vs. 低功耗蓝牙:如何抉择

NFC 用例大多与公司使用蓝牙的用例是分开的,对于少有的可以选择的重叠,相对的优势和劣势显而易见。NFC 距离很短、价格便宜、可即时连接以及数据转换率较低。BLE 的工作距离更远、传输速率更高,成本也更高,连接时还需要一点时间来进行“握手”。

IT Android开发/ 2020-02-11 10:07:27 / 浏览 2,040

关于 Android 系统流畅性的一些思考

最近一直想写一些关于 Android 系统流畅度的东西,因为流畅度这个东西,是消费者最直接能体验到的,再加上 Android 一直为人诟病的越用越卡顿,使得大家在提到安卓机的时候,都会有一丝阴影。这也是大部分人买手机首先会考虑 iPhone 的一个原因。 由于 Google 对 Android 持开放态度,各个手机厂商生产不同产品定位的机器,以及各个 Android 应用的质量良莠不齐,导致影响 Android 流畅度的因素非常非常多,并非大家简单的以为是系统没有优化好,很多时候你会发现,不同 SOC 但是相同的系统,体验完全就是两种。 所以我想和大家聊聊影响 Android 系统流畅性的一些原因,后续大家遇到卡顿的问题,也不会单纯把锅甩给系统,或许你卸载一个 App 就解决了呢.

IT Android开发/ 2020-02-07 14:25:16 / 浏览 2,140

Android 性能优化必知必会

做了这么久性能相关的工作,也接触了不少模块,说实话要做好性能这一块,真心不容易.为什么这么说? 是因为需要接触的知识实在是太多了, Android 是一个整体,牵一发而动全身,不是说只懂一个模块就可以做好 在学习的过程中,除了看源码,我还接触到了很多互联网上已有的知识,各位前辈们,将他们的知识和经验倾囊相授,让我少走了很多弯路. 我在自己的笔记里面存了很多很优秀的技术文章和技术文档,现在我决定将这些放到网上,让每一个想进入 Android 系统开发和优化这个领域的人,能通过阅读这篇文章,快速入门. 同时也算是我对知识的一个梳理,查漏补缺,终身学习