Bryan Blog

个人分享 但愿各位看官喜欢

Python优雅迭代器实现

Elegant iterator in python

简单迭代器 在python中,为了让类可以迭代访问,需要满足如下所示条件: 在类中需要实现__ iter__()方法,此方法需要返回一个迭代器; 为了类成为迭代器,可通过实现next()方法,此方法可以返回下一个可用的数据,直到没有可用数据,此时抛出StopIteration异常 按照上面的理论,可以实现一个简单的迭代器如下所示: class IterableServer:...

Python字符编码介绍

Encoding in python

字符编码 字符的编码一直是一个令人头疼的问题,如果没有完全理解它,那么总有一天会踩进字符编码的坑里的。最近正好有空,梳理了编码相关的知识,来一篇博客,整理相关的细节。 ASCII 从计算机发明的时候起,字符的编码就是一个令人困扰的问题。众所周知,计算机只能存储二进制的数据,但是现实生活中的数据都不是二进制,比如我想在计算机中存储一个’hello world’的字符串,那么如何存储呢,肯定是...

Kubernetes入门实践

Kubernetes introduction

基本介绍 docker 轻量的虚拟技术,镜像提供标准的运行环境供任务运行,任务在镜像之上运行。 docker-compose docker容器集群编排应用,定义和运行多个docker应用。通过单个docker-compose文件可以启动多个docker应用 kubernetes 依赖docker进行容器管理,属于docker容器集群管理系统,方便进行部署,升级,回滚,健康监控自...

React生命周期介绍

React lifecycle

react生命周期 众所周知,react会有初始化的阶段,以及数据更新后的重新render阶段,在这些阶段中,会存在一些回调函数,react组件会在特定的阶段调用对应的回调函数。如果我们希望在特定的时间执行一些业务操作,就需要了解react提供的这些回调函数。 constructor 构造函数,在构建组件的时候调用 componentWillMount 在组件挂载之前被触发,执行中在...

React与Knockout共存探索

React and knockout

基础介绍 前端的框架一直变化很快,一个框架存活没多久,后续的新框架又火起来了。我们也总是需要与时俱进,不断更新前端的框架 Knockout knockout 是一个MVVM的Javascript前端库,数据与展示采用双向绑定,使用比较便利。但是也是由于过度灵活,如果稍有不注意,写出来的代码就比较难以维护。 React React 是目前最...

Linux信号机制与docker应用

Linux signal in docker

Linux任务终止信号 在linux系统中,为了终止任务,一般情况下,可能会涉及如下所示的几种信号: SIGTERM SIGTERM是终止命令kill默认的终止信号。此信号是由应用程序捕获的,使用SIGERM也让程序有机会再退出之前做好清理工作,从而优雅地终止 SIGKILL 这是一种不可被捕获或忽略的信号,这是一种可以可靠地杀死进程的方...

首篇博客

First blog

之前一直没有找到合适的在线写博客的地址,偶然的机会发现了Jekyll的一个模板,直接使用github page,而且写作方式是比较喜欢的markdown,因此,就正式启用这个博客了。 之前也从这个网络中学到了很多东西,可以预见未来也会从互联网中学到更多东西。借助这个小博客,希望能分享一些我学到的好玩的技术。