SKYSUKA's Studio.

Tech见闻分享2月刊

字数统计: 2.5k阅读时长: 8 min
2020/03/01 Share

记录在软件开发、算法开发上会使用到的一些工具、技术或入门向的文章
提示:点击标题可继续浏览详细内容

开发工具

hello.js - A client-side JavaScript SDK for authenticating with OAuth2

A client-side JavaScript SDK for authenticating with OAuth2 (and OAuth1 with a oauth proxy) web services and querying their REST APIs. HelloJS standardizes paths and responses to common APIs like Google Data Services, Facebook Graph and Windows Live Connect. It’s modular, so that list is growing. No more spaghetti code!

deploy-your-own-saas

List of “only yours” cloud services for everyday needs

mac微信免登

真的是非常实用的一个插件了。包含了:

  • 免认证登录
  • 实用系统浏览器
  • 开启防撤回

[lockdown]

插件Lockdown,只加工处理视频中的一帧,从而搞定所有帧,是一个图像检查、追踪、合成、视频标注的有趣应用,目前免费。打码。

Playwright - 类似于Puppeteer,但更全平台

Playwright is a Node library to automate the Chromium, WebKit and Firefox browsers with a single API. It enables cross-browser web automation that is ever-green, capable, reliable and fast.

技术文章

肖仰华 | 大规模、高质量的金融知识图谱,如何自动化构建?

金融领域数据不足的场景,往往专家知识丰富,结构化数据不多的场景,往往文本数据丰富,这些都是金融知识图谱的机遇。再加上目前深度模型丰富,各种方法并存,互联网上已经存在一些高质量图谱可以充分利用,都为图谱的构建提供了有利条件。

知识图谱的构建,除了从文本里挖,或者从已有的关系表格里转换,还可以通过深挖用户的行为数据来构建。诸如电商、搜索等场景,有丰富的用户行为数据,这些搜索日志可以很好地帮助我们构建词汇之间的一些关系,比如搜索“Fintech”的人总是会点开金融科技相关的文档,那么“Fintech”很有可能就是“金融科技”的同义词。

在数据样本标注方面,如果既有专家构建的知识体系,也有自动构建的知识体系,利用专家构建的小规模知识体系作为数据驱动的种子样本,是有效降低人工标注的重要思路之一,可以降低模型构建的代价。

基于浏览器的实时构建探索之路

(1.6w字)浏览器与前端性能灵魂之问

面试官,不要再问我三次握手和四次挥手

反向代理、负载均衡!优秀的 Nginx 是如何做到的?

Apache 的发展时期很长,而且是毫无争议的世界第一大服务器。它有着很多优点:稳定、开源、跨平台等等。它出现的时间太长了,它兴起的年代,互联网产业远远比不上现在。所以它被设计为一个重量级的。它不支持高并发的服务器。在 Apache 上运行数以万计的并发访问,会导致服务器消耗大量内存。操作系统对其进行进程或线程间的切换也消耗了大量的 CPU 资源,导致 HTTP 请求的平均响应速度降低。这些都决定了 Apache 不可能成为高性能 Web 服务器,轻量级高并发服务器 Nginx 就应运而生了。

“12306”的架构到底有多牛逼?

Chrome DevTools 你还只会console.log吗 ?

  • 使用 console.table

  • 复制 copy: copy($_)

  • 耗时监控
1
2
console.time('timer1')
console.timeEnd('timer1')
  • 分析程序性能

在 DevTools 窗口控制台中,调用 console.profile()开启一个 JavaScript CPU 分析器.结束分析器直接调用 console.profileEnd().

  • debugger 断点

有时候我们需要打断点进行单步调试,一般会选择在浏览器控制台直接打断点,但这样还需要先去 Sources 里面找到源码,然后再找到需要打断点的那行代码,比较麻烦。使用 debugger 关键词,我们可以直接在源码中定义断点,方便很多。

ICCV 2019 开源论文 | ShapeMatchingGAN:打造炫酷动态的艺术字

作者还开源了 PyTorch 实现:https://github.com/TAMU-VITA/ShapeMatchingGAN,喜欢设计的小伙伴可以去尝试渲染一下自己的艺术字。

谷粒-Chrome插件英雄榜

看了下,比较有趣的插件有:

超燃!支付宝技术双11纪录片《一心一役》全球独家首发

2011年的双十一,在高峰时期少数用户无法付款,经过调查发现,这是因为少数银行的网银系统在压力下出现故障。早年的支付宝交易,用户点击支付后需要从支付宝和银行的接口去付款,而早年这个接口的性能很差,每秒只能支持几十到上百笔交易,稳定性也比较差,一旦流量上来,容易发生故障。

解决这个问题最好的办法,就是不通过网银,让资金在内部的系统中流转,先充值后付款就是这个原理。那么,有没有一个方法,吸引用户把钱放到支付宝里呢?2013年6月,支付宝推出余额宝,歪打正着的解决了这个问题,到2014年底余额宝就吸引了1.85亿用户,在13年和14年的双十一,交易峰值也分别实现了4倍和3倍的增长。

因为网银的支付性能瓶颈,促生了余额宝的诞生

2018年5月,支付宝接入网联清算平台,同时在这些年里,银行也在大力提升自己的系统能力,中大型银行的网银系统支持的交易笔数已经达到2万笔/秒以上,外部问题基本得以解决。

