浩麟的博客

实用、前沿、深入、原创

qiankun构成与原理

功能介绍&模块拆解在聊原理之前先了解下qiankun提供的能力,一句话介绍qiankun功能:能根据路由自动调度子应用并实现沙箱(主子、子子应用之间的JS和CSS)隔离。 举个例子:在主应用里注册两个子应用A&B, 12345678910111213141516import { registerMicroApps } from 'qiankun';regi......

Golang 实战:开发基于 GraphQL 的接口服务

本文首发于IBMDev社区 Golang以其高效、稳定、简单吸引了大量开发者使用,越来越多公司和云计算平台开始选择Golang作为后端服务开发语言。Golang对比目前主流的后端开发语言Java具有以下优势: 性能好:编译为机器码的静态类型语言,能以更少的资源提供同样量级的访问量,节省云服务开支; 上手快:语法更简洁上手快,标准库完善设计优秀,自带垃圾回收,开发效率高; 并发友好:语言层......

PostgreSQL中文检索与性能优化

检索数据库中的条目是很基本常见的功能,实现的方法也很多,常见包括: 基于Elasticsearch 或 Lucene这类专业独立的检索引擎实现 基于数据库自带的检索功能实现 虽然基于Elasticsearch这类系统能实现高级灵活的检索功能,但开发和运维成本也将大大增加,本文将教会你如何利用PostgresSQL内置的功能快速高效的实现大多数中文检索场景。 检索是大多数系统需要的功能,虽......

ReactNative三端同构实战

认识ReactNative三端同构ReactNative三端同构是指在不改动原ReactNative的代码下,让其在浏览器中运行出和在ReactNative环境下一样的页面。 ReactNative三端同构的应用场景包括: 在ReactNative页面崩溃时用对应的Web页兜底,以保证用户可以正常使用页面; 对于需要分享到社交网络的页面,例如需要分享到微信朋友圈、微博的页面,不可避免的需要......

WebAssembly 现状与实战

为什么需要 WebAssembly自从 JavaScript 诞生起到现在已经变成最流行的编程语言,这背后正是 Web 的发展所推动的。Web 应用变得更多更复杂,但这也渐渐暴露出了 JavaScript 的问题: 语法太灵活导致开发大型 Web 项目困难; 性能不能满足一些场景的需要。 针对以上两点缺陷,近年来出现了一些 JS 的代替语言,例如: 微软的 TypeScript 通过为......

加速 Webpack

本文首发于IBM Dev社区 Web 应用日益复杂,相关开发技术也百花齐放,这对前端构建工具提出了更高的要求。 Webpack 从众多构建工具中脱颖而出成为目前最流行的构建工具,几乎成为目前前端开发里的必备工具之一。 大多数人在使用 Webpack 的过程中都会遇到构建速度慢的问题,在项目大时显得尤为突出,这极大的影响了我们的开发体验,降低了我们的开发效率。 本文将传授你一些加速 Web......

Parcel Vs Webpack

爱折腾的前端圈时常会有新轮子诞生,只要是好东西就能快速获得大量关注,资历再好的大哥只要不如新人也很快会被替代。 横空出世的Parcel近日成为了前端圈的又一大热点,在短短几周内就获得了13K的Star。作为前端构建工具新人的Parcel为什么能在短期内获得这么多赞同?他和老大哥Webpack比起来到底有什么优势呢? 我花了6个月的时间写了一本全面介绍Webpack的图书《深入浅出 Web......

你也能写个 Shadowsocks

本文将教你从0写一个Shadowsocks,无需任何基础,读完本文你就能完成一个轻量级、高性能的 Shadowsocks 代替品。 我们暂且把最终完成的项目叫做 Lightsocks,如果你很急切地想看到结果,可以先体验本文最终完成的项目 Lightsocks ,也可以下载阅读源码。 认识 ShadowsocksShadowsocks 是一个能骗过防火墙的网络代理工具。它把要传输的原数据经过......

调试利器-SSH隧道

在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到源码修改后的运行结果。但当涉及到需要调用微信接口时,由于不和你在同一个局域网中的用户是无法访问你的本地开发机的,就必须把修改后的代码重新发布到线上域名所在的服务器才能去验证结果。每次修改都重新发布很繁琐也很浪费时间。 本文将教你如何通过 SSH 隧道把......

流媒体加密

本文只讨论应用于浏览器环境的流媒体协议的加密 为什么要加密视频付费观看视频的模式是很多平台的核心业务,如果视频被录制并非法传播,付费业务将受到严重威胁。因此对视频服务进行加密的技术变得尤为重要。 本文所指的视频加密是为了让要保护的视频不能轻易被下载,即使下载到了也是加密后的内容,其它人解开加密后的内容需要付出非常大的代价。 无法做到严格的让要保护的视频不被录制,原因在于你需要在客户端播放......