精品阅读

一本免费的深度学习漫画书

来源:开源最前线(ID:OpenSourceTop)前不久,李飞飞在twitter发推文表示:哇!没想到会在万圣节看到这个到底是什么东西让李飞飞如此兴奋呢?猿妹点进去一看,原来是有人将李飞飞塑造成一个超级英雄的漫画角色,以此讲述一个Superwoman通过展示自己的AI超能力拯救世界的故事。在这本漫画故事里,除了李飞飞这个英雄人物之外,还有吴恩达、DavidSilver等目前已经完成第一卷:机器学

搞懂异地多活,看这篇就够了

阅读本文大约需要20分钟。你好,我是Kaito。在软件开发领域,「异地多活」是分布式系统架构设计的一座高峰,很多人经常听过它,但很少人理解其中的原理。异地多活到底是什么?为什么需要异地多活?它到底解决了什么问题?究竟是怎么解决的?这些疑问,想必是每个程序看到异地多活这个名词时,都想要搞明白的问题。有幸,我曾经深度参与过一个中等互联网公司,建设异地多活系统的设计与实施过程。所以今天,我就来和你聊一聊

腾讯开源的云原生多运行时微服务框架

以下内容选自「码农周刊VIP会员」圈子,每日更新,精彩不断。Femas是腾讯云微服务平台TSF的开源产品形态,聚焦微服务运行时,提供给多框架统一服务发现、南北及东西流量治理、服务可观测、配置管理等一站式微服务管控能力,解决企业微服务架构转型中异构框架复用难、激增流量管控难、排障恢复耗时长等核心问题。

从Golang调度器的作者视角探究其设计之道!

导语 | Golang核心开发人员、goroutine调度的设计者DmitryVyukov,在2019年的一个talk里深入浅出地阐述了goroutine调度的设计思想以及一些优化的细节。本文是笔者结合自身经验和认知的一点观后感,采用从零开始层层递进的方法,总结剖析了其背后的软件设计思想,希望对读者更好地理解goroutine调度GMP模型会有所帮助。前言视频地址:https:

京东开源的轻量级移动端 Vue2Vue3 组件库

以下内容选自「码农周刊VIP会员」圈子,每日更新,精彩不断。京东风格的轻量级移动端Vue2、Vue3组件库,支持一套代码生成H5和小程序。特性70+高质量组件(3.0持续开发中),覆盖移动端主流场景支持小程序开发基于京东App10.0视觉规范支持按需引用详尽的文档和示例支持TypeScript支持服务端渲染(测试阶段)支持定制主题单元测试覆盖(3.0开发中),保障稳定性提供Sketch设计资源

WebSocket 基础与应用系列—— Engine.IO 原理了解

packetpacketpacketmessagepacketpacketpacketpacketpacketpacketpacketid>[<data>]example:4hello对于二进制数据,不包括数据包类型(packettype),因为只有“message”数据包类型可以包括二进制数据。packettype0open新传输通道建立的时候,从服务端发送Sentfromth

TypeScript 官方:JavaScript 中直接支持类型!

TypeScript团队在深夜突然发了一条推,神秘兮兮说:“如果我们可以直接在JavaScript中支持类型,会怎么样?”。他们在评论区说:“类型作为注释”的提案意味着浏览器可以直接运行通过了TS检查的代码(即使它们没有做任何类型检查)。这意味着更好的编辑体验和更快的迭代。这是一个很让人兴奋的想法,接下来我们具体看看这个提案的内容。这是一个新的stage0的语法提案,暂时还未提交给TC39。git

基于 Observable 构建前端防腐策略