双11大促的场景指标一般包括交易创建数、收银台展现数、交易支付数。总的支付目标数已经有了,运维人员根据总tps/单机tps的算法计算出应用在每个指标下的单机能力,然后,参考历史活动数据,可以计算应用在不同场景链路下的单机tps。

盘点2019:对国产数据库的一点观察和总结

Nginx 配置 HTTPS 服务器

一个简单的 HTTP 调用,为什么时延这么大?

为什么 TCP_NODELAY 能够解决问题?

TCPNODELAY 关闭了 Nagle 算法,即使上个数据包的 ACK 没有到达,也会发送下个数据包,进而打破 Delayed ACK 造成的影响。一般在网络编程中,强烈建议开启 TCPNODELAY,来提升响应速度。当然也可以通过 Delayed ACK 相关系

谁顶住双11的世界级流量洪峰?神龙架构负责人等9位大牛现场拆解阿里秘籍

自研数据库POLARDB和OceanBase分别处理8700万、6100万笔/秒峰值请求、实时计算处理峰值每秒25.5亿笔、计算平台单日处理970PB数据、12亿笔物流智能化等……2019年双11期间,阿里巴巴打破了诸多技术纪录。

阿里云从2016年开始投入相关研发,2017年10月发布了第一代神龙云服务器。三年内,阿里云从自研芯片开始、到自研设备+Hypervisor、最后成功自研神龙服务器,打通芯片、软件、服务器硬件之间的断层,首次实现了云计算行业性能、资源的零损耗

旭卿谈到,在过去十几年间,整个服务器的架构没有太大的变化。因此在云计算、甚至整个IT系统层面,业界都面临历史遗留问题,比如性能损失。究其根本原因,就是做芯片、服务器、软件的厂商之间没有太多的协同,缺乏一个顶层的设计。

用AI抗疫!百度免费开源口罩人脸检测及分类模型

腾讯优图攻克口罩识别难题,口罩佩戴识别准确率超过99%

全民佩戴口罩也对诸如高铁闸机等需要人脸识别的场景提出了挑战: 戴口罩人群由于面部区域大范围被口罩遮挡,现有算法无法准确检测人脸位置、定位五官关键点,大大降低现有的人脸识别算法效果。

为解决口罩带来的面部区域大范围遮挡问题,基于优图自研的多分支轻量神经网络,优图快速通过图像编辑技术合成海量人脸口罩数据用于算法优化提升,实现戴口罩人员的精准五官定位,有效辅助后续算法模块的效果提升。

在原始数据不足的情况下,通过合成数据来补足数据的量。

学习资源

详尽&全面的前端部署

CSS 定位详解

大型表格滚动的时候,表头始终固定,也可以用sticky实现。需要注意的是,sticky必须设在元素上面,不能设在和元素,因为这两个元素没有relative定位,也就无法产生sticky效果。

1
2
3
4
th {
position: sticky;
top: 0;
}

101道Numpy在线练习题

科普趣闻

就在几天前,听说用了 YYYY-MM-dd 的程序员翻车了?!

那么产生这个 Bug 的原因是什么呢?其实很简单,就是 把 yyyy-MM-dd 写成了 YYYY-MM-dd 。

如果对时间处理不那么熟悉的程序员看到这里,会认为 yyyy 和 YYYY 有什么区别么?在代码里面敲一下,他们的结果也都是相同的啊!那么产生这个问题的原因是什么呢?其实很简单:Y 和 y 实际上代表了不同的含义。

CATALOG
  1. 1. 开发工具
    1. 1.1. hello.js - A client-side JavaScript SDK for authenticating with OAuth2
    2. 1.2. deploy-your-own-saas
    3. 1.3. mac微信免登
    4. 1.4. [lockdown]
    5. 1.5. Playwright - 类似于Puppeteer,但更全平台
  2. 2. 技术文章
    1. 2.1. 肖仰华 | 大规模、高质量的金融知识图谱,如何自动化构建?
    2. 2.2. 基于浏览器的实时构建探索之路
    3. 2.3. (1.6w字)浏览器与前端性能灵魂之问
    4. 2.4. 面试官,不要再问我三次握手和四次挥手
    5. 2.5. 反向代理、负载均衡!优秀的 Nginx 是如何做到的?
    6. 2.6. “12306”的架构到底有多牛逼?
    7. 2.7. Chrome DevTools 你还只会console.log吗 ?
    8. 2.8. ICCV 2019 开源论文 | ShapeMatchingGAN:打造炫酷动态的艺术字
    9. 2.9. 谷粒-Chrome插件英雄榜
    10. 2.10. 超燃!支付宝技术双11纪录片《一心一役》全球独家首发
    11. 2.11. 盘点2019:对国产数据库的一点观察和总结
    12. 2.12. Nginx 配置 HTTPS 服务器
    13. 2.13. 一个简单的 HTTP 调用,为什么时延这么大?
    14. 2.14. 谁顶住双11的世界级流量洪峰?神龙架构负责人等9位大牛现场拆解阿里秘籍
    15. 2.15. 用AI抗疫!百度免费开源口罩人脸检测及分类模型
    16. 2.16. 腾讯优图攻克口罩识别难题,口罩佩戴识别准确率超过99%
  3. 3. 学习资源
    1. 3.1. 详尽&全面的前端部署
    2. 3.2. CSS 定位详解
    3. 3.3. 101道Numpy在线练习题
  4. 4. 科普趣闻
    1. 4.1. 就在几天前,听说用了 YYYY-MM-dd 的程序员翻车了?!