如何编写轻量级 CSS 框架
Github: https://github.com/nzbin/snack Docs: https://nzbin.github.io/snack 前言 这篇文章我已经酝酿了半年之久,或者说拖沓了这么久吧。想说的东西很多,却又无从说起。如今轻量级框架如雨后春笋,层出不穷。我想每个人都应该归纳总结工 ...
小时到分钟 - 一步步优化巨量关键词的匹配
60万 条短消息记录,5万 关键词,看我如何一步步地将耗时 10小时 的作业优化到 10分钟 以内。优化过程中的心得、坑和结论方法,希望能大家一些启发。 ...
在Visual Studio 2017中使用Asp.Net Core构建Angular4应用程序
前言Visual Studio 2017已经发布了很久了。做为集成了Asp.Net Core 1.1的地表最强IDE工具,越来越受.NET系的开发人员追捧。随着Google Angular4的发布。我一直在想,怎么能够用这个地表最强IDE工具编写Angular4的Asp.Net Core项目。经过不... ...
也谈TDD,以及三层架构、设计模式、ORM……:没有免费的午餐
想在园子里写点东西已经很久了,但一直没有落笔,忙着做 一起帮 的开发直播,还有些软文做推广,还要做奶爸带孩子,还要……好吧,我承认,真正的原因是: 太特么的难写了! 但再难写也要写啊,要等到“能写好了再写”,怕是黄花菜都凉了——尤其是技术类文章,时效性非常强的。 刚好坛子里这篇博客:关于拒绝测试驱动 ...
微服务架构:基于微服务和Docker容器技术的PaaS云平台架构设计(微服务架构实施原理)
版权声明:本文为博主原创文章,转载请注明出处,欢迎交流学习! 基于微服务架构和Docker容器技术的PaaS云平台建设目标是给我们的开发人员提供一套服务快速开发、部署、运维管理、持续开发持续集成的流程。平台提供基础设施、中间件、数据服务、云服务器等资源,开发人员只需要开发业务代码并提交到平台代码库, ...
[认证 & 授权] 4. OIDC(OpenId Connect)身份认证(核心部分)
1 什么是OIDC? 看一下官方的介绍(http://openid.net/connect/): OpenID Connect 1.0 is a simple identity layer on top of the OAuth 2.0 protocol. It allows Clients to ...
理工男打造帝都89平智能家庭
毕业后的2016年年初,搬入新家,总算不用在出租屋里鬼混了,于是就想把之前童年的梦想:智能家居+家庭影院好好实现一下~ 相比帝都高昂的房价,这些东东还凑合玩得起,不过在有限预算下实现尽可能定制和强大的功能会更有意思。我yy了以下几个场景: 每当下班回家,指纹解锁大门,家里温馨的灯光自动打开,天气热的 ...
MySQL · 引擎特性 · InnoDB Buffer Pool
前言 用户对数据库的最基本要求就是能高效的读取和存储数据,但是读写数据都涉及到与低速的设备交互,为了弥补两者之间的速度差异,所有数据库都有缓存池,用来管理相应的数据页,提高数据库的效率,当然也因为引入了这一中间层,数据库对内存的管理变得相对比较复杂。本文主要分析MySQL Buffer Pool的相 ...
如何实现在Windows上运行Linux程序,附示例代码
微软在去年发布了Bash On Windows, 这项技术允许在Windows上运行Linux程序, 我相信已经有很多文章解释过Bash On Windows的原理, 而今天的这篇文章将会讲解如何自己实现一个简单的原生Linux程序运行器, 这个运行器在用户层实现, 原理和Bash On Windo ...
从性能角度看react组件拆分的重要性
React是一个UI层面的库,它采用虚拟DOM技术减少Javascript与真正DOM的交互,提升了前端性能;采用单向数据流机制,父组件通过 将数据传递给子组件,这样让数据流向一目了然。一旦组件的 或则 发生改变,组件及其子组件都将重新re render和vdom diff,从而完成数据的流向交互。 ...
在微服务中使用领域事件
稍微回想一下计算机硬件的工作原理我们便不难发现,整个计算机的工作过程其实就是一个对事件的处理过程。当你点击鼠标、敲击键盘或者插上U盘时,计算机便以中断的形式处理各种外部事件。在软件开发领域,事件驱动架构(Event Driven Architecture,EDA)早已被开发者用于各种实践,典型的应用 ...
为了快一点为什么却要慢一点
原文首发于我的微信公众号:GeekArtT. 将代码分层,当然是为了控制复杂度,让你的管理井井有条。那为什么非得要建立多个不同的独立文件夹,再创建不同的文件呢? 一个直接的考虑是,在同一个文件下,也就是同一个文本环境之下,当然会有非常大的自由度去增添代码,没有任何的条款限制。但同样是因为这样的“自由 ...
没有功能需求设计文档?对不起,拒绝开发!
在很多软件公司,特别是一些创业型的团队中,对于这样的情景可能大家都很熟悉:项目经理或者产品经理( 产品狗 )口头或者简单记录一下软件产品的大致要做的功能,直接就让研发团队的兄弟( 程序猿 )去狂撸代码。然后他就去喝茶撩妹或者回家陪老婆了... 这种撸起袖子就开干的方式,看似简单高效,便于直接沟通,能 ...
打破牢笼,展望更高层次的世界
笔者袁永福是一个十多年的老程序猿出来创业多年,期间经历许多曲折和磨难,成功的在炮火连天的商业战场上活了下来,并持续发展中。其中不少体会,于是提出本文的主题--打破牢笼,展望更高层次的世界。 ...
从SHAttered事件谈安全
大新闻? 在刚刚过去的2017年2月23日,Cryptology Group at Centrum Wiskunde & Informatica (CWI)和Google的研究人员公开了2个PDF文件,我也第一时间下载并按提示检查了SHA 1的校验值。文件内容和SHA1的结果如图1所示。 ↑ 图1 ...
一个由进程内存布局异常引起的问题
前段时间业务反映某类服务器上更新了 bash 之后,ssh 连上去偶发登陆失败,客户端吐出错误信息如下所示: 图 0 该版本 bash 为部门这边所定制,但是实现上与原生版并没有不同,那么这些错误从哪里来? 是 bash 的锅吗 从上面的错误信息可以猜测,异常是 bash 在启动过程中分配内存失败所 ...
一次生产事故的优化经历
在一次正常的活动促销之后,客服开始陆续反馈有用户反应在抢标的时候打不开网页或者APP,在打开的时候标的就已经被抢光了,刚开始没有特别的上心,觉得抢标不就是这样吗,抢小米手机的时候也不就这样吗?随着活动继续推进,有更多的用户强烈抗议,用户领了加息卷或者抵现卷之后抢不上标的,认为是平台作假故意不让使用以 ...