fromFetch(res.json()));fromFetch(res.json()));lastValueFrom(forkJoin([getMemoryFreeObservable(),getMemoryUsageObservable()]).pipe(map(+((usage/(usage+free))*));lastValueFrom(getMemoryFreeObservable())

发现自己的代码在CSDN上被西南交通的学生售卖是一种什么体验?

导语事情是这样子的,前段时间发现自己的代码被CSDN上一个备注自己是西南交通大学的学生通过付费专栏的形式售卖,在CSDN客服承诺调查之后几个月仍然了无音讯的情况下,我决定自己动手来吐槽一下。不知道读者里有没有CSDN的客服或者西南交通大学的学生,如果有,希望你们理解一下,我的吐槽只针对事件当事人。吐槽一下前不久我在CSDN上偶然看到了这么一个付费专栏(看到这个专栏的原因是因为专栏作者在知乎上的文章

Spark的两种核心Shuffle详解(面试常问,工作常用)

方法判断是否需要回退到Hash风格的Shuffle实现机制,当该方法返回的条件不满足时,则通过SortShuffleManager.canUseSerializedShuffle方法判断是否需要采用基于TungstenSortShuffle实现机制,而当这两个方法返回都为false,即都不满足对应的条件时,会自动采用普通运行机制。因此,当设置了spark.shuffle.manager=tungs

Android 13 第一个开发者预览版本来了,网友直呼:Android 12 还没透

2月10日,Google宣布Android13首个预览版面向开发者开放,此版本重点聚焦隐私和安全、提供开发者生产力、应用兼容性,并保持与OpenJDK11更新一致、提供主题图标、带来新的照片选择器等功能。接下来,让我们一起来看看最新版本的Android13到底有什么样的改变吧!网络大数据时代,隐私与安全对于各大公司及用户而言至关重要,上到芯片、系统,下到应用程序,每一角落的安全及隐私保护都不容忽视

2万字 + 50 张图,细说 JVM 内存分布内存对齐压缩指针!

今天为大家带来一篇2万字的硬核技术文章。本文我们将从计算机组成原理的角度详细阐述对象在JVM内存中是如何布局的,以及什么是内存对齐,如果我们头比较铁,就是不进行内存对齐会造成什么样的后果,最后引出压缩指针的原理和应用。同时我们还介绍了在高并发场景下,FalseSharing产生的原因以及带来的性能影响。相信大家看完本文后,一定会收获很多,话不多说,下面我们正式开始本文的内容~~本文概要.png在我

从MVC到DDD的架构演进

点击上方蓝色字体,选择“设为星标”回复”学习资料“获取学习宝典DDD这几年越来越火,资料也很多,大部分的资料都偏向于理论介绍,有给出的代码与传统MVC的三层架构差异较大,再加上大量的新概念很容易让初学者望而却步。本文从MVC架构角度来讲解如何演进到DDD架构。— 1 —从DDD的角度看MVC架构的问题代码角度:瘦实体模型:只起到数据类的作用,业务逻辑散落到service,可维护

整洁架构之道--三种经典的编程范式

本文是《CleanArchitecture》--整洁架构之道中关于编程范式相关章节的笔记,首发于公众号「Go招聘」这和软件架构的三大关注重点不谋而合:功能性、组件独立性以及数据管理。的方式。回答此问题的同时另外还会搬出这三个词语:封装(encapsulation)、继承(inheritance)、多态(polymorphism)。其隐含意思就是说面向对象编程是这三项的有机组合,或者任何一种支持面向

使用 Node.js 操作 Docker

Docker=docker=Docker();opts=OpenStdin:;container_opts=;container=docker.createContainer(opts);stream=container.attach(container_opts);process.stdin.pipe(stream);stream.pipe(process.stdout);container.s

快手大数据统一安全平台

关注快手大数据 获取大数据资讯导读本文主要介绍快手大数据统一安全平台。本文源自马玲玲老师在『快手大数据|数据中台技术交流会』上的演讲,相关视频回放可用快手APP搜索“快手大数据”观看。本文会分四个部分展开介绍。首先,对相关的背景进行介绍,包括快手大数据安全解决的问题、比较经典的数据安全理论和快手大数据安全遇到的挑战;其次,会重点介绍我们的解决方案,包括具体的落地路径、平台的发展历程和架构

Go中fuzzing系统的原理分析

和煎架写的这篇我要提高Go程序健壮性,Fuzzing来了!。今天小土给大家带来一篇关于模糊测试原理的文章。本文由小土翻译自InternalsofGo\'snewfuzzingsystem[1],翻译不当之处,烦请指出。Go1.18很快就要发布了,希望在几周后。这是一个巨大的版本,有很多值得期待的东西,但原生模糊测试在我心中有一个特殊的位置。(当然我是超级偏心的:在我离开谷歌之前,我和KatieHo

领域驱动设计(DDD)中简单易用的10种技巧

领域驱动设计(DDD),因非常适合与微服务进行配合而闻名,因《领域驱动设计》那本书的难懂而让人望而却步。其实《领域驱动设计》这本书讲的是:以领域为核心,在代码中体现领域的思想,开发人员和领域专家要紧密沟通。这也侧面给出了公司划分组织结构的建议。开始之前,我要声明一点:领域驱动设计不是万能药,它适合于实时系统,而对于分析汇总的场景,则不必使用领域驱动设计。技术是在进步的,现在大家对领域驱动设计抽象的

Go 要违背初心吗?新提案:手动管理内存

大家好,我是煎鱼。前段SZ疫情严重的很,公司所在的大厦都被封了2~3次...在家中搬砖的我,听说Go要变成C++了?大为震惊。方法分配arena内存,再调用Free方法进行释放。当然,一般提案中所提到的arena并不会在一门带垃圾回收的编程语言中实现。因为会操作到内存就有可能会不安全,不符合带垃圾回收的语言定义。该库底层采取了动态检查来确保arena释放内存的操作是安全的。若出现异常情况,就会终止

如何调试大型 Linux C/C++ 项目?

作为接触C++开发十年的老鸟,我用两个案例来介绍下如何调试大型C++项目吧。一、调试Redis将Redis源码从官网下载下来以后,使用喜欢的代码阅读器进行管理(例如VSCode、CLion、XCode等)。我这里使用的是VisualStudio,如下图所示:在大致了解了Redis有哪些代码模块以后,我们把代码拷贝到Linux平台,然后编译并使用GDB调试器跑起来。如下图所示:然后按CTRL+C将G